搞4天了,终于成功了, ubuntu + mono + nginx + mysql 环境下,完美运行.NET4.0 的网站了,URL重写神马的全都正常~~~
不过内存占用和 windows2003 下相当。。。晕,还是用2003算了 , 好歹图形界面操作管理方便, 效果见 http://www.piewan.com
不过内存占用和 windows2003 下相当。。。晕,还是用2003算了 , 好歹图形界面操作管理方便, 效果见 http://www.piewan.com
UBUNTU NGINX MYSQL 安装配置方面不多说了,只讲最主要的:nginx 配置支持ASP.NET
安装mono ===============================
可以先查看
mono -V
如果看见了版本号说明已经安装了
如果没有安装,那么使用下面的命令安装mono
sudo apt-get install mono
或
查看mono 版本情况
安装以下支持
安装 mono-fastcgi模块
查看.net4支持情况
sudo apt-get install mono-runtime
查看mono 版本情况
mono --version
安装以下支持
sudo apt-get install mono-gmcs libmono-system-data2.0-cil libmono-system-messaging2.0-cil libmono-system-ldap2.0-cil libmono-system-messaging2.0-cil libmono-system-runtime2.0-cil libmono-system-web2.0-cil libmono-system-web-mvc1.0-cil libmono-wcf3.0-cil libmono-winforms2.0-cil
安装 mono-fastcgi模块
sudo apt-get install mono-fastcgi-server2 mono-fastcgi-server4
查看.net4支持情况
fastcgi-mono-server4 /version
配置nginx ===============================
(千万别动 /etc/nginx/nginx.confg 这个文件,这个不需要任何改动)
用以下 sever 设置替换 /etc/nginx/sites-available/default 的 server 节点
server {
listen 80;
server_name localhost;
#access_log /var/log/nginx/localhost.access.log;
location ~ { #这里用 location ~ 是为了让ASP.NET接管所有html 和 aspx 页面请求,方便httpmodule重写URL,不要用 location / 哦
root /usr/share/nginx/www;
index index.html index.htm index.aspx Default.aspx default.aspx default.htm;
# fastcgi_index index.aspx; 这里不要指定首页,不然只充许一种默认页
fastcgi_pass 127.0.0.1:8080;
include /etc/nginx/fastcgi_params;
}
error_page 404 /error/index.aspx; #这个不需要解释了
location = /error/index.aspx {
root /usr/share/nginx/www;
}
}
在/etc/nginx/fastcgi_params 下添加
fastcgi_param PATH_INFO "";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
启动nginx或重启
sudo /etc/init.d/nginx restart
接着启动mono-fastcgi监听
fastcgi-mono-server4 /applications=/:. /socket=tcp:127.0.0.1:8080 /root=/usr/share/nginx/www/
OK,浏览你的.NET网页吧!!!