良许Linux教程网 干货合集 Linux系统安装asp.net vNext详细步骤

Linux系统安装asp.net vNext详细步骤

asp.net vNext是一个比较理想的选择对于构建现代Web应用程序来说。它为部署到云端或者运行在本地的应用程序提供了一个优化的开发框架,它的模块化组件以最小的开销让你可以灵活地构建你的解决方案,下面为大家分享一下Linux系统安装asp.net vNext详细步骤。

Linux系统安装asp.net vNext详细步骤

运行环境

Ubuntu Server 14.04

VirtualBox

Mono >= 3.4.1

*由于Ubuntu库中的Mono版本比较陈旧,满足不了最低要求,所以第一步要做的就是安装最新版本的Mono。

安装Mono

\1. 首先从GitHub上取得mono代码:git clone git://github.com/mono/mono.git

*未安装过git程序的话,你首先需要在Ubuntu中执行sudo apt-get install git命令。

\2. 这一步有点奇怪,编译新版本的mono需要旧版本的支持,如果未安装过mono的话,请先在Ubuntu执行sudo apt-get install mono-complete命令。

\3. 进入mono目录,编译程序:

 cd mono
 ./autogen.sh --prefix=/usr/local
 make

*这里可能需要预先安装其它的程序,比如autoconf,libtool,g++,make等等。

\4. 安装:make install

\5. 执行mozroots --import --sync命令以避免认证问题。

\6. 通过mono –version命令确认所安装的mono是最新的版本。

安装KRE

只需要简单的一句命令:

 curl https://raw.githubusercontent.com/aspnet/Home/master/kvminstall.sh | sh && source ~/.kre/kvm/kvm.sh && kvm upgrade

kvm upgrade命令会自动下载最新的KRE包, 将其解压到.kre/packages目录下并添加bin文件夹路径至你的环境变量PATH中。

*因为涉及解压的操作,所以unzip程序必须预先安装:sudo apt-get install unzip

安装完成后可以通过kpm –version命令检查是否安装正确。

Hello World

完成所有准备工作之后,即可以尝试运行第一个程序了。按照传统,第一个程序应该是“Hello World!”

\1. 首先建立HelloWorld文件夹:mkdir HelloWorld

\2. 进入文件夹后:cd HelloWorld,再建立两个文件Program.cs和project.json。

\3. 编辑这两个文件(推荐使用vim),在Program.cs加入以下代码:

 using System;
 
 public class Program
 {
     public static void Main()
     {
         Console.WriteLine("Hello World!");
     }
 }

而在project.json文件中加入下列配置:

 {
   "dependencies": {
     "System.Console": "4.0.0.0"
   },
   "configurations": {
     "net45": {},
     "k10": {}
   }
 }

\4. 执行kpm restore -s https://www.myget.org/F/aspnetvnext/命令。

*该命令会根据配置文件中的描述,从指定nuget仓库中取得必要的依赖项。

\5. 运行程序:k run

以上步骤都正确的话,应该就能在shell中看到“Hello World!”的显示。

简单的MVC

接着试一个较复杂的程序,代码可以直接从GitHub中取得。

 git clone git://github.com/aspnet/Home.git

取得HelloMvc代码并不能直接使用,因为其指定的Web服务器在Linux中并不存在,我们还需要添加一个工程用于生成Web服务器。

https://github.com/Alxandr/Nowin.vNext/tree/master/src中取得Nowin.vNext文件夹,将其置于与HelloMvc同级的目录下。

然后修改HelloMvc的project.json文件:

?

 {
   "version": "0.1-alpha-*",
   "dependencies": {
     "Microsoft.AspNet.Mvc": "0.1-alpha-*",
     "Nowin.vNext": ""
   },
   "commands": {
     "web": "Microsoft.AspNet.Hosting --server Nowin.vNext"
   },
   "configurations": {
     "net45": {
       "dependencies": {
         "System.Runtime": "",
         "System.ComponentModel.DataAnnotations": ""
       }
     },
     "k10": {}
   }
 }

显示详细信息

这样运行kpm restore命令下载依赖项后,执行k web命令,就可以在浏览器中查看网页了。

*其实以上执行时还是会有错误,需要把Startup.cs文件中的app.UseErrorPage();app.UseWelcomePage();语句注释掉才行。猜测是Nowin.vNext服务器中未实现所产生的问题。

客户端访问

因为在这个试验中所用的Ubuntu Server未安装桌面环境,所以也就不能在虚拟机中查看以上的结果。不过既然虚拟机已然成了服务端,不妨就把宿主机当成客户端吧。

在VirtualBox的网络设置中将连接方式改成桥接网卡,这样宿主机就可以通过IP地址访问虚拟机。

上一例子的Web服务器端口号为8080,所以在宿主机的浏览器上输入“虚拟机ip地址:8080”并轻击回车后也就能看到最终的成果了。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

137e00002230ad9f26e78-265x300

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部