由于这两天 一直有人追问 nginx为何报错,为何php没装好啥的,大多原因是 :
1.编译与yum混合安装,导致很多包的路径不对,进而报错
2.yum源比较旧,导致 与新版本的php不匹配
3.安装过程不对
今天我从零开始 装了一遍虚拟机,到 成功运行环境。
1. 装一个暂新的虚拟机(我的是 centos6.5)
2. 桥接--配置ip,关防火墙
3. 换 yum源 ,这一步很重要,如果使用默认yum源很有可能让你安装中 各种 包不匹配的情况
http://www.cnblogs.com/guixiaoming/p/6627671.html
4. 安装 Nginx
所以 依赖的包 直接 yum
openssl-devel,openssl、zlib-devel,zlib、pcre
pcre-devel,gcc-c++,
http://www.cnblogs.com/guixiaoming/p/6591479.html
5.安装 php,
去 php.net 下载源码包
添加 epel 源(安装后 libmcrypt-devel 才不会报错)
# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
安装依赖# yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel
安装
创建 www 用户
# groupadd www
# useradd -g www -s /sbin/nologin -M www
编译安装
# cd /usr/local/src/php-5.6.0/
./configure --prefix=/usr/local/php56
--with-config-file-path=/usr/local/php56/etc
--enable-inline-optimization
--disable-debug
--disable-rpath
--enable-shared
--enable-opcache
--enable-fpm
--with-fpm-user=www
--with-fpm-group=www
--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
--with-gettext
--enable-mbstring
--with-iconv
--with-mcrypt
--with-mhash
--with-openssl
--enable-bcmath
--enable-soap
--with-libxml-dir
--enable-pcntl
--enable-shmop
--enable-sysvmsg
--enable-sysvsem
--enable-sysvshm
--enable-sockets
--with-curl
--with-zlib
--enable-zip
--with-bz2
--with-readline
配置php。
nginx
完了,有需要帮忙的 添加 qq,572752023