为了账号安全,请及时绑定邮箱和手机立即绑定

Nginx+Php-fpm+Mysql安装

标签:
PHP

LNMP即linux+nginx+mysql+php.

用来搭建php+mysql网站很好的选择。下面开始安装;

一、Nginx

yum安装:http://bfe99.blog.51cto.com/blog/1072496/1313414

编译安装:http://bfe99.blog.51cto.com/blog/1072496/1131164

测试:直接在浏览器中输入http://192.168.1.220(你机器的ip地址)访问

如果出现,那么恭喜你,nginx安装成功!

Welcome to nginx!

注:防火墙的配置。

二、MySQL

待续。

三、Php、Php-fpm

php的版本选择以前的稳定版5.3.14。由于php5.3.x直接绑定php-fpm,所以php-fpm是没有php5.3.x的包。

###################################################

通过源码安装php5.3.14。

wget http://cn.php.net/get/php-5.3.14.tar.bz2/from/this/mirror

tar -xvjf php-5.3.14

cd php-5.3.14

#下载源码

安装(php源码安装的话,其参数会非常多。具体看你加载那些扩展)

> ./configure -enable-fpm--with-mysql=/usr/bin/mysql --with-curl --with-zlib_dir=/usr/lib64 --with-gd--with-mysqli

( -enable-fpm开启php-fpm,cgi模式

--with-mysql=/usr/bin/mysql /usr/bin/mysql是你的mysql客户端的地址

--with-mysqli 加载mysqli扩展

--with-curl加载curl扩展

--with-zlib_dir=/usr/lib64这个暂时不知道什么意思,但是不加上会出现:configure error:Try adding --with-zlib_dir=<DIR>……错误

--with-gd加载gd扩展

--with-mcrypt

--with-mhash

--with-mbstring

>make

>make install

####################################################
#################yum安装##########

yum install php-fpm

service php-fpm start

如果找不到源则进行下面操作:

·首先,添加atomic源,这个atomic是专为LAMP设置的,很多源在有了新的版本之后会删除旧的版本,因此无法使用。在终端输入以下代码:

 wget -q -O - http://www.atomicorp.com/installers/atomic | sh

·其次使用yum的附加选项–enablerepo(这个可以指定从哪个源安装软件),再次,使用–exclude选项(排除特定的包),这里呢,就写出我们需要的命令:

 yum --enablerepo=atomic --exclude=php*5.3*--exclude=php*5.4* install php

。两个排除(–exclude。5.3和5.4,自己融汇贯通),一个指定(–enablerepo,当然可以像–exclude一样连续两个。)

#######################################

#########################php5.4安装也说一下##############

使用 WebtaticEL6YUM源来安装php5.4,我们首页安装Webtatic EL6 YUM

rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm

yum install php54w

如果安装失败,建议您先卸载以前的php再进行安装,使用yum remove php php-*

附带的php扩展列表:

Package

Provides

php54w

mod_php

php54w-bcmath


php54w-cli

php-cgi, php-pcntl, php-readline

php54w-common

php-api, php-bz2, php-calendar, php-ctype, php-curl, php-date, php-exif, php-fileinfo, php-ftp, php-gettext, php-gmp, php-hash, php-iconv, php-json, php-libxml, php-openssl, php-pcre, php-pecl-Fileinfo, php-pecl-phar, php-pecl-zip, php-reflection, php-session, php-shmop, php-simplexml, php-sockets, php-spl, php-tokenizer, php-zend-abi, php-zip, php-zlib

php54w-dba


php54w-devel


php54w-embedded

php-embedded-devel

php54w-enchant


php54w-fpm


php54w-gd


php54w-imap


php54w-interbase

php_database, php-firebird

php54w-intl


php54w-ldap


php54w-mbstring


php54w-mcrypt


php54w-mssql


php54w-mysql

php-mysqli, php_database

php54w-odbc

php-pdo_odbc, php_database

php54w-pdo


php54w-pgsql

php-pdo_pgsql, php_database

php54w-process

php-posix, php-sysvmsg, php-sysvsem, php-sysvshm

php54w-pspell


php54w-recode


php54w-snmp


php54w-soap


php54w-tidy


php54w-xml

php-dom, php-domxml, php-wddx, php-xsl

php54w-xmlrpc


php54w-zts


注意事项

最新版本中的error_reporting 中E_ALL 现在包含了 E_STRICT,会出现更多的警告及错误提示。默认情况下error_reporting是关闭状态,但是如果是从旧的php版本中升级而来,php.ini可能得不到更新,error_reporting可能开启着。

关于php5.4centos5上的安装升级

因为centos已经过去的版本了,用的越来越少,把php5.4移植到centos5上也需要大量的工作,估计够呛能完成啊。

########################################################

service php-fpm start

netstat -tunlp | grep 9000

测试是否安装成功


四、让nginx支持php  

找到/etc/nginx/conf.d/default.conf,打开编辑它

>vi /etc/nginx/conf.d/default.conf

去掉下面部分的注释用于支持php 脚本:

 location ~ \.php$ {
   root      html;
   fastcgi_pass  127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
   include    /etc/nginx/fastcgi_params;
 }

fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; /usr/share/nginx/html指你的网站目录

include    /etc/nginx/fastcgi_params; 要确保找对文件地址

重启nginx服务

>/etc/init.d/nginx stop

>/etc/init.d/nginx start

启动php-fpm

>/usr/local/sbin/php-fpm

建立php测试文件

vi phpinfo.php

其内容:

<?php

phpinfo();

?>

浏览http://(你机器的ip地址)/phpinfo.php

如果出一个php的特色标志页面,就说明安装成功了。

五、问题总结

安装php中的mcrypt出问题:mcrypt.h not found. Please reinstalllibmcrypt

解决方法:

yum install libmcrypt

编译安装遇到的问题比较多,建议yum安装。


重启nginx时提示ive"root" is not terminated by ";"

发现配置文件里面少;可}这里要注意.

可以用grep 来查看下.

网上也有人说:

将重新后的url用双引号引起来!

出错:rewrite ^/date/([0-9]{6})/?([0-9]+)?/?$/index.php?action=article&setdate=$1&page=$2 last;
正确:rewrite"^/date/([0-9]{6})/?([0-9]+)?/?$"/index.php?action=article&setdate=$1&page=$2 last;

这个我没试.不知是否有用.


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消