解决启动php-fpm后访问不到php文件的办法

 更新时间:2016年12月16日 14:16:41   投稿:daisy  
今天碰了一个很奇怪的问题,当启动php-fpm后,发现居然访问不到php文件了,后来通过查看日志、分析+搜索终于解决了,现在将整个过程分享给大家,也方便同样遇到这个问题的同学们参考借鉴,下面来一起看看吧。

问题场景:

  1. linux系统
  2. nginx服务器
  3. 安装好了fpm的php7
  4. 在nginx的web目录下新建了index.php文件,内容为phpinfo()函数。(如果是源码安装,位置一般为 /usr/local/nginx/html/index.php)

nginx经过了简单的配置,开始试验是否可以支持php

  location / {
   root html;
   index index.html index.htm index.php;
  }
 
  location ~ \.php$ {
   root   html;
   fastcgi_pass 127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
   include  fastcgi_params;
  }

在浏览器访问 localhost/index.php

结果为 File not found.

这时候我们查看nginx的错误日志,错误日志的主要内容为 FastCGI sent in stderr: "Primary script unknown"

经过分析+搜索前辈经验得出结论,nginx的配置文件无法识别/scripts路径,所以我们将配置文件中的/scripts改为$document_root,或者web目录的绝对路径。更改后的配置文件如下:

  location ~ \.php$ {
   root   html;
   fastcgi_pass 127.0.0.1:9000;
   fastcgi_index index.php;
   fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   include  fastcgi_params;
  }

重启nginx服务器,已经可以正确显示phpinfo()的内容了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

  • 一行代码教你如何隐藏Linux进程

    一行代码教你如何隐藏Linux进程

    这篇文章主要介绍了一行代码教你如何隐藏Linux进程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • centos7中firewall防火墙命令详解

    centos7中firewall防火墙命令详解

    本篇文章主要介绍了centos7中firewall防火墙命令详解,具有一定的参考价值,有需要的可以了解一下。
    2016-11-11
  • linux NFS 服务安全加固方法

    linux NFS 服务安全加固方法

    NFS(Network File System)是 FreeBSD 支持的一种文件系统,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。不正确的配置和使用 NFS,会带来安全问题,需要的朋友可以参考下
    2018-02-02
  • Linux(CentOS)环境下安装下载Nginx并配置

    Linux(CentOS)环境下安装下载Nginx并配置

    本篇文章主要介绍了Linux(CentOS)环境下安装下载Nginx并配置 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 实战 LAMP 服务器配置 完整篇

    实战 LAMP 服务器配置 完整篇

    LAMP 服务器配置 按部就班篇,大家可以学习试试。
    2009-06-06
  • 解密 Linux 版本信息的方法

    解密 Linux 版本信息的方法

    这篇文章主要介绍了解密 Linux 版本信息的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • 浅谈实时计算框架Flink集群搭建与运行机制

    浅谈实时计算框架Flink集群搭建与运行机制

    Flink是一个框架和分布式处理引擎,用于对无界和有界数据流进行有状态计算。Flink被设计在所有常见的集群环境中运行,以内存执行速度和任意规模来执行计算
    2021-06-06
  • Linux服务器中对于Memcache的安装配置方法

    Linux服务器中对于Memcache的安装配置方法

    Linux服务器中对于Memcache的安装配置教程,服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.3.0
    2011-05-05
  • 学习Apache的mod rewrite、access写法

    学习Apache的mod rewrite、access写法

    Apache的mod_rewrite是提供了强大URL操作的杀手级的模块,可以实现几乎所有你梦想的URL操作类型,其代价是你必须接受其复杂性,因为mod_rewrite的主要障碍就是初学者不容易理解和运用,即使是Apache专家有时也会发掘出mod_rewrite的新用途。
    2008-09-09
  • Linux中 find查找命令用法详解

    Linux中 find查找命令用法详解

    本篇文章主要介绍了Linux中 find查找命令详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04

最新评论