关闭

centos+mono+nginx+jexus 搭建linux下c#运行环境测试

标签: Nginxlinuxmonoc#jexus
2565人阅读 评论(0) 收藏 举报
分类:

centos+mono+nginx+jexus 搭建linux下c#运行环境测试

Centos 7.0 安装Mono 3.4 和 Jexus 5.6

引自 http://www.cnblogs.com/shanyou/p/3887223.html


一、更新系统,安装编译环境,为编译Mono源码做准备。

1、 更新系统 

yum –y update

2、安装Mono源码安装需要的库

yum -y install wget glib2-devel libtiff libtiff-devel libjpeg libjpeg-devel giflib giflib-devel libpng libpng-devel libX11 libX11-devel freetype freetype-devel fontconfig fontconfig-devel libexif libexif-devel gcc-c++ gettext unzip zip bzip2 bzip2-devel curl-devel gtk2-devel boost-devel

3、安装Mono需要的GDI+兼容API的库Libgdiplus

git clone git://github.com/mono/libgdiplus.git
cd libgdiplus
./autogen.sh --prefix=/usr
make && make install

二、源码安装Mono 3.4

3.4这个版本官方的源码包,少了一些文件,以至于安装会出现问题,具体可以参考 mono-3.4.0 源码安装时出现的问题 (http://www.cnblogs.com/shanyou/p/3655447.html) 解决方法。 或直接从 http://pan.baidu.com/s/1eQ452Ie 下载
下载后上传到/usr/local/src
tar -zxvf mono-3.4.0.tar.gz
./configure --prefix=/usr --libdir=/usr/lib64

这里加上--libdir=/usr/lib64 ,主要是P/Invoke ,具体参考 MONO x64 amd_x64

make && make install

输入 mono -V 如有mono版本信息,则安装成功.


如果是64位版本的CentOS,建议你运行下命令ldconfig,建议大家在安装mono后,都 ldconfig一下 。(ldconfig命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件.缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表. )


另外有一点也非常重要,要在编译Mono的是指定安装到/usr(./configure --prefix=/usr),如果安装到一个系统根本"不了解"的文件夹,仅ldconfig都不行,还要在/etc/ld.so.conf文件或/etc/ld.so.conf.d
中添加路径后再 ldconfig才行呢。

三、安装Jexus 5.5


从5.3.1版本开始,Jexus的安装过程简化了,内置了两个新的脚本,它们分别是“install”和“upgrade”,对应原来的“安装”和“升级”,将Jexus的安装过程自动化了。jexus本身的安装和升级方式并没有发生更多的变化,因此对于已经习惯于5.3.1之前版本的使用方式的用户,你们仍然可以采用之前的安装方式。
wget linuxdot.net/down/jexus-5.6.1.tar.gz
tar -zxvf jexus-5.6.1.tar.gz
cd jexus-5.6.1
./install
安装完成~!!!在执行install脚本时,jexus默认是安装到/usr/jexus/中,如果想安装到其他目录,可以在执行该脚本时增加一个目录的参数(比如 sudu install /usr/local/jexus/)。对于升级就是执行upgrade脚本。

启动jexus 检查是否正常了

启动  /usr/jexus/jws start
停止  /usr/jexus/jws stop
重启  /usr/jexus/jws restart
自此,使用 http://你的IP/info即可验证Jexus是否启动

五、添加为系统服务,随系统启动

Zendic 写的 Centos、Ubuntu 安装 Mono、Jexus,其中有把Jexus添加为系统服务的代码:

cd /etc/init.d/       
    vi jws
按i编辑模式,粘贴下面内容

#!/bin/bash
#chkconfig: 2345 80 05
#description:jws
#

. /etc/rc.d/init.d/functions

case "$1" in
start)
  echo "Jexus Start.."
  /usr/jexus/jws start
  ;;
stop)
  echo "Jexus Stop.."
  /usr/jexus/jws stop
  ;;
restart)
  echo "Jexus Restart"
  /usr/jexus/jws restart
  ;;
status)
  /usr/jexus/jws status
  ;;
*)
  exit 1
  ;;
esac

exit $RETVAL


按ESC后,输入:wq保存文件


把这个脚本作为“服务”加入


chmod 766 jws

chkconfig --add jws


至此,JEXUS已跟随系统启动,可以reboot一下试试看


你也可以通过修改 /usr/jexus/siteconf 里面的文件,来修改站点配置。
要想测试asp.net网站 可以 cp /usr/jexus/sitconf/default /usr/jexus/sitconf/mysite1 复制得到一个自己的站点配置,把里面的端口和文件目录改掉
port=80
root=/ /var/www/html/mysite1
再在 /var/www/html/下新建个 mysite1 把网站文件放进来

http://ip/页面地址 访问,注意大小写 

该方案测试通过,简单的做了个asp.net网站运行正常,但把原来一个在iis运行正常的网站放进来,运行出错,暂时还不知道错误原因。


----CentOS搭建Nginx+Mono运行ASP.NET环境---

引自 http://www.centoscn.com/CentosServer/www/2014/0807/3449.html

一、获取开源相关程序

1、利用CentOS Linux系统自带的yum命令安装、升级所需的程序库:
 
sudo -s
LANG=C
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel bison pkgconfig glib2-devel gettext make

2、下载程序源码包

Nginx安装包:下载地址:http://nginx.org/en/download.html
 
mkdir -p /down
cd /down
wget http://nginx.org/download/nginx-1.1.11.tar.gz
Mono下载:官网:http://download.mono-project.com/sources/mono/(请下载最新版)
 
wget http://download.mono-project.com/sources/mono/mono-2.10.7.tar.bz2
libgdiplus下载:http://download.mono-project.com/sources/libgdiplus/(请下载最新版)
 
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
xsp下载:http://download.mono-project.com/sources/xsp/(请下载最新版)
 
wget http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2
pcre下载(Nginx所需的pcre库):FTP://ftp.csx.cam.ac.uk/pub/software/programming/pcre/(请下最新版)
 
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.21.tar.gz

二、安装编译Nginx

1、安装安装Nginx所需的pcre库
 
cd /down
tar zxvf pcre-8.21.tar.gz
cd pcre-8.21/
./configure
make && make install
cd ../
2、创建www用户和组
 
/usr/sbin/groupadd www
/usr/sbin/useradd -g www www
mkdir -p /data0/web
chmod +w /data0/web
chown -R www:www /data0/web
3、安装Nginx
 
tar zxvf nginx-1.1.11.tar.gz
cd nginx-1.1.11/
./configure --user=www --group=www --prefix=/opt/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../
4、开放80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT


启动nginx
1
/opt/nginx/sbin/nginx
在浏览器上输入访问地址 http://192.168.1.1(根据个人本机地址页定),正常会看到默认nginx页面

三、安装编译Mono

1、安装libgdiplus
 
cd /down
tar -jxvf libgdiplus-2.10.tar.bz2
cd libgdiplus-2.10
./configure --prefix=/usr
make && make install
ldconfig

2、安装Mono

tar –jxvf mono-2.10.7.tar.bz2
cd mono-2.10.7
./configure --prefix=/usr
make && make install //此处时间较长
ldconfig
 
echo export PKG_CONFIG_PATH=/usr/lib/pkgconfig:$PKG_CONFIG_PATH>>~/.bash_profile
echo export LD_LIBRARY_PATH=/usr/lib:$LD_LIBRARY_PATH>>~/.bash_profile
echo export PATH=/usr/bin:$PATH>>~/.bash_profile source ~/.bash_profile
输入 mono -V 如有mono版本信息,则安装成功.


3、安装XSP
cd /down
tar –jxvf xsp-2.10.2.tar.bz2
./configure --prefix=/usr
出现 configure: error: You need to install 'gmcs',错误 
XSP未能安装
make && make install


四、配置Nginx
 
vi /opt/nginx/conf/nginx.conf
server {
listen 80;
server_name localhost;
      location / {
          root /data0/web;
          index index.html index.htm;
          fastcgi_index Default.aspx;
          fastcgi_pass 127.0.0.1:9000;
          include fastcgi_params;
      }
}
五、配置fastcgi_params增加下面两行
 
vi /opt/nginx/conf/fastcgi_params
fastcgi_param PATH_INFO "";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
六、启动
1、重启nginx
 
/opt/nginx/sbin/nginx -s reload
2、启动 fastcgi_mono服务器
 
 
fastcgi-mono-server2 /applications=/:/data0/web /socket=tcp:127.0.0.1:9000 &
未能测试,fastcgi-mono-server2 找不到该命令


七、测试
新建一个asp.net Web项目上传至 /data0/web目录下,测试运行。


另外一篇关于jexus的文章 http://wenku.baidu.com/link?url=CzIkvNlbyKg6jP0LJThY_PQmbAKI-5Ito-T9E7OMOSugNpJt_c59Wgb8K5XnOpcDgn6FgrAQ9-6HimQEt1t-zerHrM26nzsBaqvuB-0xmdO

mono jexus相关

http://www.cnblogs.com/xiaodiejinghong/archive/2013/04/01/2994216.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2157158次
    • 积分:21181
    • 等级:
    • 排名:第351名
    • 原创:245篇
    • 转载:481篇
    • 译文:0篇
    • 评论:266条
    文章分类
    最新评论