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

简介:

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的专题讲解。










本文转自 lcpljc 51CTO博客,原文链接:http://blog.51cto.com/lcpljc/1306332,如需转载请自行联系原作者
相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
目录
相关文章
|
16天前
|
测试技术 Linux
Linux(8)Debain系统测试EC25-EUX模块usbnet0(qmi qcm)问题点
Linux(8)Debain系统测试EC25-EUX模块usbnet0(qmi qcm)问题点
36 0
|
3月前
|
Ubuntu Linux 开发工具
Linux下的IMX6ULL——环境搭建与软件安装(一)
Linux下的IMX6ULL——环境搭建与软件安装(一)
75 0
Linux下的IMX6ULL——环境搭建与软件安装(一)
|
2月前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】⭐⭐⭐Linux 测试与目标主机之间的网络连接ping 命令 使用指南
【Shell 命令集合 网络通讯 】⭐⭐⭐Linux 测试与目标主机之间的网络连接ping 命令 使用指南
44 1
|
16天前
|
Linux Android开发
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
13 0
|
28天前
|
分布式计算 Hadoop 测试技术
Hadoop【环境搭建 05】【hadoop-3.1.3 单机版基准测试 TestDFSIO + mrbench + nnbench + Terasort + sort 举例】
【4月更文挑战第1天】Hadoop【环境搭建 05】【hadoop-3.1.3 单机版基准测试 TestDFSIO + mrbench + nnbench + Terasort + sort 举例】
37 3
|
2天前
|
iOS开发 MacOS Windows
|
2月前
|
Java Linux
Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
【2月更文挑战第16天】Flume【环境搭建 01】CentOS Linux release 7.5 安装配置 apache-flume-1.9.0 并验证
37 0
|
14天前
|
安全 Shell Linux
记录VulnHub 靶场——Escalate_Linux渗透测试过程
本文档描述了一次靶场环境的搭建和渗透测试过程。首先,提供了靶机环境的下载链接,并建议在VMware或VirtualBox中以NAT模式或仅主机模式导入。接着,通过Kali Linux扫描发现靶机IP,并用Nmap扫描开放端口,识别出80、111、139、445、2049等端口。在80端口上找到一个shell.php文件,通过它发现可以利用GET参数传递cmd命令。
4 0
|
15天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
47 1
|
15天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(上)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
59 0