当前位置:首页openshift搭建nginx+php5.2+zend+mysql服务器教程 举报文章

openshift搭建nginx+php5.2+zend+mysql服务器教程

作者:admin    来源:用户投稿    时间:2015.6.11   

  近日申请了openshift的paas空间,很霸气的支持n种语言,至于用不用得上就是两说了,空间申请的教程不在本文之列,有兴趣的同志可以再本站稍后放出的另一篇文章中给出详细介绍,本文是建立在你已经取得openshift账号以及空间权限的基础上,并且已经完成openshift管理软件的下载和安装,好了,废话不多说,好戏开场。

  本文其实集合了若干关于建立openshift的博文,再集合了本人一些特殊的需求,比如zend支持,和php版本此次为5.2.17,5.3版本的不用讨论直接一条命令就可建立,在命令提示符cmd窗口入:rhc app create php5.3 name,其中name为你想建立的应用名称,以后域名就会以此开头,之后进入web管理界面添加mysql数据库。

  首先搭建nginx1.2服务器,以下操作均在ssh命令窗口下执行:

  cd $OPENSHIFT_DATA_DIR

  wget http://nginx.org/download/nginx-1.2.2.tar.gz

  tar zxf nginx-1.2.2.tar.gz

  wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.31.tar.bz2

  tar jxf pcre-8.31.tar.bz2

  #开始编译nginx

  makedir nginx1.2

  cd nginx-1.2.2

  ./configure --with-pcre=$OPENSHIFT_DATA_DIR/pcre-8.31 --prefix=$OPENSHIFT_DATA_DIR/nginx1.2

  make

  make install

  cd $OPENSHIFT_DATA_DIR

  #配置NGINX

  vim nginx1.2/conf/nginx.conf

  编辑下端内容:

  http { …

  server {

  listen 127.7.192.129:8080;

  server_name 127.7.192.129;

  …

  }

  …

  }

  listen和server_name的IP和端口分别由echo $OPENSHIFT_DIY_IP、echo $OPENSHIFT_DIY_PORT

  得到

  location / {

  root html;

  index index.php index.html index.htm;

  }

  要更改网站根目录请修改root html(html为网站根目录路径,修改为实际路径即可),并在index中添加index.php,服务器就会自动识别以php结尾的主页,不然有可能会出现404错误,其中html由$OPENSHIFT_REPO_DIR/diy得到;

  要启用nginx对php的支持去掉以下片段的注释,并

  location ~ .php$ {

  root $OPENSHIFT_REPO_DIR/diy;

  fastcgi_pass $OPENSHIFT_DIY_IP:9000;

  fastcgi_index index.php;

  include fastcgi.conf;

  }

  $OPENSHIFT_REPO_DIR, $OPENSHIFT_DIY_IP都要填写自己的具体值,端口号默认9000也可任意指定,够大即可,不过要记住哦,下面的配置会用到。

  另外在启动NGINX前 请killall ruby,不然会因端口占用而失败

  首先在$OPENSHIFT_DATA_DIR/nginx.1.2目录中建立start.sh和restart.sh,使用命令

  vim start.sh #入以下内容后,esc键退出编辑,入:wq即可保存退出(包含冒号)。

  start.sh 内容为

  #!/bin/bash

  # start nginx

  killall ruby

  $OPENSHIFT_DATA_DIR/nginx1.2/sbin/nginx

  Start.sh建立完毕后,

  vim restart.sh #入以下内容,esc键退出编辑,入:wq即可保存退出(包含冒号)。

  restart.sh 内容为

  #!/bin/bash

  # restart nginx

  killall ruby

  killall nginx

  $OPENSHIFT_DATA_DIR/nginx1.2/sbin/nginx

  千别忘记赋予start.sh和restart.sh可执行权限:

  chmod +x start.sh restart.sh

  在~/app-root/repo/.openshift/action_hooks目录中的start末尾加入

  $OPENSHIFT_DATA_DIR/nginx1.2/start.sh

  至此nginx搭建完毕,在nginx1.2路径入命令restart.sh,入一个不存在url,如果看到nginx的404页面说明你成功了。

  本文链接:http://www.kxzhp.com/info/2013/11/26/9.html

  下面开始编译php5.2.17,至于5.2详细版本随各位取舍了,17是5.2的最后一个版本。

  wget http://museum.php.net/php5/php-5.2.17.tar.gz

  wget http://php-fpm.org/downloads/php-5.2.17-fpm-0.5.14.diff.gz

  mkdir PHP5.2

  tar zxf php-5.2.17.tar.gz

  gzip -cd php-5.2.17-fpm-0.5.14.diff.gz | patch -d php-5.2.17 -p1

  cd php-5.2.17

  ./configure --with-mysql=/var/lib/openshift/user/mysql --prefix=$OPENSHIFT_DATA_DIR/PHP5.2 --enable-fpm

  --enable-mbstring --with-zlib --enabl

  e-xml --enable-bcmath --with-curl --with-gd --enable-zip --enable-sockets --with-libdir=lib64 --with-png

  -dir=/usr --with-jpeg-dir=/usr --with-config-file-path=$OPENSHIFT_DATA_DIR/PHP5.5/etc --with-pcre --enable-fastcgi

  #要将mysql中的user换成自己的id!编译大概需要半小时左右时间,取决于你的网速

  make

  make install

  #又是半小时 到一个小时不等 = = ,下面是将文件php.ini-dist文件拷贝并重命名为php.ini文件

  cp php.ini-dist $OPENSHIFT_DATA_DIR/PHP5.2/etc/php.ini

  下面要配置php-fpm,本文链接:http://www.kxzhp.com/info/2013/11/26/9.html

  vim $OPENSHIFT_DATA_DIR/PHP5.2/etc/php-fpm.conf

  标签listen_address是配置fastcgi进程监听的IP地址以及端口,默认是127.0.0.1:9000。

  $OPENSHIFT_DIY_IP:9000 ,$OPENSHIFT_DIY_IP要填自己的具体值,端口要跟在nginx中配置php的端口一致。

  标签allowed_clients用于设置允许访问FastCGI进程解析器的IP地址。如果不在这里指定IP地址,Nginx转发过来的PHP解析请求将无法被接受。

  127.0.0.1,$OPENSHIFT_IP_DIY,$OPENSHIFT_IP_DIY填写自己的具体值,一定要添加自己的ip值,不然还是会无法解析php脚本,出现404错误。

  并在$OPENSHIFT_DATA_DIR/nginx1.2/restart.sh中加入

  $OPENSHIFT_DATA_DIR /PHP5.5/sbin/php-fpm restart

  执行 restart.sh,nginx+php配置大功告成。

  最后要加入Zend optimizer扩展,以支持用Zend加密过的程序,

  cd $OPENSHIFT_DATA_DIR

  wget http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz

  tar zxf ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz

  cp ZendOptimizer-3.3.9-linux-glibc23-x86_64/data/5_2_x_comp/ZendOptimizer.so $OPENSHIFT_DATA_DIR/PHP5.2/ZendOptimizer.so

  vi $OPENSHIFT_DATA_DIR/PHP5.2/etc/php.ini

  在文件末尾添加

  [ZendOptimizer]

  zend_optimizer.optimization_level=1

  zend_extension="$OPENSHIFT_DATA_DIR/PHP5.5/ZendOptimizer.so"

  这里的$OPENSHIFT_DATA_DIR要填写自己具体的路径,执行nginx1.2中的restart.sh,上传探针验证zend optimizer安装是否

  成功,本文探针地址http://diy11-kxzhp.rhcloud.com/tz.php

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:搭建  服务  服务器  教程  
  • 相关搜索
图片推荐
    小猪CMS 快捷关注功能大更新!吸粉就是要快

    小猪CMS 快捷关注功能大更新!吸粉就是要快

    今天有人说小编没有节操,吓得小编赶紧摸了摸自己的脑袋。还好,三观尚在,还可以再战五百年。  快捷关注是小猪CMS为商家开发的一款吸粉助攻型功能。它在快速输送粉丝道路上,默默地为商家撑起了一片天。  为
    外链关键词排名价值有多少?

    外链关键词排名价值有多少?

    花了很多时间和精力建设的网站外链信息,好不容易有些热度较高的关键词能在百度自然排名上,与众多行业官网和其它大站竞争而谋得一席之地,这样的结果想必是很让人感觉到兴奋和一丝丝成就感的。但有排名的关键词就一
    从校园网上便利店看O2O成败的三个核心问题

    从校园网上便利店看O2O成败的三个核心问题

    最近去了深圳和无锡,两地两团队都在筹备校园网上便利店项目。具体模式是在寝室楼招募楼长(学生代理),楼长备货超市商品在寝室,本楼寝室学生用手机订货,楼长送货上门,因为距离近,所以基本能做到5分钟送货上床
    网站关键词挖掘从何做起?

    网站关键词挖掘从何做起?

    SEO关键词优化,很多人都是粗粗的认为,仅仅是小到发外链,大到内容更新,这便就是SEO了!其实SEO真的不是那么简单,举例说网站关键词挖掘,就是做SEO优化初期的必要环节!就像盖房子,如果根基没有打好
    90后创业者:我们机会比上一代少得多

    90后创业者:我们机会比上一代少得多

    很多年长的朋友跟我说,真羡慕你们90后,现在赶上创业的好时代了。得出这样结论的人一般就是新闻看太多了。今天报道这个90后拿了多少钱,明天告诉你那个90后又做出了一款什么引爆朋友圈的应用,媒体还动不动为
    每个投资人心底都住着一群被错过的前女友

    每个投资人心底都住着一群被错过的前女友

    摘要:对投资人来说,意义最大也最为津津乐道的应该是自己投到过的独角兽。至于被错过的项目的意义,对他们来说倒有点像前女友,每个投资人都有埋在心底深处的一个list(列表)。  最近一家初创公司获得了巨额
    浅谈‘洪荒之力’背后的借势与追热之风

    浅谈‘洪荒之力’背后的借势与追热之风

    傅园慧神情言行并茂的一句洪荒之力使得相关微博、朋友圈、互联网疯狂转载,这姑娘出名了,这姑娘的专用词洪荒之力瞬间变成了大众词。至此,追热开始,借势开始,企业、个体户、职员又开始了新一轮的借势比拼。   
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面