nignx .do 访问 php,nginx 访问 PHP 问题详解

nginx 访问 PHP 问题详解

nginx 访问 PHP 问题详解

文章目录前言

问题1. nginx 访问PHP脚本没有解析,而是直接下载PHP脚本?

2. nginx 访问PHP脚本,HTTP状态码为200,但是页面为空?

测试

今天斗志高昂的去搭建LNMP 运行环境,感觉自己无所不能!

开始安装PHP MySQL nginx 行云流水,觉得马上就到达到人生巅峰。。。

然后通过nginx访问PHP脚本。。。

解决遇到了如下问题:

1. nginx 访问PHP脚本没有解析,而是直接下载PHP脚本?

原因

因为nginx和PHP之间的通信方式是fastcgi,而php-fpm实现了对fastcgi进程管理

解决方案

确认已经安装并且运行php-fpm,如果没有安装请安装php-fpm(安装的php-fpm需要与自己安装的PHP版本对应,例如我安装PHP版本是PHP7.2,那么我的fpm安装的是php7.2-fpm)

确认你web服务器配置中的.php文件是不是被指定给FastCGI server处理,修改vi /etc/nginx/sites-available/default文件内容,如下:

# pass PHP scripts to FastCGI server

#

location ~ \.php$ {

# # With php-fpm (or other unix sockets):

# fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

# # With php-cgi (or other tcp sockets):

# fastcgi_pass 127.0.0.1:9000;

include fastcgi_params;

fastcgi_pass 127.0.0.1:9000;

try_files $uri =404;

}

2. nginx 访问PHP脚本,HTTP状态码为200,但是页面为空?

原因

如果问题1已经解决的前提下,问题2的原因是由于fastcgi_script_name访问脚本路径不正确引起的,修改在这里插入代码片文件内容,添加如下代码:

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

fastcgi_param PATH_INFO $fastcgi_script_name;

a864502d4b7e8a350de5c4d4a27a5f11.png

查看PHP版本信息

68096356a58a42df0079682b78719c6c.png

通过虚拟域名访问laravel

2770db9fd636fd5cfb8b4f2c6ef5c16a.png

nginx 访问 PHP 问题详解相关教程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值