一, 首先安装一些需要的软件包
首先更新 CentOS 上的软件包:
yum -y update
安装一些需要的库:
- yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel cairo-devel httpd build-essential bzip glib-devel httpd-devel freetype fontconfig pango-devel Ruby Ruby-rdoc gtkhtml38-devel wget automake autoconf libtool libglib2.0-dev libfreetype6-dev libfontconfig-dev libgif-dev libtiff4-dev libpng12-dev libxft-dev
- yum groupinstall "Development Tools"
以上的包挺多的, 但是为了保险起见, 还是全部安装吧, 有可能还会有缺少包的情况, 就使用 yum 自己安装吧.
二, 下载所需要的软件包
Nginx 安装包: 下载地址: http://nginx.org/en/download.html
- mkdir -p /down
- cd /down
- wget http://nginx.org/download/nginx-1.6.0.tar.gz
Mono 下载: 官网: http://download.mono-project.com/sources/mono/(请下载最新版)
- wget http://download.mono-project.com/sources/mono/mono-3.10.0.tar.bz2
- Libgdiplus:
- wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-5.6.tar.gz
xsp:xsp 是 Mono 提供的一个测试版本的服务器, 但是也提供 Nginx 运行 ASP.NET 的 fastcgi.
官网上的 xsp 是 2.x 的, 这个版本的 fastcgi-mono-server4 不能用; 所以需要从 GitHub 上下载最新的 3.0 版本.(Git 之前, 要使用 yum -y intall Git 安装 Git 包.)
- yum -y install Git.
- Git clone https://github.com/mono/xsp.git
- pcre:
- wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.23.tar.gz
安装 libgdiplus:
- cd /usr/local/src
- tar -zxvf /down/libgdiplus-5.6.tar.gz
- cd libgdiplus-5.6.tar.gz
- ./configure -prefix=/usr
- make && make install
安装 xsp:
- ./down/xsp/autogen.sh -prefix=/usr
- #(错误处理, find /|grep 错误关键字 之后 cp 到 configure 的目录覆盖即可继续 make)
- make && make install
安装 pcre:
- cd /usr/local/src
- tar -jxvf pcre-8.33.tar.bz2
- cd pcre-8.33
- ./configure --prefix=/usr
- make && make install
安装 Nginx
- wget http://nginx.org/download/nginx-1.9.9.tar.gz
- tar zxvf nginx-1.9.9.tar.gz
- cd nginx-1.9.9
- ./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module
- make && make install
- cd ../
开放 80 端口:
- firewall-cmd --permanent --zone=public --add-port=80/tcp
- # 启动 nginx
- systemctl restart nginx
在浏览器上输入访问地址 http://45.127.66.79(根据个人本机地址页定), 正常会看到默认 nginx 页面
三, 安装编译 Mono
安装 Mono:
- cd /down
- tar -jxvf mono-3.10.0.tar.bz2
- cd mono-3.10.0
- ./configure --prefix=/usr
- make
- make install
- cd ../
输入 mono -V 如有 mono 版本信息, 则安装成功.
四, 配置 Nginx
- vi /etc/nginx/nginx.conf# 修改 server_name _ 为 server_name 你的 ip
- vi /etc/nginx/conf.d/mono.conf# 添加 mono 需要的配置内容如下
- server {
- listen 80;
server_name 你的 ip;
- location / {
- root /data0/Web;
- index index.HTML index.htm index.aspx default.aspx Default.aspx;
- fastcgi_index Default.aspx;
- fastcgi_pass 127.0.0.1:9000;
- include fastcgi_params;
- }
- }
五, 配置 fastcgi_params 增加下面两行:
- vi /etc/nginx/conf/fastcgi_params
- fastcgi_param PATH_INFO "";
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
六, 启动:
启动 fastcgi_mono 服务器
- mkdir /data0/Web/www #存放 mono 处理的网站
- fastcgi-mono-server4 /applications=/:/data0/Web/www /socket=tcp:127.0.0.1:9000 &
重启 nginx:
systemctl restart nginx
在 / data0/Web 下方个 Default.aspx , 然后通过浏览器访问 这个机器的 Ip 即可, 看到了 Default.aspx 的内容就 OK 了. Default.aspx 内容如下:
- <%@ Page Language="C#" %>
- <HTML>
- <head>
- <title>Sample Calendar</title>
- </head>
- <asp:calendar showtitle="true" runat="server">
- </asp:calendar>
来源: http://www.bubuko.com/infodetail-2911015.html