CentOS6.5下源码安装 PHP(Unix 系统下的 Nginx)教程
CentOS6.5下源码安装 PHP(Unix 系统下的 Nginx)教程
1、 获取并解压 PHP 源代码:
在/usr/local/src/目录下获取php源码
[root@localhost local]# cd /usr/local/src/ [root@localhost src]# wget http://php.net/get/php-5.6.33.tar.gz/from/this/mirror
解压
[root@localhost src]# tar zxf php-5.6.33.tar.gz
2、配置并构建 PHP。
在此步骤您可以使用很多选项自定义 PHP,例如启用某些扩展等。
运行 ./configure –help 命令来获得完整的可用选项清单。
在本示例中,我们仅进行包含 PHP-FPM 和 MySQL 支持的简单配置。
配置php
[root@localhost src]# cd php-5.6.33 [root@localhost php-5.6.33]# ./configure --enable-fpm --with-mysql
此处我这里出现了错误提示:
configure: error: xml2-config not found. Please check your libxml2 installation.
安装libxml2 libxml2-devel解决问题
[root@localhost php-5.6.33]# yum -y install libxml2 libxml2-devel
再次配置
[root@localhost php-5.6.33]# ./configure --enable-fpm --with-mysql
这次没有错误提示了,配置成功。
构建php
[root@localhost php-5.6.33]# make [root@localhost php-5.6.33]# make install
3、创建配置文件,并将其复制到正确的位置。
[root@localhost php-5.6.33]# cp php.ini-development /usr/local/php/php.ini [root@localhost php-5.6.33]# cp /usr/local/etc/php-fpm.conf.default /usr/local/etc/php-fpm.conf [root@localhost php-5.6.33]# cp sapi/fpm/php-fpm /usr/local/bin
4、需要着重提醒的是,如果文件不存在,则阻止 Nginx 将请求发送到后端的 PHP-FPM 模块, 以避免遭受恶意脚本注入的攻击。
将 php.ini 文件中的配置项 cgi.fix_pathinfo 设置为 0 。
打开 php.ini:
[root@localhost php-5.6.33]# vim /usr/local/php/php.ini
定位到 cgi.fix_pathinfo= 并将其修改为如下所示:
cgi.fix_pathinfo=0
5、 启动 php-fpm 服务
/usr/local/bin/php-fpm
6、配置 Nginx 使其支持 PHP 应用
vim /usr/local/nginx/conf/nginx.conf
修改默认的 location 块,使其支持 .php 文件:
location / { root html; index index.php index.html index.htm; }
下一步配置来保证对于 .php 文件的请求将被传送到后端的 PHP-FPM 模块, 取消默认的 PHP 配置块的注释,并修改为下面的内容:
location ~* \.php$ { fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; }
重启 Nginx。
/usr/local/nginx/sbin/nginx -s stop /usr/local/nginx/sbin/nginx
7、创建测试文件。
echo "" >> /usr/local/nginx/html/index.php
打开浏览器,访问 http://localhost,将会显示 phpinfo() 。
通过以上步骤的配置,Nginx 服务器现在可以以 SAPI 模块的方式支持 PHP 应用了。 当然,对于 Nginx 和 PHP 的配置,还有很多可用的选项, 请在对应的源代码目录执行 ./configure –help 来查阅更多配置选项。
下一篇: JSP内置对象介绍
推荐阅读
-
Mac系统下源码编译安装MySQL 5.7.17的教程
-
CentOS 7系统下安装nginx-1.13的教程
-
CentOS6.5下源码安装 PHP(Unix 系统下的 Nginx)教程
-
[视频教程] 如何在docker环境下的纯净ubuntu系统中安装最新版nginx
-
Linux系统下PHP-FPM的安装和配置教程
-
Linux系统下PHP-FPM的安装和配置教程_PHP
-
Linux系统下PHP-FPM的安装和配置教程_PHP
-
Windows XP操作系统下的MYSQL安装过程_PHP教程
-
Linux/Unix下nginx+php安装简明教程
-
Linux/Unix下nginx+php安装简明教程