您的位置:首页 > 运维架构 > Nginx

linux系统配置nginx支持PHP解析

2018-03-09 11:05 519 查看

linux系统配置nginx支持PHP解析

目录

1 linux安装fpm-php
  1.1 ubuntu安装php-fpm
  1.2 centos安装php5-fpm
2 linux采用php-cgi或者php-fpm支持php
3 linux修改nginx配置文件
4 测试nginx是否支持php
  4.1 新建一个info.php文件,
  4.2 将以下代码复制到文件中
  4.3 网页中打开info.php文件测试nginx配置表中带有php文件解析的配置,默认情况下是注销掉的.打开对应的注释即可.注释中有2种支持php的方式,通过php-cgi和php-fpm.

1 linux安装fpm-php

配置nginx支持php也可以不安装fpm-php.php-fpm是php-cli的进程管理程序,当一个进程关闭后,会自动启动一个新的线程.非常强大,建议安装装.其他操作系统类似.国内部分镜像源是php5-fpm,阿里云上的为php7-fpm.我们以ubuntu和centos为例介绍下php-fpm安装命令,其他linux系统类似,不再赘述.

1.1 ubuntu安装php-fpm

ubuntu安装php5-fpm
php5-fpm支持PHP5版本
apt-get install php5-fpm
ubuntu安装php7-fpm
php7-fpm支持PHP7版本
apt-get install php7-fpm

1.2 centos安装php5-fpm

yum install php5-fpm

2 linux采用php-cgi或者php-fpm支持php

linux安装php-fpm完成后,搜索一下是否有php5-fpm.sock或者php7-fpm.sock.linux系统通过find命令查找文件:
find / -name php5-fpm
或者
find / -name php7-fpm
如果有这个文件就采用php-fpm的模式,没有的话就采用php-cgi模式.

3 linux修改nginx配置文件

默认情况下修改nginx安装目录中的"site-enable/default"文件.nginx配置php-cgi支持php
打开nginx.conf中fastcgi_pass 127.0.0.1:9000;这行注释.
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#    # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
#    # With php5-cgi alone:
fastcgi_pass 127.0.0.1:9000;
#    # With php5-fpm:
#    fastcgi_pass unix:/var/run/php5-fpm.sock;
#    fastcgi_index index.php;
#    include fastcgi_params;
}
nginx配置php-fpm支持php
打开"fastcgipass unix:/var/run/php5-fpm.sock;","fastcgiindex index.php;""include fastcgi_params;"这三行注释.如果php-fpm的版本是php7-fpm则需要手动修改文件内容.nginx配置php-fpm示例:
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#    # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
#
#    # With php5-cgi alone:
#    fastcgi_pass 127.0.0.1:9000;
#    # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}

4 测试nginx是否支持php

4.1 新建一个info.php文件,

linux新建文件的命令为touch.在nginx的web服务器的根目录新建一个名为info.php的文件.
touch info.php

4.2 将以下代码复制到文件中

通过vim程序编辑info.php文件.
vim info.php
将以下代码复制到文件中
<?php
phpinfo();
?>

4.3 网页中打开info.php文件测试

用浏览器访问info.php文件,输入https://dashidan.com/info.php,配置正确的话会显示phpinfo页面,里面有详细的php相关的信息.如图:

如果访问php页面时,该页面从浏览器下载下来,没有正确显示phpinfo的信息说明配置错误.从新检查nginx的php相关配置.转载请保留本文链接.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux nginx php php-fpm 配置