备忘录

记录点滴技术

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

虚拟机centos7.9配置apache+mono运行asp.net网站程序

8月初在虚拟机centos7.9安装了oracle数据库软件,之前在ubuntu中配置过apache+mono运行asp.net网站程序,这次在centos7.9也尝试一下,特记录配置过程:

参考文章——《在Linux(Ubuntu/openSUSE/CentOS)下配置ASP.NET(Apache + Mono)》

1、安装mono-2.10.8

wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
tar jxf mono-2.10.8.tar.bz2
sudo ./configure --prefix=/usr
sudo make ; sudo make install

2、安装xsp-2.10.2

xsp-2.10.tar.bz2这个版本我这个centos7.9下无论是xsp2还是xsp4都无法正常打开网页,浏览器一直在转圈;换了2.10.2好点,xsp2还是不行,xsp4有时候可以打开aspx网页。
wget http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2
tar jxf xsp-2.10.2.tar.bz2
sudo ./configure --prefix=/usr 
sudo make
sudo make install
configure的时候出现No package 'mono' found,我发现,centos7.9_64位出现类似的错误时用 export PKG_CONFIG_PATH=/usr/lib/pkgconfig 没效果。
因为这是.pc文件路径的问题,pkgconfig默认的.pc文件路径是在/usr/lib64/pkgconfig,而用源码安装的.pc文件保存在/usr/lib64/pkgconfig,只需要把缺少模块的pc文件拷贝到pkgconfig的默认目录就可以了。
这里我把mono.pc复制到对应的目录,重新执行一次就可行了

注:xsp是mono的一个小型web服务器,如果用于开发环境,mono+xsp已经是可以进行asp.net的测试了;

而mono+xsp+apache+mod_mono配置就麻烦些,但稳定性应该会好很多,可用于生产环境吧(之所以还需要装xsp,是因为xsp里面包含了mod_mono_server、fastcgi-mono-server等组件)

3、更换yum源

sudo curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.cloud.tencent.com/repo/centos7_base.repo
sudo yum clean all
sudo yum makecache

 4、安装并启动apache,httpd-devel在编译mod_mono的时候要用到

sudo yum install httpd httpd-devel
sudo chkconfig --levels 235 httpd on
sudo systemctl start httpd

 

5、安装mod_mono-2.10

wget http://download.mono-project.com/sources/mod_mono/mod_mono-2.10.tar.bz2
tar jxf mod_mono-2.10.tar.bz2
sudo ./configure --prefix=/usr 
sudo make ; sudo make install

由于我这里安装的apache版本是2.4.6,需要替换mod_mono.c,否则会报错,替换文件下载,参考文章——mono-3.0.2安装指南及一键安装脚本

然后修改配置文件

 sudo vi /etc/httpd/conf/mod_mono.conf

在末尾加上

MonoServerPath "/usr/bin/mod-mono-server4"
MonoAutoApplication enabled

然后将配置文件复制到Apache的配置文件目录中: 

sudo cp /etc/httpd/conf/mod_mono.conf /etc/httpd/conf.d/

 6、禁用SELinux

sudo vi /etc/sysconfig/selinux

将“SELINUX=enforcing”修改为“SELINUX=permissive”或“SELINUX=disabled”,重启系统后,就可以通过apache访问asp.net网站了。

posted on 2026-08-24 22:20  goding  阅读(6)  评论(0)    收藏  举报