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

nginx配置解析php,nginx不能访问php的解决文案——0基础linux安装web服务器8

2018-01-22 16:13 906 查看
linux从0开始安装web服务器1
linux连接互联网——linux安装web服务器2
安装gcc——linux安装web服务器3
安装mysql5.6.38——linux安装web服务器4
安装php7——linux安装web服务器5
linux系统安装nginx——linux安装web服务器6
nginx平滑升级,nginx安装第三方模块——linux安装web服务器7

经过前面的系列文章,

你已经把nginx安装到你的linux服务器上。

现在很多网站都是使用php开发,

那么怎么让nginx能够解析php?

其实也挺简单,

只要你在nginx中的配置文件中,

把相关配置设置好就行。


一、 nginx 配置

我们假定你已经跟着子恒老师的这个《0基础linux安装web服务器》系列,

把nginx安装在 /usr/local/nginx

nginx的配置文件就是 /usr/local/nginx/conf/nginx.conf
cd /usr/local/nginx
vi conf/nginx.conf
# 在 server{} 配置内容中添加下面代码
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;
# fastcgi_param SCRIPT_FILENAME /home/wwwroot/qinziheng/$fastcgi_script_name;
include fastcgi_params;
}


 

重启 nginx
sbin/nginx -s reload




简单说明下nginx.conf使用到的内容,

# 开头的表示注释

1-1) root html;

表示网站所在的根目录,

可以使用绝对路径。

如果使用相对路径,

是相对于nginx的安装目录 /usr/local/nging/ 而言,

示例中的 root html;

网站的绝对路径是 /usr/loca/nginx/html/

1-2) fastcgi_pass 127.0.0.1:9000;

表示php fastcgi 的地址和端口,

这个是 php-fpm 的配置文件中设置的对应,

通常保持默认就行。

按照《linux安装php7》教程中的方法安装,

php-fpm配置文件就是 /usr/local/php/etc/php-fpm.conf

1-3) include fastcgi_params;

表示引入 conf 目录下的 fastcgi_params 文件,

里面定义了一些常量。

1-4) fastcgi_param SCRIPT_FILENAME /$document_root$fastcgi_script_name;

表示请求的php脚本路径,

通过上面配置,

还不能解析php脚本,

可以把上面一句改为下面

fastcgi_param SCRIPT_FILENAME /home/wwwroot/qinziheng/$fastcgi_script_name;

其中 /home/wwwroot/qinziheng/ 代表你网站的绝对目录。


二、 查看是否设置成功

2-1) 在网站根目录中新建一个php文件,
vi html/t.php
echo 'hello world!';


2-2) 访问 php 脚本
curl localhost/t.php


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐