测试asp.net for Linux的环境搭建

asp.net for Linux的环境搭建

转自:http://www.cnblogs.com/xiaodiejinghong/archive/2013/04/01/2994216.html (根据相关文档,安装不同版本测试安装jexus,版本不相同,方法也不相同)

操作系统:CentOS-6.4-x86_64

libgdipluslibgdiplus-2.10.9

下载地址:http://origin-download.mono-project.com/sources/libgdiplus/

monomono-3.0.7

下载地址:http://origin-download.mono-project.com/sources/mono/

jexusjexus-5.4.3

下载地址:http://www.jexus.org/


1)、更新系统yum update

2)、通过yum安装编译mono所需要的库

yum-y install gcc gcc-c++ bison pkgconfig glib2-devel gettext makelibpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devellibX11-devel freetype-devel fontconfig-devel cairo-devel


3)、编译安装Libgdiplus

tar jxf  libgdiplus-2.10.9.tar.bz2
cd   libgdiplus-2.10.9
./configure--prefix=/usr/local/mono/
make&& make install
echo"/usr/local/mono/lib" > /etc/ld.so.conf.d/mono.conf

这一步的作用其实到了部署mono时,执行ldconfig才正式的发挥作用。由于我们部署libgdiplusmono没有部署到系统默认的/usr中,因此系统是不会默认的到我们部署mono的文件夹中搜寻和读取里面的动态库文件,这时,我们需要在/etc/ld.so.conf.d/文件夹中,手动的添加mono动态库文件夹的地址,再执行ldconfig来让系统能够找到我们的动态库文件

4)、安装mono

由于mono比较大,因此解压和编译安装都需要比较长的时间

tar jxf  mono-3.0.7.tar.bz2
cd  mono-3.0.7
./configure--prefix=/usr/local/mono/
make
make  install
ldconfig

编译部署mono之后,我们会得到大量需要加载的动态库文件,而这些动态库文件,我们再下一步的时候就需要用到,因此需要让系统重新加载。(如果没有重新加载,有可能在部署jexus的时候会出现各种各样的问题)

echoPATH=/usr/local/mono/bin:$PATH>>~/.bash_profile

source~/.bash_profile

部署mono之后,需要把bin目录的路径加入到环境变量PATH

原理跟安装完jdk之后,需要在环境变量注册是一样的。

执行mono-V ”如果可以看到mono的版本信息,则表明编译安装成功

5)、安装jexus

tarxzf jexus-5.4.3.tar.gz
./install
cd/usr/jexus/
./jws regsvr

至此,jexus就安装完毕了

输入操作./jws start”启动服务器,输入网址http://XXXX/info,可以打开界面,表明安装成功。163651959.png

网站配置 (以下转自www.jexus.org)

Jexus支持多站点,可以用不同的端口、域名、虚拟路径设置任意多的网站,配置时,首先要注意如下三个规则:
1
)必须把所有网站配置文件放到jws.conf指定的网站配置文件夹内,这个文件夹除了网站配置文件,不能有其它任何文件,因为jexus会认为这儿的任何一个文件都代表着一个不同的网站。
2
)每个网站有且只有一个配置文件,配置文件的文件名就是这个网站的名称,比如www.mysite.cn这个网站,配置文件名可以写成mysite”,当然也可以写成其它文件名,以便管理员容易记忆和识别,但要特别注意:文件名不能有空格!
3
)一个网站可以拥有任意多的域名,不同网站不能有相同的域名,没有域名的网站只能有一个,这个没有域名的网站叫做默认网站,而一台服务器最多只能有一个默认网站。


下面以www.mysite.cn为例,说说网站的配置
在网站配置文件夹中建立一个文件,这个文件的名称应该有一些意义(至少要能让服务器管理员了解这个配置文件是属于哪一个网站的)
设这个网站的配置文件的文件名为:mysite

sudomiv mysite

A、网站配置的基本内容:
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扩展名(不建议填。多个扩展名用英文逗号分开,不加点号。系统含有常用扩展名)


B
、最简配置示例
port=80
root=//var/www/default

C、网站配置的高级选项
网站配置的高级选项全是可选项,应该根据网站的实际需要选填。
灵活使用高级选项,可以架设出一台与众不同的、功能强大的服务器平台或者服务器群组。

1、使用URL重写功能
URL
重写是指WEB服务器将访问者的请求URL路径资源按指定的匹配规则解释和匹配为另外的一个真实RUL路径资源。

比如,希望别人访问.php”类型的文件时,服务器返回/404.html这个文件:
rewrite=^/.+?\.(asp|php|cgi)$/404.html
#
格式:
#“rewrite=”
的后面是两部分阻成,两部分之间由一个空格分开。
空格前是匹配的条件:用正则表达式描述URL的匹配条件。
空格后是匹配的目标:指的是如果用户访问的路径合乎前面的匹配条件,服务器将以哪个规则回应。

又如:
/bbs”解析为/bbs/index.aspx”,把/bbs/file-1”匹配为/bbs/show.aspx?id=1”
rewrite=^/bbs$/bbs/index.aspx
rewrite=^/bbs/file-([0-9]{1,6})$/bbs/show.aspx?id=$1
格式解释:rewrite的等号后含有两部分内容,用空隔分开。前半部分是一个正则表达式,用于描述需要URL重写的(用户浏览器中的)url路径样式,后半部分是当用户的URL合乎前面的正则表达式时,JWS应该重写和访问的真实URL路径。

2、禁止某IPIP段访问本网站
denyfrom=111.222.111.*
denyfrom=101.202.111.*
denyfrom=101.201.1.132

3、禁止访问某文件夹及其子文件夹中的内容
DenyDirs=
网站文件夹路径的URL路径,如/abcfiles”~/abcfiles”,多个路径,用英文逗号分开

4、是否对请求的URL等进行安全检测
本选项默认是true,即需要检查,除非你的确需要关掉这个选项,否则可以不填,格式如下:
checkquery=false
(关掉本项可以提高服务器速度,但就安全而言,不建议关掉它)

5NOFILE(无文件)功能
nofile=/mvc/controller.aspx
(注:这是Jexus特有的功能,指的是如果服务器不存在用户要访问的文件,服务器将使用什么文件应答。)
(提示:路由后,原RUL路径会存贮在Jexus特有一个服务器变量X-Real-Uri”中)
(技巧:用这个功能,或者再加上URLRewrite功能,你完全可以把URL路径与真实路径隔离开来,达到信息隐藏和简化URL的作用。)

6NOLOG(无日志)功能
nolog=yes
(注:禁用网站日志功能会提高WEB服务器系统的的处理速度,但不足也是明显的,就是你无法详细了解网站的访问情况了)

7、长连接开关
keep_alive=true
注:V5.1版默认值是true,即默认使用长连接,可以不填。

8、反向代理功能
reproxy=/abc/http://www.xxxx.com:890/abc/
参数的值由本站RUL根路径和目标网站URL根路径两部分组成,之间用空隔分开。
*
技巧:反向代量的目标地址可以有多个,用英文逗号分隔,如:
reproxy=/abc/http://192.168.0.3/abc/,http://192.168.0.4/abc/
这时,当用户访问/abc/时,jexus就会随机选择一台服务器进行访问,达到负载均衡或服务器集群的效果。

9、接受FAST-CGI提供的服务
对于TCP连接:
fastcgi.add=
需要fast-cgi处理的文件扩展名|tcp:fast-cgi服务的IP地址:端口
如:fastcgi.add=php,php3|tcp:127.0.0.1:9000
对于unixsockets
fastcgi.add=
需要fcgi处理的文件扩展名|socket:路径
:fastcgi.add=php,php3|socket:/tmp/phpsvr

10、启用gzip压缩功能
usegzip=true#
UseGzip
解释:启用这个功能后,当用户访问.htm”“.js”等文件时,Jexus会将这些文件进行GZIP压缩后发送给用户浏览器,这样,可以节约更多的网络带宽。

11、启用HTTPS进行SSL安全传输
本功能是对服务器与客户之间的数据进行加密传送,提供数据的保密性。具体方法请访问www.linuxdot.net的专题讲解。



你可能感兴趣的:(asp.net,for,Linux的环境搭建)