最近一段时间,经常看到不少的朋友在问,应该怎么设置才能够让Jexus支持PHP。其实,Jexus在很早之前就已经是可以支持PHP,像Apache或Nginx一样充当PHP的Web服务器的。不过由于没有这个方面的需求,我也一直没有用它这一项功能。

早在前两天,群里一名朋友找到我,他想把一个PHP版的BBS改为.NET版的,问我有没有兴趣,我看了下这个BBS的用途,也乐意的接受了他的邀请。于是问题就来了,这个BBS是PHP版的,我需要先把它挂上服务器,先大概的“玩”一下有些什么功能、好不好使,但是当前手头上,我没有任何可以供PHP运行的环境(早在一年前我就已经没有和LAMP接触了),我需要快速的获得一个PHP的运行环境。

搭建一个新的,这是我唯一的一个选择。如果这是一个新装的系统,并且我只是想单纯的跑PHP的话,我也许会选择经典的LAMP构架(Linux+Apache+Mysql+PHP),但是由于当前的系统中已经存在了一套完整的Linux.NET环境,所以我也不折腾了,直接采用最简单的方式,快速的这个BBS跑起来。

下面开始动手:


我们使用的是最简单最快捷的方式来搭建,因此我选择YUM来安装所需要的所有组建,需要源码安装的朋友可以自行套弄

首先我们先获得我们的PHP环境:

yum install -y php php-mysql php-common php-gd php-mbstring php-mcrypt php-devel php-xml

接着是MYSQL数据库:

yum install -y mysql-server

Jexus对PHP的支持有三种方式,他们分别是:

  1、使用Jexus自带的CGI去支持

  2、使用PHP的CGI

  3、使用PHP.NET

详细的可以看:http://www.linuxdot.net/bbsfile-3132

在这里,我使用最简单的方式——使用Jexus自带的CGI去支持。

首先我们需要修改PHP.INI文件,由于我们是通过Yum安装的,所以默认的地方是“/etc/php.ini”(自己源码编译的就不是哦)。

找到“cgi.force_redirect=1”这一行,然后把前面的注释去掉,并把“1”改为“0”

保存退出。

然后,我们找到Jexus程序的存放目录,并修改“Jws.conf”文件。

vi /usr/local/jexus/jws.conf

把“php-fcgi.set=/usr/bin/php-cgi,6”前面的注释去除,这样Jexus就就可以通过CGI的方式支持PHP了

保存退出。

等等,这里还有一点没有完成的,要支持PHP,我们还要在挂PHP的那个网站项目的配置文件中指明一下,我们新建一个名为PHP的网站项目

cp /usr/local/jexus/siteconf/default /usr/local/jexus/siteconf/php

然后用VI打开它

修改好我们的端口和根目录配置,然后注意下方红框的地方,把前面的注释去除,再保存退出。

重启下Jexus。

/usr/local/jexus/jws restart

这里我解析一下:如果各位读者像我一样使用Jexus自带的CGI来支持PHP的,请除去前一个CGI的注释(红框那个),如果是用PHP的CGI的请出去下面那个。

我们在根目录中建一个显示phpinfo的文件(懂PHP的人都知道怎么回事),然后浏览器中访问下:

嘿嘿,然后就出来了。很简单,也很快,不过冲一杯咖啡的时间就搞好了,然后我们可以把自己的PHP项目挂上去跑了。


附:最近Mono更新到了3.2.8,有兴趣的读者可以去下载自己编译升级,下载地址如下:http://download.mono-project.com/sources/mono/mono-3.2.8.tar.bz2

如何让我们的PHP在Jexus中跑起来的更多相关文章

  1. 丙申年把真假美猴王囚禁在容器中跑 ASP.NET Core 1.0

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  2. 让Mongo在Spring中跑起来

    本文标题为<让Mongo在Spring中跑起来>,旨在Spring中如何成功连接MongoDB并对其进行增删改查等操作,由于笔者也是刚接触,对其中的一些原由也不甚了解,若有错误之处,敬请指 ...

  3. 在Docker中跑Hadoop与镜像制作

      重复造轮子,这里使用重新打包生成一个基于Docker的Hadoop镜像:   Hadoop集群依赖的软件分别为:jdk.ssh等,所以只要这两项还有Hadoop相关打包进镜像中去即可: 配置文件准 ...

  4. Canvas画图在360浏览器中跑偏的问题

    问题描述,canvas画图的js代码中编写的是画正方形的代码,结果在360浏览器上变成了长方形,不知道怎么回事,请问各位大神是否遇到过此类问题? <!DOCTYPE html> <h ...

  5. hadoop streaming 中跑python程序,自定义模块的导入

    今天在做代码重构,以前将所有python文件放到一个文件夹下,上传到hadoop上跑,没有问题:不过随着任务的复杂性增加,感觉这样甚是不合理,于是做了个重构,建了好几个包存放不同功能的python文件 ...

  6. [转] VS2015中跑OpenGL红宝书第八版的第一章示例代码,运行

    Ori Article Link OpenGL的东西快忘光了,把角落的第八版红宝书拿出来复习一下 从书中的地址下了个示例代码结果新系统(Win10+VS2015)各种跑不起来,懊恼之后在网上疯狂搜索资 ...

  7. VS2015中跑OpenGL红宝书第八版的示例代码

    OpenGL的东西快忘光了,把角落的第八版红宝书拿出来复习一下 从书中的地址下了个示例代码结果新系统(Win10+VS2015)各种跑不起来,懊恼之后在网上疯狂搜索资料终于跑起来了,记录一下 一.环境 ...

  8. idea中跑mapreduce报错, PATH设置错误

    问题如题,报错: [root@node01 servers]# hadoop jar loginVisit.jar cn.itcast.loginVisit.step1.Step1Main19/07/ ...

  9. iOS中跑马灯效果小结

    时光过得好快,记忆中刚刚从春节返回没有多久,清明.五一已飞逝而过,眨眼已到盛夏季节.不过还好,济南这两年不算太热,刚开始升温几天,一场及时雨总能让温度保持适宜.为了纪念一下青春的尾巴,也为了能有个健康 ...

随机推荐

  1. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

  2. JavaScript中fn()和return fn()

    看博客时,注意到return的重要性 参考:http://www.cnblogs.com/raoyunxiao/p/5644032.html 看似反常的例子: var i = 0; function ...

  3. 【Net跨平台第一步】逆天带你零基础Linux入门【更新完毕】

    部分讲义:(视频已删,后期以文档形式发布)

  4. Spring框架概述

    Spring是最流行的Java企业级应用开发框架,全球数以百万的开发者在使用Spring框架创建高性能.易测试.可重用的代码. Spring框架的核心特性可以应用于任何Java应用,但扩展的JavaE ...

  5. 用C语言封装OC对象(耐心阅读,非常重要)

    用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象 ...

  6. 【踩坑速记】开源日历控件,顺便全面解析开源库打包发布到Bintray/Jcenter全过程(新),让开源更简单~

    一.写在前面 自使用android studio开始,就被它独特的依赖方式:compile 'com.android.support:appcompat-v7:25.0.1'所深深吸引,自从有了它,麻 ...

  7. bash字符串操作

    参考 http://www.cnblogs.com/chengmo/archive/2010/10/02/1841355.html 问题:bash怎么提取字符串的最后一位?例如python中strin ...

  8. PHP设计模式(二)工厂方法模式(Factory Method For PHP)

    简单工厂简述: 简单工厂模式实现了生产产品类的代码跟客户端代码分离,在工厂类中你可以添加需要生成长跑的逻辑代码(new 产品类),但是问题来了,优秀的代码是符合"开闭原则"如果你要 ...

  9. java观察者模式

      像activeMQ等消息队列中,我们经常会使用发布订阅模式,但是你有没有想过,客户端时如何及时得到订阅的主题的信息?其实就里就用到了观察者模式.在软件系统中,当一个对象的行为依赖于另一个对象的状态 ...

  10. Maven常用命令

    开发中常用的命令: 1. mvn compile 编译源代码2. mvn test-compile 编译测试代码3. mvn test 运行测试4. mvn package 打包,根据pom.xml打 ...