下载PHP#
- 台湾镜像站:http://ftp.ntu.edu.tw/php/distributions/
- 搜狐镜像站:http://mirrors.sohu.com/php/
- 阿里镜像:http://mirrors.aliyun.com/
- 官网:http://php.net/downloads.php
检查PHP所需的lib库#
提示:libjpeg-turbo-devel是早期libjpeg-devel的新名字,libcurl-devel是早期curl的新名字。
每个lib一般都会存在对应的以“-devel”命名的包,安装lib对应的-devel包后,对应的lib包就会自动安装好,例如安装gd-devel时就会安装gd。
这些lib库不是必须安装的,但是目前的企业环境下一般都需要安装。否则,PHP程序运行时会出现问题,例如验证码无法显示等。
执行下面命令安装相关的lib软件包:
提示:从安装上看,仅有libiconv-devel这个包没有安装,因为默认的yum源没有此包。可以一个一个地yum安装或通过源文件手工编译安装(这样效率慢)
安装libiconv-devel#
libiconv下载地址:http://ftp.gnu.org/pub/gnu/libiconv/
可以将libiconv制作成rpm包,批量安装时,可放至本地yum源内
安装epel源#
可以安装redhat官方yum源里没有的软件,epel源和官方源不冲突
阿里镜像 http://mirrors.aliyun.com/
Centos7
安装libmcrypt-devel#
这是一个使用动态加载的模块化的libmcrypt。libmcrypt对于在程序运行时添加/移除算法是有用的。limbcrypt-nm目前不再被官方支持,其软件地址为http://mcrypt.hellug.gr/lib/
,编译PHP的过程中,libmcrypt库不是必须要安装的包。
安装mhash加密扩展库#
mhash是基于离散数学原理不可逆向的PHP加密方式扩展库,其在默认情况下不会开启。mhash可以用于创建校验数值、消息摘要、消息认证码,以及无需原文的关键信息保存(如密码)等。它为PHP提供了多种散列算法,如MD5、SHA1、GOST等。可以通过MHASH_hashname()查看其支持的算法有哪些。
安装mcrypt#
PHP程序员在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障。PHP除了自带的几种加密函数外,还有功能更全面的PHP加密扩展库mcrypt和mhash。
其中,mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以将密文还原。
可以说,mcrypt是PHP里面重要的加密支持扩展库,该库在默认情况下不开启。
问:如果在不能联网的状态下怎么配置PHP环境?
答:在yum时,可以在yum配置文件中设置安装后不删除包
vi /etc/yum.conf
编译PHP#
编译PHP参数详解#
公共编译参数#
解决:
nginx 5.3.27#
注:上述每行结尾的换行符反斜线(\)之后不能再有任何字符包括空格
apache 5.3#
配置php.ini#
开发环境更多的是开启日志、调试信息,而生产环境都是关闭状态。
配置PHP(FastCGI)的配置文件php-fpm.conf#
- PHP5位置:/app/php/etc/
- PHP7位置:/app/php/etc/和 php-fpm.d
3 配置Nginx支持PHP程序#
原因:local中没有路径,要么加路径,要么提出最外面4 配置apache支持PHP#
默认生成
修改311行
更改daemon,更改用户是为了安全考虑
打不开解决方法: