1. 程式人生 > >Ubuntu(Linux) + mono + xsp4 + nginx +asp.net MVC3 部署

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

折騰了一下,嘗試用Linux,部署mvc3。

分別用過 centos 和 ubuntu ,用ubuntu是比較容易部署的。

操作步驟如下:

一、終端分別如下操作

sudo su  ->輸入密碼
apt-get install nginx 
apt-get install mono 
apt-get install mono-fastcgi-server4

安裝過程中會出一些缺少包的問題。具體要看實際情況安裝

對pcre g++ zlib 都有依賴

sudo apt-get install libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev g++

二、nginx 配置

default

sudo vim /etc/nginx/sites-available/default

更改成

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; } }

啟動路徑改成 var/www,所以應該建立一個www的資料夾

sudo mkdir /var/www

建議更改一下許可權吧,因為這個資料夾需要共享,進行遠端部署

sudo chmod 777 /var/www
fastcgi_params
sudo vim /etc/nginx/fastcgi_params

最後插入以下兩行

fastcgi_param  PATH_INFO          "";
fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

三、啟動服務

通過共享,部署mvc3站點到www上,再啟動服務

sudo /etc/init.d/nginx start

sudo fastcgi-mono-server4 /applications=/:/var/www/ /socket=tcp:127.0.0.1:8000

按照以上操作,應該已經部署完成了。

但,還有一些部署問題,需要匯入mvc的dll支援,匯入到站點bin資料夾中

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

dll路徑分別是

C:\Program Files\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies

System.Web.Helpers.dll

System.Web.Razor.dll

System.Web.WebPages.dll

System.Web.WebPages.Razor.dll

System.Web.WebPages.Deployment.dll

Microsoft.Web.Infrastructure.dll

 

C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies

System.Web.Mvc.dll 

還有,資料庫讀取問題,使用的是mysql,需要匯入

MySql.Data.dll

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

<globalization culture="en-us" enableClientBasedCulture="false"/>

好了一切完成。分享一下自己的部署經驗,希望對大家有所幫助,祝你們部署一切順利o(∩_∩)o 

by:五加乘