CentOS下利用mono+xsp架构asp.net环境
2016-12-17 14:17
423 查看
参考网址:http://mnt.conf.blog.163.com/blog/static/115668258201461910121507/
背景:由于本地有一些网站是用asp开发的,所以在linux基本上配置apache是跑不了的,经过查找资料发现在linux利用mono+xsp可以架构起asp环境。
1、简单吹水一下
1、Mono是一个由Novell公司主持的项目。该项目的目标是创建一系列符合标准ECMA的.Net 工具, 包括C#编译器和共同语言执行平台.与微软的.Net不同,Mono项目不仅可以运行于Windows系统内,还可以运行于Linux,,FreeBSD,Unix, Mac OS X和Solaris
2、linux搭建asp.net运行环境,是以apache作为通讯框架(当然nginx也可以的),mod_mono(apache的插件)作为接口桥,连接apache与xsp的通讯,xsp最终负责asp.net的服务处理,xsp会监听本地端口用来与mod_mono通讯,后者将处理结果返回给apache,apache再返回给客户端。
需要安装的东西如下:CentOS,apache,mono,mod_mono,xsp
2、下载所需要的软件包
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/xsp/xsp-2.10.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/mod_mono/mod_mono-2.10.tar.bz2 [root@cqs source]# wget http://apache.fayea.com/apache-mirror//httpd/httpd-2.2.27.tar.gz
3、安装软件包
安装libgdplus(libgdiplus是mono中的System.Drawing依赖的一个组件,用于显示web页面基本颜色等。)
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf libgdiplus-2.10.tar.bz2
[root@cqs source]# cd libgdiplus-2.10
[root@cqs libgdiplus-2.10 ]# ./configure --prefix=/usr/local/libgdiplus-2.10/
[root@cqs libgdiplus-2.10 ]#make
[root@cqs libgdiplus-2.10 ]#make install
[root@cqs libgdiplus-2.10]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 libgdiplus-2.10
安装mono
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf mono-2.10.8.tar.bz2
[root@cqs source]# cd mono-2.10.8
[root@cqs mono-2.10.8]#./configure --prefix=/usr/local/mono
[root@cqs mono-2.10.8]#make
[root@cqs mono-2.10.8]#make install
[root@cqs mono-2.10.8]#cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 7 root root 4096 4月 16 08:44 mono
#Mono安装完成之后,可以用命令mono -V查看一下mono的安装情况,如果能够看到mono版本号等信息,说明Mono安装成功。
[root@cqs mono-2.10.8]# cd /usr/local/mono/bin/
[root@cqs bin]# mono -V
-bash: mono: command not found # 由于没配置默认文档,所以要把全路径打印出来才有效果
[root@cqs bin]# /usr/local/mono/bin/mono -V
Mono JIT compiler version 2.10.8 (tarball 2016年 04月 16日 星期六 08:38:30 CST)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC and Parallel Mark)
安装apache(省略,详情查看之前的相关文档)
安装mod_mono
[root@cqs bin]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf mod_mono-2.10.tar.bz2
[root@cqs source]# cd mod_mono-2.10
[root@cqs mod_mono-2.10 ]# ./configure --prefix=/usr/local/mod_mono/
[root@cqs mod_mono-2.10 ]# make
[root@cqs mod_mono-2.10 ]# make install
[root@cqs mod_mono-2.10 ]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 mod_mono
安装xsp(xsp就是mod-mono-server。)
安装之前,可以先设置一下环境变量 vi /etc/profile #在最后加上下面这句
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
source /etc/profile 或者注销重新登陆一下
也可以在安装过程中使用这个export即可
[root@cqs bin]# cd /home/cqs/source/
[root@cqs source]#
tar -xjvf xsp-2.10.2.tar.bz2
[root@cqs source]#
cd xsp-2.10.2
[root@cqs
xsp-2.10.2 ]# ./configure --prefix=/usr/local/xsp-2.10/
#进行到这一步时出现了"Configure: error: No C# compiler found"
#经过查找资料,需要安装mono,但是已经安装了,所以估计是配置的路径有问题,解决方案是
export PKG_CONFIG_PATH=/usr/local/mono/lib/pkgconfig/
重新配置
[root@cqs
xsp-2.10.2 ]# ./configure --prefix=/usr/local/xsp-2.10/
[root@cqs
xsp-2.10.2 ]#make
[root@cqs
xsp-2.10.2 ]#make install
[root@cqs
xsp-2.10.2 ]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 xsp-2.10
#安装成功
4、配置环境
[root@cqs modules]# vim /usr/local/httpd-2.4.18/conf/httpd.conf
#在此文件中末尾添加上
include /etc/httpd/conf/mod_mono.conf
#重启服务器
[root@cqs modules]# /usr/local/httpd-2.4.18/bin/apachectl restart
#报了以下错误:
httpd: Syntax error on line 515 of /usr/local/httpd-2.4.18/conf/httpd.conf: Syntax error on line 8 of /etc/httpd/conf/mod_mono.conf: Cannot load /
4000
usr/lib64/httpd/modules/mod_mono.so into server: /usr/lib64/httpd/modules/mod_mono.so: undefined symbol: unixd_config
# 解决方案:暂未查找到
所以只能暂时屏蔽掉 include /etc/httpd/conf/mod_mono.conf
# 重启服务器
[root@cqs modules]# /usr/local/httpd-2.4.18/bin/apachectl restart
背景:由于本地有一些网站是用asp开发的,所以在linux基本上配置apache是跑不了的,经过查找资料发现在linux利用mono+xsp可以架构起asp环境。
1、简单吹水一下
1、Mono是一个由Novell公司主持的项目。该项目的目标是创建一系列符合标准ECMA的.Net 工具, 包括C#编译器和共同语言执行平台.与微软的.Net不同,Mono项目不仅可以运行于Windows系统内,还可以运行于Linux,,FreeBSD,Unix, Mac OS X和Solaris
2、linux搭建asp.net运行环境,是以apache作为通讯框架(当然nginx也可以的),mod_mono(apache的插件)作为接口桥,连接apache与xsp的通讯,xsp最终负责asp.net的服务处理,xsp会监听本地端口用来与mod_mono通讯,后者将处理结果返回给apache,apache再返回给客户端。
需要安装的东西如下:CentOS,apache,mono,mod_mono,xsp
2、下载所需要的软件包
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/xsp/xsp-2.10.tar.bz2 [root@cqs source]# wget http://download.mono-project.com/sources/mod_mono/mod_mono-2.10.tar.bz2 [root@cqs source]# wget http://apache.fayea.com/apache-mirror//httpd/httpd-2.2.27.tar.gz
3、安装软件包
安装libgdplus(libgdiplus是mono中的System.Drawing依赖的一个组件,用于显示web页面基本颜色等。)
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf libgdiplus-2.10.tar.bz2
[root@cqs source]# cd libgdiplus-2.10
[root@cqs libgdiplus-2.10 ]# ./configure --prefix=/usr/local/libgdiplus-2.10/
[root@cqs libgdiplus-2.10 ]#make
[root@cqs libgdiplus-2.10 ]#make install
[root@cqs libgdiplus-2.10]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 libgdiplus-2.10
安装mono
[root@cqs conf]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf mono-2.10.8.tar.bz2
[root@cqs source]# cd mono-2.10.8
[root@cqs mono-2.10.8]#./configure --prefix=/usr/local/mono
[root@cqs mono-2.10.8]#make
[root@cqs mono-2.10.8]#make install
[root@cqs mono-2.10.8]#cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 7 root root 4096 4月 16 08:44 mono
#Mono安装完成之后,可以用命令mono -V查看一下mono的安装情况,如果能够看到mono版本号等信息,说明Mono安装成功。
[root@cqs mono-2.10.8]# cd /usr/local/mono/bin/
[root@cqs bin]# mono -V
-bash: mono: command not found # 由于没配置默认文档,所以要把全路径打印出来才有效果
[root@cqs bin]# /usr/local/mono/bin/mono -V
Mono JIT compiler version 2.10.8 (tarball 2016年 04月 16日 星期六 08:38:30 CST)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
TLS: __thread
SIGSEGV: altstack
Notifications: epoll
Architecture: amd64
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC and Parallel Mark)
安装apache(省略,详情查看之前的相关文档)
安装mod_mono
[root@cqs bin]# cd /home/cqs/source/
[root@cqs source]# tar -xjvf mod_mono-2.10.tar.bz2
[root@cqs source]# cd mod_mono-2.10
[root@cqs mod_mono-2.10 ]# ./configure --prefix=/usr/local/mod_mono/
[root@cqs mod_mono-2.10 ]# make
[root@cqs mod_mono-2.10 ]# make install
[root@cqs mod_mono-2.10 ]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 mod_mono
安装xsp(xsp就是mod-mono-server。)
安装之前,可以先设置一下环境变量 vi /etc/profile #在最后加上下面这句
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
source /etc/profile 或者注销重新登陆一下
也可以在安装过程中使用这个export即可
[root@cqs bin]# cd /home/cqs/source/
[root@cqs source]#
tar -xjvf xsp-2.10.2.tar.bz2
[root@cqs source]#
cd xsp-2.10.2
[root@cqs
xsp-2.10.2 ]# ./configure --prefix=/usr/local/xsp-2.10/
#进行到这一步时出现了"Configure: error: No C# compiler found"
#经过查找资料,需要安装mono,但是已经安装了,所以估计是配置的路径有问题,解决方案是
export PKG_CONFIG_PATH=/usr/local/mono/lib/pkgconfig/
重新配置
[root@cqs
xsp-2.10.2 ]# ./configure --prefix=/usr/local/xsp-2.10/
[root@cqs
xsp-2.10.2 ]#make
[root@cqs
xsp-2.10.2 ]#make install
[root@cqs
xsp-2.10.2 ]# cd /usr/local/
[root@cqs local]# ll -t
总用量 116
drwxr-xr-x. 3 root root 4096 4月 18 05:53 xsp-2.10
#安装成功
4、配置环境
[root@cqs modules]# vim /usr/local/httpd-2.4.18/conf/httpd.conf
#在此文件中末尾添加上
include /etc/httpd/conf/mod_mono.conf
#重启服务器
[root@cqs modules]# /usr/local/httpd-2.4.18/bin/apachectl restart
#报了以下错误:
httpd: Syntax error on line 515 of /usr/local/httpd-2.4.18/conf/httpd.conf: Syntax error on line 8 of /etc/httpd/conf/mod_mono.conf: Cannot load /
4000
usr/lib64/httpd/modules/mod_mono.so into server: /usr/lib64/httpd/modules/mod_mono.so: undefined symbol: unixd_config
# 解决方案:暂未查找到
所以只能暂时屏蔽掉 include /etc/httpd/conf/mod_mono.conf
# 重启服务器
[root@cqs modules]# /usr/local/httpd-2.4.18/bin/apachectl restart
相关文章推荐
- Linux( CentOS 6.6 ) 环境下使用 MONO + Jexus 配置 ASP.NET 以及MVC运行环境
- CentOS搭建Nginx+Mono运行ASP.NET环境
- 配置 ASP.NET Linux( CentOS 6.5 ) 运行环境 MONO + Jexus
- CentOS上搭建Nginx+Mono运行asp.net环境的配置方法
- 配置 ASP.NET Linux( CentOS 6.5 ) 运行环境 MONO + Jexus
- Linux下的.NET之旅:第一站,CentOS+Mono+Xsp构建最简单的ASP.NET服务器
- linux+mono+xsp+apache搭建asp.net环境
- CentOS 或 Fedora 下自动化安装mono和jexus的脚本(Linux下的Asp.net运行环境配置)
- CentOS上搭建Nginx + Mono 运行 asp.net
- CentOS 6.0 安装 Mono + Nginx 运行 asp.net
- 利用Nginx+Mono+Fastcgi代替IIS对Asp.Net进行反向代理
- Linux+Mono+Asp.net入门:05CentOs安装Mono(上)
- asp.net移植到linux下mono环境碰到的问题
- 在Windows系统中用nginx与mono搭建asp.net运行环境,附详细例图与代码
- CentOS上搭建Nginx + Mono 运行 asp.net
- CentOS下nginx+mono+fastcgi构建asp.net服务器笔记
- Linux+Mono+Asp.net入门:04VM安装CentOS
- CentOS Mono Jexus 跑Asp.net
- mono:Xsp,在linux平台上运行asp.net
- CentOS 5.1下跑Mono和Asp.net的实现方法分享