posts - 58,  comments - 121,  trackbacks - 30

在Linux上安装mono,xsp,mod_mono后,可以构建一个ASP.NET环境,Mono项目是由Novell支持的。
mono官网地址:http://www.mono-project.com
mono下载页面:http://www.go-mono.com/mono-downloads/download.html
XSP是一个轻量级的Web服务器,它是用100%的C#代码写成的纯.Net应用程序。
下面的安装环境是: Red Hat Enterprise Linux 4 AS ,  mono 1.2.6
===================================================================================
如果用rpm包安装则顺序如下:apache是采用系统自带的 2.0.59
===================================================================================
libgdiplus
mono-core
mono-data
mono-data-firebird
mono-data-oracle
mono-data-postgresql
mono-data-sqlite
mono-data-sybase
ibm-data-db2
mono-nunit
mono-locale-extras
rpm -ivh mono-web-1.2.6-4.novell.i586.rpm --nodeps
//上面这个web和下面的winforms相互依赖,所以加上了—nodeps参数
mono-winforms
mono-devel
mono-extras
mono-jscript
mono-basic
bytefx-data-mysql
mono-complete

xsp

mod_mono

说明:
---------
/usr/sbin  目录下 有apache命令执行文件
/etc/httpd 目录下 有apache配置文件
/etc/httpd/modules 和 /usr/lib/httpd/modules 文件完全一样

mono 安装后 /usr/lib/mono  和 /etc/mono 都有文件但有所不同
            /usr/bin 下面有 mono 命令执行文件
     
xsp  安装后 /usr/lib/xsp  有文件,含test文件夹
            /usr/bin 下面有 xsp 命令执行文件

            安装成功,在终端中输入 xsp --root /usr/lib/xsp/test 回车后,
            打开网页浏览器,输入 http://localhost:8080/,会出现XSP的欢迎页面

mod_mono 安装后 /etc/httpd/modules 和 /usr/lib/httpd/modules 多了mod_mono.so文件
                /usr/bin 下面有 mod-mono-server 和 mod-mono-server2 命令执行文件

                根目录下面会自动产生 /conf.d/mod_mono.conf 配置文件,
                将此文件拷贝到 /etc/httpd/conf.d/ 中,
                这个文件将被自动加载到 /etc/httpd/conf/httpd.conf中,
                因为打开httpd.conf文件可以看到  Include conf.d/*.conf

                然后在 /etc/httpd/conf/httpd.conf 中最下面加上:
                  Alias /demo "/usr/lib/xsp/test"
                  AddMonoApplications default "/demo:/usr/lib/xsp/test"
                  #如果要运行的.NET版本是2.0,还需要加上下面这一句
                  MonoServerPath /usr/bin/mod-mono-server2
                  <Location /demo>
                        SetHandler mono
                  </Location>

                重新启动apache进行测试:
                在终端中输入   apachectl restart
                打开网页浏览器,输入 http://localhost/demo/,会出现XSP的欢迎页面

====================================================================================
如果用源码安装则顺序如下:不用系统自带的apache,我们自己安装一个,好指定路径。
====================================================================================
编译apache
./configure  [不设置--prefix=/usr的话,默认是/usr/local/apache2,这里采用的是默认]
make
make install

编译mono 这个过程需要很长时间,需要耐心等待。
./configure --prefix=/usr
make
make install

编译xsp
./configure --prefix=/usr
make
make install
安装成功,在终端中输入 xsp --root /usr/lib/xsp/test 回车后,
打开网页浏览器,输入 http://localhost:8080/,会出现XSP的欢迎页面

编译mod_mono
./configure --with-apxs=/usr/local/apache2/bin/apxs  [要看apache位置情况来设置]
make
make install


然后配置 apache 的配置文件:
进入 /usr/local/apache2/conf ,应该看到mod_mono.conf已经存在了,
需要将其包含到httpd.conf里边,打开httpd.conf并加入下面代码:

      Include /usr/local/apache2/conf/mod_mono.conf
      Alias /demo "/usr/lib/xsp/test"
      #如果要运行的.NET版本是2.0,还需要加上下面这一句
      AddMonoApplications default "/demo:/usr/lib/xsp/test"
      MonoServerPath /usr/bin/mod-mono-server2
      <Location /demo>
              SetHandler mono
      </Location>

重新启动apache进行测试:
在终端中输入 /usr/local/apache2/bin/apachectl restart
打开网页浏览器,输入 http://localhost/demo/,会出现XSP的欢迎页面

 ----------------------------------------------------------------------------------
我的目的是要在linux下面运行 asp.net 2.0 + oracle, 可惜结果如下:

如果使用的数据库是sql server,则不论是xsp还是apache+mod_mono做服务器均没有问题;

如果使用的数据库是oracle,则xsp服务器可以支持直接在页面文件写代码形式的程序,带有调用自己预编译文件的程序则无法运行,会出错,如果用apache+mod_mono做服务器则不论什么方式的编写的程序都无法运行,提示找不到libclntsh.so;

-----------------------------------------------------------------------------------
有成功经验的,请指教,谢谢!

posted on 2008-03-21 16:22 datasky 阅读(376) 评论(10)  编辑 收藏 网摘 所属分类: ASP.NETWindows Server

FeedBack:
2008-04-08 12:51 | egmkang      
因为我没用过oracle,而且机器上面也没装过,所以暂时没办法帮你.
不过问一下,你装了mono for oracle的驱动了么?
  回复  引用  查看    
#2楼 [楼主]
2008-04-08 13:34 | datasky      
--引用--------------------------------------------------
egmkang: 因为我没用过oracle,而且机器上面也没装过,所以暂时没办法帮你.
不过问一下,你装了mono for oracle的驱动了么?
--------------------------------------------------------
oracle是肯定装了,做数据库服务器都是正常的,什么环境变量也都设置了,试了好多次,都没有用。

  回复  引用  查看    
2008-04-09 11:58 | egmkang      
@datasky
看来你没看明白我的意思。
你安装了Oracle,这个没错,但是你有没有安装mono for oracle的驱动呢?没有驱动怎么连接数据库。你可以上mono的官方网站下载一个mono-data-oracle,安装之后在看看。
  回复  引用  查看    
#4楼 [楼主]
2008-04-10 09:18 | datasky      
@egmkang
安装的第5个rpm包就是mono-data-oracle ,官方给的例子也可以正常运行。
我在google上搜索发现,遇到这个问题的朋友很多,可惜没有找到解决的办法。现在最新版本的mono1.9不知道情况怎么样,有时间我再试一下。
  回复  引用  查看    
#5楼 [楼主]
2008-04-28 10:07 | datasky      
1.9如故。
  回复  引用  查看    
2008-05-08 09:38 | Charlesjun [未注册用户]
好像很多人有这个问题呢
  回复  引用    
2008-05-30 11:53 | 行知      
我觉得这个Oracle的问题还是同操作系统和Apache的配置有关系,而不是Mono的问题。我看每个系统都在Apache的配置文件里加了一点料,因为不熟悉,所以也不知哪些会对Mono产生影响。
  回复  引用  查看    
#8楼 [楼主]
2008-07-16 15:29 | datasky      
如果linux是选择的OpenSUSE,则按照文中所述操作,没有任何问题,很顺利就成功了。
  回复  引用  查看    
2008-09-09 22:06 | maolz [未注册用户]
请搂主加我的msn:merry_322@hotmail.com
不知道你的问题解决了没有,如果解决了,请你告诉我一下,我今天正在搞这个东西,完全按照你说的搞的,目前还不知道怎么编译asp程序。我只是把一下简单的页面拷过去,能顺利执行。
  回复  引用    
#10楼 [楼主]
2008-09-10 09:06 | datasky      
@maolz:
你用的数据库是oracle吗?
  回复  引用  查看    

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-08-13 17:37 编辑过
Google站内搜索


China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!

相关文章:

相关链接:


 

欢迎加入Asp.net高手MSN群

  • asp.net.group#hotmail.com
  • asp.net_group#hotmail.com

与我联系

搜索

 

常用链接

留言簿

我管理的小组

我的标签

随笔分类(71)

相册

blogs链接

积分与排名

  • 积分 - 35317
  • 排名 - 1299

最新评论