版本:1.1     最后修改:2010-6-21 15:05     原创文章,转载请注明出处:http://blog.jiqila.com/


  前言:如果要谈起如何搭建asp.net运行环境,我相信很多人会想到使用Windows Server系统和IIS来搭建,不可否认,asp.net是微软出的东西,当然用微软的系统搭建最合适了。如果你又想使用asp.net,又想使用FreeBSD,那么是不是就行不通了呢?答案当然是否定的。因为我们有Mono,有了Mono,asp.net就可以运行在非Windows系统下了。

  什么是Mono:Mono是.NET Framework 的一种开源实现。Mono项目将使开发者用各种语言(C#,VB.NET等)开发的.NET应用程序,能在任何Mono支持的平台上运行, 包括Linux, Unix。Mono项目将使大家能开发出各种跨平台的应用程序, 并能极大提高开源领域的开发效率。作为一个有机的.NET整体, 它包括一个C#编译器, 一个公用语言运行时环境, 以及相关的一整套类库,他甚至还包括IDE、调试工具和文档浏览器。Mono项目的网址是:http://www.mono-project.com

  什么是Jexus:Jexus 是一款跨平台的WEB服务器力作,它功能强大,操作简单,具有广泛的适应性和良好的实用性。Jexus 是Linux/Unix平台真正意义上的ASP.NET WEB服务器,是基于Linux/Unix平台建设ASP.NET网站的必然选择和最优方案!Jexus 内置安全监测与自动防控功能,能够为各类网站提供更多的安全保障。官方社区:http://linux.pxzc.com/



  1、以ports方式安装Mono 2.4.2.3
  为了安装最新版本的Mono,我们需要更新一下ports,命令如下:
引用
portsnap fetch extract
portsnap fetch update


  需要说明一下,portsnap fetch extract 只在第一次需要运行,以后更新ports就只需要运行后面的语句了。

  更新ports需要不少的时间,需要耐心等一下。ports更新完成后,我们就可以安装最新版本的Mono了,当前ports上Mono的最新版本是:2.4.2.3。通常情况都是直接make install clean了,但是我的亲身体会,自动下载会很慢,所以我们在Windows下手动下载。

  不论你用什么方式,到Mono官方网站上下载下来ports上对应的Mono版本。http://ftp.novell.com/pub/mono/sources-stable/
引用
mono-2.4.2.3.tar.bz2
mono-basic-2.4.2.tar.bz2
libgdiplus-2.4.2.tar.bz2
gluezilla-2.4.2.tar.bz2
xsp-2.4.2.tar.bz2


  将这些文件移动或复制到 /usr/ports/distfiles/下(我喜欢移动,省空间,呵呵)
引用
mv *.bz2 /usr/ports/distfiles/


  复制好以后,就可以开始安装了。
引用
cd /usr/ports/lang/mono/
make install clean


  接下来就是漫长的等待了……

  编译安装完成以后,执行下面的命令:
引用
rehash
mono -V


  如果正常的话,应该会显示类似如下的信息:
引用
Mono JIT compiler version 2.4.2.3 (tarball Fri Nov 13 12:29:24 CST 2009)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC)
        SIGSEGV:       normal
        Notification:  Thread + polling
        Architecture:  amd64
        Disabled:      none


  至此,最新版本的Mono就算是安装完成了,接下来就是安装jexus了。


  2、安装Jexus 3.6
  实际上只要安装好Mono,Jexus安装是很简单的,只是复制而已。
引用
#wget http://linux.j66.net/down/jexus-3.6.tar.gz #这是旧地址
wget http://linux.pxzc.com/down/jexus-3.6.tar.gz
cp jexus-3.6.tar.gz /usr/local/
tar zxvf jexus-3.6.tar.gz
mv jexus-3.6 jexus
cd jexus
chmod 755 ./jws.regsvr
chmod 755 ./jws.start
chmod 755 ./jws.restart
chmod 755 ./jws.stop
./jws.regsvr

以上是jexus 3.6正式版的安装方法,关于jexus如何配置,请参考压缩包内的readme.txt。我在这里就不再赘述了。顺便说一下,jexus 3.6已经开始支持PHP了。

  这么简单的几行命令,jexus就算是安装好了。


  3、设置jexus在开机后自动运行
引用
vi /etc/rc.local
在最后一行加入
/usr/local/jexus/jws.start





以上是在FreeBSD 7.2上安装的过程,如果是FreeBSD 8.0,那么就不需要更新ports了,直接make install clean就可以了。

引用
修改历史:
ver 1.0:2009-11-29 0:55,本文创建。
ver 1.1:2010-6-21 15:05,1、升级jexus版本至3.6。

纯技术分类 » Web服务器 | 评论(10) | 引用(0) | 阅读(3050)
xxxao Email
2010/08/06 16:28
额 找到原因了 感谢你的文章和回复~~

确实是因为没有设置好起始页的原因…… 输错了……
xxxao Email
2010/08/06 14:33
恩首页文件后来我也设置了 是index.aspx 但是没有用

后来我自己写了一个叫“a.aspx”的文件 内容是

<html><body bgcolor="yellow"><center><h2>Hello World!</h2></center></body></html>

效果应该是黄底黑字的Hello World
设置文件是
port=80
root=/ /var/www/
host=*
indexs=a.aspx

结果是 404……正常的话应该显示出来吧 到底是哪里没弄好呢?

Server Error in '/' Application

--------------------------------------------------------------------------------

The resource cannot be found.
Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.

Requested URL: /
xxxao Email
2010/08/06 00:29
再问个问题……

JEXUS我装好了,不过老是显示JEXUS的欢迎界面……
我在网上下了一个网站的源码 然后放在了/var/www/下面
按照JEXUS的说明写了一个配置文件 放在了/etc/jws/sites下

port=80
root=/ /var/www/
host=*

重启了JEXUS。
在IE里输入了他的IP地址 结果显示的是还JEXUS的欢迎界面 能告诉我这是咋回事么?
袁旭东 回复于 2010/08/06 02:36
你下在的源码的首页文件是什么?在配置文件中设置 indexs=你的缺省首页文件,例如index.aspx
xxxao Email
2010/08/03 19:54
想问个问题……

才开始接触Freebsd 看了这篇文 自己也试着装了一下

不过用ports装MONO的时候 怎么还在下载什么pytho-2.6.5.tgz 超级慢 这玩意和MONO有关系么?

我是先在那个FTP站上下了mono-2.6.5.tar.bz2
然后放到distfiles下
然后
cd /usr/ports/lang/mono/
make install clean
袁旭东 回复于 2010/08/03 20:52
应该是python吧?那个是需要的,你可以找一个快速的镜像下载python-2.6.5,然后放置/usr/ports/distfiles/python/中。
对了,还要看一看你ports中mono的版本,然后下载相应版本的文件。
ee
2010/03/12 21:59
提出的Tiff/Jpeg等已经安装过的
袁旭东 回复于 2010/03/24 09:31
我在虚拟机上多次ports安装都成功,虚拟机是FreeBSD 8.0,是最早发布的8.0,没有任何补丁,ports是mono 2.4.2.3。目前手工编译mono 2.6.1还未成功。
ee
2010/03/09 09:27
libgdiplus-2.6.tar.bz2过不了

checking for TIFFFlushData in -ltiff34... no
configure: WARNING: *** TIFF plug-in will not be built (TIFF library not found) ***
checking for jpeg_destroy_decompress in -ljpeg... no
configure: WARNING: *** JPEG loader will not be built (JPEG library not found) ***
checking for DGifOpenFileName in -lgif... no
configure: WARNING: *** GIF loader will not be built (giflibrary not found) ***
checking for DGifOpenFileName in -lungif... no
configure: WARNING: *** GIF loader will not be built (ungiflibrary not found) ***
checking for libpng12... yes
checking for LIBEXIF... no
test: xNo.: unexpected operator
configure: error: "Failed to compile with X11/Xlib.h include.  You must fix your compiler paths"
袁旭东 回复于 2010/03/12 01:23
提示警告的TIFF、JPEG等包,安装后试一试。我也没有具体手工编译源码。这两天准备买一台i5的本,就可以上虚拟机了,到时候虚拟一个FreeBSD,编译Mono2.6.1试一试。
ee
2010/03/08 11:08
freebsd 8.0 amd64 ports中的mono是2.4.3.1,make install 会出错。要安装2.6.1怎么整?
有没有不用ports的源码安装
袁旭东 回复于 2010/03/09 00:50
mono-2.6.1.tar.bz2
libgdiplus-2.6.tar.bz2
gluezilla-2.6.tar.bz2

编译安装这三个,如果提示缺少关联,按照需求下载相应源码编译。因为现有系统运行良好,所以也就没有具体试过编译mono 2.6.1了。如果以后有了多余的服务器,倒是可以试一试,研究研究。
ee
2010/03/08 08:21
mono 2.4.2.3
jexus 3.3
注册都要用到gacutil,这个运行会出现Bad system call (core dumped)错误
我的系统是freebsd 8.0 amd 64,没有sudo
ee
2010/03/07 16:52
pkg_add -r mono安装的
mono -V显示正常,但
gacutil -i ./jxAspx.dll
Bad system call (core dumped)
袁旭东 回复于 2010/03/08 00:26
使用的mono什么版本?jexus什么版本?jexus 3.3注册方式变更了,要运行jws.regsvr,并且jexus 3.3需要至少是mono 2.4.2.3。具体方法见压缩包内的readme.txt。
TmacFang
2010/01/07 18:49
太好了,终于找到这个软件了!是否可以在windows环境下设置nginx+Mono+ASP.NET+SQL Server2005
袁旭东 回复于 2010/01/07 18:54
Windows下就没必要nginx和Mono了吧?nginx和Mono还是用在*BSD/Unix/Linux下面比较好。
分页: 1/1 第一页 1 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]