CentOS Mono Jexus 跑Asp.net

来源:互联网 发布:linux sh 定义变量 编辑:程序博客网 时间:2024/06/06 01:02
人老了,怕忘记,先留个简单操作过程记录
 另外 iis完全移到Centos里,Web.config还要详细弄弄,最近不满意。

测试有Web.config没成功的小文件在: http://download.csdn.net/source/2447492

CentOS+Mono+Jexus 跑Asp.net
一、安装CentOS:
建议用CentOS5.3服务版(或以上版本)。安装过程中,不必选择安装包括 Apache在内的其它服务器组件,力求服务器精简。
二、安装必要的编译环境:
yum install gcc-c++
三、安装libgdiplus:(最新版本2.6.4)
wget http://ftp.novell.com/pub/mono/sources/libgdiplus/libgdiplus-2.6.4.tar.bz2
tar -jvxf libgdiplus-2.6.4.tar.bz2
cd libgdiplus-2.6.4
./configure --prefix=/usr
make && make install
cd ..
四、安装Mono:(最新版本2.6.4)
wget http://ftp.novell.com/pub/mono/sources/mono/mono-2.6.4.tar.bz2
tar -jvxf mono-2.6.4.tar.bz2
cd mono-2.6.4
./configure --prefix=/usr
make && make install
cd ..

上面2步(三,四),也可以省略,
用yum install mono*  一个命令安装搞定。 (会自动安装mono,libgdiplus)


Mono安装之后,可以用命令 mono –V 查看一下mono的安装情况,如果能够看到 mono版本号等信息,说明Mono安装成功。

五、安装Jexus:(最新版本jexus-3.6)
Jexus的安装极为简单,无需编译,所谓“安装”其实就是下载、解压、复制到工作文件夹、注册全局程序集几个步骤而已。
1、下载jexus-3.6
wget http://linux.j66.net/down/jexus-3.6.tar.gz
2、解压
tar -zxvf jexus-3.6.tar.gz
3、建立/etc/jws文件夹(也可以是其它的文件夹),并把解压得到的文件复制到 /etc/jws文件夹中。
mkdir /etc/jws
cp -R /usr/tools/jexus-3.6 /etc/jws
4、注册全局程序集
cd /etc/jws/gacutil -i jxAspx.dll
或:注册全局程序集(*非常重要*)
进入安装jexus目标文件夹,然后运行:      ./jws.regsvr


B、全新安装:
1) 建立jexus安装文件夹:  mkdir /etc/jws  
2) 把解压所得到的文件及文件夹全部复制到 /etc/jws 这个文件夹中  
3) 将 jws.regsvr、jws.start、jws.restart、jws.stop 设为可执行
4) 注册全局程序集(*非常重要*)   
进入安装jexus目标文件夹,然后运行: ./jws.regsvr

六、配置网站
在/etc/jws文件夹中建立一个网站配置文件,文件名假设为 site.config。
vim site.config

A、配置“默认网站”:
默认网站是一台服务器最基本的网站,当用户使用IP地址或者使用指向该IP地址但不属于任何子网站的域名访问这台服务器时,WEB程序会自动使用这个默认网站的内容。
-------------------------
port=80                          # jexus WEB服务器侦听端口(必填。当然可以是其它端口)
root=/ /var/www/mysite           # 网站URL根路径(虚拟目录)和对应的物理路径,用空格分开(必填。既然是一个纯粹的反向代理站,也得填)
#可选项hosts=mysite.cn,www.mysite.cn   
# 网站域名(建议填写),可以用泛域名,比如:*.mysite.cn(不填此项或只填一个“*”号表示这是默认网站)
indexs=index.aspx,index.htm      # 首页文件名,可以写多个,用英文逗号分开(可以不填。因为JWS系统含有常用首页名)
aspnet_exts=mspx,ttt             # 添加新出现的或自定义的ASP.NET扩展名(不建议填。多个扩展名用英文逗号分开,不加点号。系统含有常用扩展名)
SiteConfigDir=/etc/jws/sites     #指的是存放网站配置文件的文件夹,可以使用基于jws.exe文件的相对路径
SiteLogDir=/etc/jws/logs         #指的是存放jexus日志的文件夹,可以使用基于jws.exe文件的相对路径
-------------------------------------------
port=80
root=/ /var/www
indexs=index.aspx,index.htm
#aspnet_exts=mspx,ttt
SiteConfigDir=/etc/jws/sites
SiteLogDir=/etc/jws/logs


service iptables stop
vi /etc/sysconfig/iptables
添加:-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
service iptables restart


= 或用 iptables -F 一个命令搞定, 全部清掉策略也行

测试是否能够执行aspx:
在/var/www/html/目录下建一个test.aspx页面,内容为  <%="这难道是传说中的Asp.net for CentOS!"%>



B、输入以上内容之后,一个WEB服务器就配置好了,你可以使用服务器IP地址或者指向这个IP地址的域名访问这个网站。
七、操作:

1、)基本的启动命令的格式(仅作例子,不建议使用)
mono /etc/jws/jws.exe
如:mono /etc/jws/jws.exe
这个命令运行后,用 Ctrl+c 组合键退出程序

2、)以“服务”方式进行后台运行, 只需要基本命令后加一空格再加一“&”号(仅作例子,不建议使用)
mono /etc/jws/jws.exe &

3、)开机自动启动:
在/etc/rc.local 中加入下面这一行命令:
mono /etc/jws/jws.exe >/dev/null 2>&1 &

最简单最常用的办法是在“/etc/rc.local”文件中添加下面一句:
/etc/jws/jws.start

(注意:不同的Linux系统可能有不同的启动方式,用户应根据不同系统的特点灵活定制)
(提示:jws.start是脚本文件,用户可以根据自己系统的特点去适当修改它,以便其启动)

4、)使用脚本操作Jexus(推荐使用):
Jexus自带了三个脚本,分别是:

j
ws.start
jws.restart
jws.stop

jws.start   的作用是启动JEXUS服务,可以写入rc.local文件中,从而达到开机自启动的目的;
jws.stop    的作用是停止Jexus的运行。
jws.restart 的作用是重启Jexus;

注意,这些脚本需要具有可执行权限,同时操作者也必须拥有管理员(root)权限。
使用脚本时,请一定要注意Jexus安装文件夹的位置,脚本默认的文件夹是“/etc/jws”,如果你的路径不同,请修改脚本内容。


、)卸载:
1、注销全局程序集jxAspx.dll,命令是:
sudo gacutil -u jxAspx
2、在rc.local文件中删除你手工添加的开机自动启动Jexus的命令行
3、删除 /etc/jws文件夹及全部内容。(加&在后台运行)

Jexus web server for linux V3.6 版的安装使用官网文档请看