当前位置: 首页 > news >正文

Centos5.5安装MONO2.10.8和Jexus 5.0开启Linux平台.net应用新篇章

注:本文只做本人记录使用,也可供大家参考,有兴趣的可以一起讨论。

安装步骤

1、 yum –y update
2、安装Mono源码安装需要的库
yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel  cairo-devel
3、 安装Mono需要的GDI+兼容API的库Libgdiplus
cd /usr/local/src/

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在开机后自动运行

引用
vi /etc/rc.local
在最后一行加入
/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目录中

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目录

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

遗憾的是对实体框架支持有限。

转载于:https://www.cnblogs.com/andiki/archive/2012/08/16/2642204.html

相关文章:

  • C++中的const限定修饰符
  • 查看SqlServer表 索引 创建时间,修改时间。或者修改记录(转)
  • 在HTML中添加百度地图(有图)
  • 设计模式(4)之建造者模式
  • 保护模式下中断或异常示意图
  • java override overload
  • 多路访问网络中的挑战
  • 模拟系统提示框
  • DSL概念、类别、为什么要写DSL 1
  • Javascript 日期格式化
  • 成绩单课程翻译参考总表
  • NYOJ 86
  • C#处理oracle数据库的Clob类型
  • I have a dream
  • [笔记]8组LVDS_TX和LVDS_RX的调试心得
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • 【React系列】如何构建React应用程序
  • codis proxy处理流程
  • CSS 提示工具(Tooltip)
  • ES6简单总结(搭配简单的讲解和小案例)
  • exports和module.exports
  • Gradle 5.0 正式版发布
  • HTTP那些事
  • Java 最常见的 200+ 面试题:面试必备
  • JavaScript 奇技淫巧
  • JDK 6和JDK 7中的substring()方法
  • js面向对象
  • Python socket服务器端、客户端传送信息
  • vue-router 实现分析
  • 使用SAX解析XML
  • 字符串匹配基础上
  • Java数据解析之JSON
  • 我们雇佣了一只大猴子...
  • ​2020 年大前端技术趋势解读
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • #etcd#安装时出错
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #多叉树深度遍历_结合深度学习的视频编码方法--帧内预测
  • (2.2w字)前端单元测试之Jest详解篇
  • (C语言)strcpy与strcpy详解,与模拟实现
  • (二)hibernate配置管理
  • (分类)KNN算法- 参数调优
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • (生成器)yield与(迭代器)generator
  • (顺序)容器的好伴侣 --- 容器适配器
  • (转)程序员疫苗:代码注入
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .NET(C#) Internals: as a developer, .net framework in my eyes
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .net打印*三角形
  • .NET面试题(二)
  • .net中生成excel后调整宽度
  • .php结尾的域名,【php】php正则截取url中域名后的内容
  • @angular/cli项目构建--Dynamic.Form