(转)Centos5.5安装MONO2.10.8和Jexus 5.0开启Linux平台.net应用新篇章
注:本文只做本人记录使用,也可供大家参考,有兴趣的可以一起讨论。
安装步骤
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
tar -jxvf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
(config这里报错“configure: error: no acceptable C compiler found in $PATH ”,解决安装gcc)
(安装gcc之后继续运行configure,接着报错“configure: error: *** libpng12 not found. See http://www.libpng.org/pub/png/libpng.html”,原因分析: 说明缺少libtiff、libjpeg、libgif、libpng等库,安装这些库: yum install libtiff libtiff-devel libjpeg libjpeg-devel giflib giflib-devel libpng libpng-devel libX11 libX11-devel freetype freetype-devel fontconfig fontconfig-devel libexif libexif-devel)
make
make install
4、安装mono
cd /usr/local/src/
wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
tar -jxvf mono-2.10.8.tar.bz2
cd mono-2.10.8
./configure --prefix=/usr
(config这里报错“configure: error: You need to install g++”,原因分析:没有安装g++,解决方案:yum install gcc-c++
config这里报错“configure: error: You need to install bison”,原因分析:没有安装bison,解决方案:yum install bison
)
make
make install
5、安装Jexus 5.0
cd /usr/local/src/
wget http://www.linuxdot.net/down/jexus-5.0.2.tar.gz
tar -zxvf jexus-5.0.2.tar.gz
全新安装:
1) 建立jexus安装文件夹(一般为/etc/jws/),我安装到/usr/jexus/ :
sudo mkdir /usr/jexus/
2) 把解压所得到的文件及文件夹全部复制或移动到 /etc/jws 这个文件夹中
如: sudo mv * /usr/jexus/
3) 将 jws.regsvr、jws.start、jws.restart、jws.stop 设为可执行 (chmod +x jws.start)
4) 注册全局程序集(*非常重要*)
进入安装jexus目标文件夹(cd /usr/jexus/),然后运行:
sudo ./jws.regsvr
6、运行测试
复制完Jexus的文件后,Jexus就可以正常工作了。
所以,如果你的系统只要mono已经成功安装,jexus就可以直接使用,甚至连进一步的配置也完全不需要。
如果是升级安装,你只需要用jws.start启动JWS,Jexus就可以正常工作了,如果不能正常工作,常常是新版本的配置方式可能有变,你可以查查jws.conf等配置文件。
强调:如果你服务器安装有其它的WEB服务器,而且该服务正在运行,请停止它,以免造成端口冲突而造成Jexus无法启动。
如果是全新安装,请首先建立一个默认的网站文件夹:/var/www/default (mkdir /var/www/default)
然后在Jexus工作文件夹(/usr/jexus/)中执行jws.start命令(需要root身份),启动(./jexus.start)。
1、用cat log/jws.log,看看jws日志文件有没有什么出错的提示。
2、如果没有错误提示,请访问一下这台服务器,看看是否有jexus的欢迎页,比如访问 http://服务器IP地址/info:
设置jexus在开机后自动运行
在最后一行加入
/usr/local/jexus/jws.start
jexus使用配置:
现在在/etc/jws里有两个配置文件了,第一个是jws目录下的jws.conf,另一个是/jws/siteconf/里的默认的default文件,jws.conf命名固定了,指向网站配置文件和网站日志文件路径,一般默认指定为网站配置文件在siteconf里,它自动从该目录下的所有文件读取配置信息,比如我现在又两个文件,第一个默认的default,第二个是我新建的mysite,default文件内容如下:
#for default
port=80
root=/ /var/www/default
hosts=*
.....下面的都是#开始的注释信息,可以选的配置信息。
mysite里的内容如下:
port=81
root=/ /var/www/mysite
hosts=*
....下面的都是#开始的注释信息,可以选的配置信息。
表示不同端口,映射到不同目录,注意root=/ /var/www....,两个//中间有个空格“/ /var.....”,第一个/表明该端口的绝对目录,空格后面为用户输入/绝对目录时,映射到这个文件目录位置。
最后测试性的输入mono /etc/jws/jws.exe,把jws进程开启,可以ctrl+c停止服务。开启服务后,把自己的网站程序放到/var/www/对应目录下,比如default文件夹下,mysite文件夹下,就可以访问了。
Jexus MVC3配置
1,安装mono V2.10.2;
2,安装jexus V4.2.4
3,修改 jws.conf,添加一句 : runtime=v4.0.30319
4,修改siteconf文件夹中对应网站配置,加一句:rewrite=^/$ /Home/Index
Mono中配置asp.net mvc环境
1.源码安装Mono2.10.2版以上
2.在C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies和C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies目录分别找到以下dll复制到网站bin目录中
1
2
3
4
5
|
System.Web.Mvc.dll System.Web.Razor.dll System.Web.WebPages.dll System.Web.WebPages.Deployment.dll System.Web.WebPages.Razor.dll |
3.在Mono安装目录 /opt/mono/lib/mono/4.0复制以下3个文件到网站bin目录
1
2
|
Microsoft.Web.Infrastructure.dll System.Web.Extensions.dll |
4.可能会遇到的问题的解决办法:
Error: Storage scopes cannot be created when _AppStart is executing.
Cause: Microsoft.Web.Infrastructure.dll was localcopied to the bin directory.
Resolution: Delete Microsoft.Web.Infrastructure.dll and use the mono version.
Error: Invalid IL code in System.Web.Handlers.ScriptModule:.ctor (): method body is empty.
Cause: System.Web.Extensions.dll somehow gets localcopied to the bin directory.
Resolution: Delete System.Web.Extensions.dll and use the mono version.
Error: The classes in the module cannot be loaded. Description: HTTP 500. Error processing request.
Cause: System.Web.WebPages.Administration.dll was localcopied to the bin directory.
Resolution: Delete System.Web.WebPages.Administration.dll and unreference it
Error: Could not load type
‘System.Web.WebPages.Razor.RazorBuildProvider’ from assembly ‘System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35′. Description: HTTP 500. Error processing request.
Cause: System.Web.Razor.dll is corrupt or missing (or x64 instead of x32 or vice-versa) …
Resolution: Get an uncorrupted version of System.Web.Razor.dll and localcopy to the bin directory
遗憾的是对实体框架支持有限。
(转)Centos5.5安装MONO2.10.8和Jexus 5.0开启Linux平台.net应用新篇章的更多相关文章
- 32和64位的CentOS 6.0下 安装 Mono 2.10.8 和Jexus 5.0
http://www.cnblogs.com/shanyou/archive/2012/01/07/2315982.html shanyou 博客
- CentOS 6.3下 安装 Mono 3.2 和Jexus 5.4
最新更新参看: Centos 7.0 安装Mono 3.4 和 Jexus 5.6 2012年初写过一篇<32和64位的CentOS 6.0下 安装 Mono 2.10.8 和Jexus 5.0 ...
- Perl Tk在IC设计中的应用、Windows、Linux平台下的安装-各种错误的摸索解决
本文转自:自己的微信公众号<集成电路设计及EDA教程> <Perl Tk在IC设计中的应用.Windows.Linux平台下的安装-各种错误的摸索解决> Perl在IC设计中有 ...
- centos-5.5安装vmvare tools
centos-5.5安装vmvare tools 虚拟机管理,安装tools 找到VMwareTools压缩包 解压到Desktop,桌面 终端进入桌面 执行程序# ./vmware-install. ...
- ORACLE CentOS5.6安装
1 准备 CentOS 5.6企业版 oracle11g fs 安装.安装环境为vmware虚拟机.另外,本安装文档非常简洁,但关键步骤都指出来了,其他的都是默认选择,遇到不知该如何选择的操作或者问题 ...
- Linux-VMware Workstation&CentOS-5.5-i386-bin-DVD安装
[2018年6月24日 22:55:47]VM7+CentOS5.5使用NAT方式连接互联网1.在VMWare的菜单:“VM→Setting...” 2.在VMWare的菜单:“Edit→Virtua ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 3.安装Clus ...
随机推荐
- 发现js端日期跟php端日期格式不一致
当程序没有问题,而php显示的日期和js显示的日期不一致,相差一天的时候或者其它,一定要看看php.ini中时区的配置是否合理.
- JS的setTimeout函数第一个参数问题
setTimeout的第一个参数只能放一个无参的函数,更像放了一个函数指针在那里,如果要放带参数的话,就要拿个匿名函数包裹一下
- linux下的ls命令
在LINUX系统中有一个重要的概念:一切都是文件.其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来.在UNIX系统中,把一切资源都看作是文件,包括硬件设备.U ...
- 关于android的屏幕保持常亮
实现这一功能的方法有两种,一种是在Manifest.xml文件里面声明,一种是在代码里面修改LayoutParams的标志位.具体如下: 1.在Manifest.xml文件里面用user-permis ...
- 高级进程间通信之UNIX域套接字
UNIX域套接字用于在同一台机器上运行的进程之间的通信.虽然因特网域套接字可用于同一目的,但UNIX域套接字的效率更高.UNIX域套接字仅仅复制数据:它们并不执行协议处理,不需要添加或删除网络报头,无 ...
- what is docker
尽管之前久闻Docker的大名了,但是天资愚钝,对其到底是个啥东西一直摸不清,最近花了一段时间整理了一下,算是整理出一点头绪来. 官网的介绍是这样的: Docker is an open platfo ...
- [WinForm] 使用反射将业务对象绑定到窗体或控件容器
在WebForm中,可以使用反射将业务对象绑定到 ASP.NET 窗体控件.最近做Winform项目,也参考WebForm中的代码实现同样的功能. Winform没有提供类似WebForm中的 ...
- label
label的使用 以前只知道使用并没太注意一些细节 话说<label><input type="checkbox"/>5星</label>就可以 ...
- 正则转nfa:bug消除
正则到nfabug的解决方法 前面提到了这个bug,为了解决这个bug,我们必须在每次引用到一个假名的时候,都构建一个拷贝.现在假设我们遇到了一个假名,并得到了他的开始节点和结束节点,当前的难题就是构 ...
- Shuffle an Array
class Solution { private: vector<int> arr, idx; public: Solution(vector<int> nums) { sra ...