11.10/11.11/11.12 安装PHP5
尽量使用php7
下载php安装包
解压
编译php,编译过程中有可能会出现错误,这是应为一些库没有安装
解析
--with-apxs2=/usr/local/apache2/bin/apxs 自动帮助安装扩展模块
--with-mysql=/usr/local/mysql php依赖mysql,所以要最后安装php
错误
1、configure: error: mcrypt.h not found. Please reinstall libmcrypt.
yum install -y epel-release
yum install -y libmcrypt-devel
两个不能一起安装,因为CentOs6默认的yum源没有 libmcrypt-devel这个包,只能借助epel的yum源,所以先安装epel,再安装 libmcrypt。
2、configure: error: xml2-config not found. Please check your libxml2 installation.
yum install -y libxml2-devel
3、configure: error: Cannot find OpenSSL's <evp.h>
yum install -y openssl openssl-devel
4、checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution
yum install -y bzip2 bzip2-devel
5、configure: error: png.h not found.
yum install -y libpng libpng-devel
#echo $?
#make
#echo $?
#make install
#echo $?
#cp php.ini-production /usr/local/php/etc/php.ini 【拷贝配置文件,进行修改】【这里除了php-in-production,还有一个php.ini-devleopment,在线上环境使用,要拷贝production这个文件】
修改配置文件
# vi /usr/local/apache2/conf/httpd.conf
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
修改为 Allow from all 如果不修改这个地方,访问网站会禁止访问,显示403,。
AddType application/x-gzip .gz .tgz
在下面行增加
AddType application/x-httpd-php .php
支持php脚本解析
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
修改为
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
增加针对php的索引,如果一个站点默认页为 index.php,那么就得加上这个 index.php的支持
#ServerName www.example.com:80
修改为
ServerName localhost:80
如果不去掉#号,则启动apache的时候,会有警告信息,httpd: Could not reliably determine the server's fully qualified domain name, using 172.28.150.4 for ServerName看起来像是错误,但是实际上没有影响。
保存退出。
检查配置文件是否有问题
# /usr/local/apache2/bin/apachectl -t
Syntax OK
#/usr/local/apache2/bin/apachectl start 【开启服务】
如果提示已经开启,关闭重新打开,或者restart
#ps aux |grep hpptd 【检查是否正常启动,看看有没有进程列表】
NOTE:
-m 查看静态模块
# /usr/local/php/bin/php -m
-i 查看相关配置
mysql
json
iconv
等待
11.13 安装PHP7
大同小异