让asp.net和php同时在Linux上跑起来

实现这个想法有很多种方法,我就我最近算是比较熟悉的方式来说给大家吧。

因为有了mono,所以.net才能跨平台,.net都跨平台了,.net平台的童鞋们是不是应该提起精神好好了解下mono呢?

当然了我是刚刚接触,请大侠们勿怪。最近在qq上跟着宇内流云还有群里的很多朋友学了些相关的东西,就按耐不住想拿出来显摆显摆。

1、安装mono

就我的认知范围我认为只有安装了mono我们才有可能实现在Linux跑asp.net相关的程序

而在这方面已经有太多的朋友写了非常详细的步骤(centos,ubuntu,尤其是mono的东家open suse),我将站在巨人的肩上继续

前行(虽然可能没走多远,但我已经在走了。^_^)。

mono的发展及介绍请参考张善友老师的博客:http://www.cnblogs.com/shanyou/archive/2012/07/28/2612919.html

centos上的安装方法请参照:http://www.cnblogs.com/shanyou/p/3218611.html

ubuntu上的安装方法请参照:http://linuxdot.net/bbsfile-3090

2、jexus安装

在mono安装完成后,再一次站在老师们的肩膀上,我们安装jexus。

jexus安装步骤参考:http://www.jexus.org/

有安装问题可以去linuxdot社区提问

深蓝医生关于Linux +MySQL+mono +Jexus 上使用MySQL的总结:http://linuxdot.net/bbsfile-3266

3、重点来了

我了解到jexus本身就是为了支持asp.net而开发的,是其功能的核心,另外支持了php,这使得我们能够同时支持php

我仅仅测试了wordpress的

上篇博文仅仅配置支持了WordPress还没有重写什么的这次补上

按照以上搭建完成后:下载wordpress

主要是补充下rewrite配置

设置wordpress的固定链接为:

linming.com.cn文件配置如下:

#This is linming.com.cn siteconf.config
port=8081
root=/ /home/www/linming.com.cn
hosts=* 
usegzip=true
usephp=true
indexs=index.php
fastcgi.add=php|socket:/var/run/jexus/phpsvr

rewrite=^/archives/([0-9]{1,6})$ /index.php/archives/$1
rewrite=^/wp-admin/$ /wp-admin/index.php
rewrite=^/wp-comments-post.php /wp-comments-post.php
rewrite=^/wp-admin/(w) /wp-admin/$1
rewrite=^/wp-content/(w) /wp-content/$1
rewrite=^/wp-includes/(w) /wp-includes/$1
rewrite=^/wp-login.php /wp-login.php
rewrite=^/(w) /index.php/$1

其余的配置:default的配置如下

在默认基础上,只需按实际需要,改一下端口号和网站路径就行了。

######################
# Web Site: Default 
########################################

port=80
root=/ /home/www
hosts=*    #OR your.com,*.your.com


# addr=0.0.0.0
# CheckQuery=false
# NoLog=true
# NoFile=/index.aspx
# Keep_Alive=false
# UseGZIP=true
# UseHttps=true
# DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24
# AllowFrom=192.168.*.*
# DenyDirs=~/cgi, ~/upfiles
# indexes=myindex.aspx
# rewrite=^/.+?.(asp|php|cgi|pl|sh)$ /index.aspx
#rewrite=^/.+?.(asp|php|cgi|pl|sh)$ /index.aspx

# reproxy=/bbs/ http://192.168.1.112/bbs/

# Jexus php fastcgi address is '/var/run/jexus/phpsvr'
#######################################################
# fastcgi.add=php|socket:/var/run/jexus/phpsvr


# php-fpm listen address is '127.0.0.1:9000'
############################################
# fastcgi.add=php|tcp:127.0.0.1:9000

jexus的jws.conf的配置如下:

按php-cgi文件的路径,修改php-fcgi.set一行就行。

逗号前是php-cgi文件的路径,逗号后是工作进程数量。
SiteLogDir=log
SiteConfigDir=siteconf

Runtime=v4.0.30319
# LLVM=yes
# httpd.processes=2
# httpd.user=www-data
php
-fcgi.set=/usr/bin/php-cgi,6 # 按php-cgi文件的路径,修改php-fcgi.set这一行。 # CertificateFile=/xxxx/xx.crt # CertificateKeyFile=/xxxx/xx.key

有了这些配置就可以跑wordpress了。

像mysql数据库和php安装配置就不说了,有太多的教程了。

喜欢jexus最大的原因就是配置简单,配置虚拟目录,子站点很方便。

喜欢尝试的朋友试试吧。此篇仅为补充上次未完成的wordpress配置,应该还有需要配置的吧,暂时没发现什么问题,希望尝试过的朋友能够给些反馈!

原文地址:https://www.cnblogs.com/24la/p/aspnet-php-jexus.html