Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

折腾了一下,尝试用Linux,部署mvc3。

 

分别用过 centos 和 ubuntu ,用ubuntu是比较容易部署的。

 

操作步骤如下:

一、终端分别如下操作

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo su  ->输入密码
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
apt-get install nginx 
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
apt-get install mono 
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
apt-get install mono-fastcgi-server4
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

 

安装过程中会出一些缺少包的问题。具体要看实际情况安装

对pcre g++ zlib 都有依赖

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo apt-get install libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev g++
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

二、nginx 配置

default

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo vim /etc/nginx/sites-available/default
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

更改成

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
server {
    listen   80;
    server_name localhost;
    root  /var/www/;

    location / {
      root /var/www/;
      index index.html index.htm index.aspx default.aspx;
      fastcgi_index /Site;
      fastcgi_pass 127.0.0.1:8000;
      include /etc/nginx/fastcgi_params;
    }
}
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

启动路径改成 var/www,所以应该创建一个www的文件夹

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo mkdir /var/www
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

建议更改一下权限吧,因为这个文件夹需要共享,进行远程部署

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo chmod 777 /var/www
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
fastcgi_params
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo vim /etc/nginx/fastcgi_params
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

最后插入以下两行

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
fastcgi_param  PATH_INFO          "";
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

三、启动服务

通过共享,部署mvc3站点到www上,再启动服务

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
sudo /etc/init.d/nginx start

sudo fastcgi-mono-server4 /applications=/:/var/www/ /socket=tcp:127.0.0.1:8000
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

 

按照以上操作,应该已经部署完成了。

但,还有一些部署问题,需要导入mvc的dll支持,导入到站点bin文件夹中

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
System.Data.dll
System.Web.ApplicationServices.dll
System.Web.DynamicData.dll
System.Web.Helpers.dll
System.Web.Mvc.dll
System.Web.Routing.dll
System.Web.WebPages.Deployment.dll
System.Web.WebPages.dll
System.Web.WebPages.Razor.dll
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

还有,数据库读取问题,使用的是mysql,需要导入

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
MySql.Data.dll
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

进入web.config,在<system.web>下插入

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署
<globalization culture="en-us" enableClientBasedCulture="false"/>
Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

 

好了一切完成。分享一下自己的部署经验,希望对大家有所帮助,祝你们部署一切顺利o(∩_∩)o 

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

 

 

深圳元创

技术经理:五加乘

 

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署,布布扣,bubuko.com

Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

上一篇:C#基础提升系列——C#委托


下一篇:C#基础提升系列——C#文件和流