Nginx下php文件不存在不返回404却返回No input file specified

在php解析字段加上

try_files $uri =404;

完整的php 解析字段为:

 代码如下 复制代码

location ~ \.php(|/.*)$ {

      try_files $uri =404;

      fastcgi_pass       unix:/tmp/php-cgi.sock;

      fastcgi_index      index.php;

      include            fastcgi_params;

      fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;

}

补充:另外找到一个解决方案就是在php的location里面加上这么一句话“fastcgi_intercept_errors on;”,原因是默认情况下只要是php文件,nginx不管他存不存在,都会交给php去处理,这个错误其实是php-cgi报告出来的,加上“fastcgi_intercept_errors on;”这个指令后就让nginx判断404这样的常规错误啦^^

时间: 2024-07-30 19:01:33

Nginx下php文件不存在不返回404却返回No input file specified的相关文章

Nginx下Wordpress的永久链接实现(301,404等)_nginx

其实也是很简单的方法,修改nginx.conf文件,加入以下内容: 复制代码 代码如下: location / {if (-f $request_filename/index.html){rewrite (.*) $1/index.html break;}if (-f $request_filename/index.php){rewrite (.*) $1/index.php;}if (!-f $request_filename){rewrite (.*) /index.php;}} 重启ngi

Nginx下301重定向域名的方法小结_nginx

linux中nginx 301重定向跳转方法总结,有需要的朋友可参考一下. 第一种情况:访问aaaaaaa站定向到bbbbbbbbbbb站 复制代码 代码如下: server { server_naaaaaaame www.aaaaaaa.com ; rewrite ^(.*) http://www.bbbbbbbbbbb.com$1 permaaaaaaanent; } 第二种情况:不是访问aaaaaaa站的全部重定向到指定页面 复制代码 代码如下: server { server_naaaa

nginx下支持PATH_INFO的方法实例详解_nginx

本文实例分析了nginx下支持PATH_INFO的方法.分享给大家供大家参考,具体如下: 要想让nginx支持PATH_INFO,首先需要知道什么是pathinfo,为什么要用pathinfo? pathinfo不是nginx的功能,pathinfo是php的功能. php中有两个pathinfo,一个是环境变量$_SERVER['PATH_INFO']:另一个是pathinfo函数,pathinfo() 函数以数组的形式返回文件路径的信息;. nginx能做的只是对$_SERVER['PATH

nginx下php-fpm安装配置步骤详解

从PHP 5.4 RC2开始,php-fpm已经转正了,不再被php团队标注为EXPERIMENTAL(实验性的东西)[2-3]   . 相对Spawn-FCGI,PHP-FPM在CPU和内存方面的控制都更胜一筹,而且前者很容易崩溃,必须用crontab进行监控,而PHP-FPM则没有这种烦恼. PHP5.3.3已经集成php-fpm了,不再是第三方的包了.PHP-FPM提供了更好的PHP进程管理方式,可以有效控制内存和进程.可以平滑重载PHP配置,比spawn-fcgi具有更多优点,所以被PH

nginx下sysgurad模块防止高负载的解决方案

如果nginx被攻击或者访问量突然变大,nginx会因为负载变高或者内存不够用导致服务器宕机,最终导致站点无法访问.今天要谈到的解决方法来自淘宝开发的模块nginx-http-sysguard,主要用于当负载和内存达到一定的阀值之时,会执行相应的动作,比如直接返回503,504或者其他的.一直等到内存或者负载回到阀值的范围内,站点恢复可用.简单的说,这几个模块是让nginx有个缓冲时间,缓缓. 1. 安装nginx sysguard模块 1.1 下载文件  代码如下 复制代码   # wget

Nginx下ThinkPHP5的配置方法详解

本文主要给大家介绍了关于Nginx下ThinkPHP5的配置方法,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: url里public目录的隐藏 出于安全的考虑,TP5的入口文件改成放在public下了,因为这样的话能防止被恶意用户访问到"/thinkphp/"."/vendor/"等等这些目录下的文件.所以当你以之前的习惯将网站documentroot配置为项目根目录的时候就会需要在url后面加上/public/来访问.当然可能也会有童鞋把入口文件放

前两天有人问怎么取得一个目录下的文件,下面就是例子

<%@ Language=VBScript %><%'================================================================'函数名称:FileList'函数功能:列出目录下所有文件'主要参数说明:'1--FolderUrl     虚拟路径  不可为空'2----FileExName    文件扩展名'函数返回值:收文记录'=====================================================

在VS.NET下创建文件上载控件

创建|控件 在VS.NET下创建文件上载控件 前言:还记得在asp3.0里,我们为了上载文件可真是煞费苦心,写了一大堆的代码,可执行起来还是那么慢.但在asp.net里这个问题可以轻松搞定,这篇文章我们就探讨如何建立一个用户自定义的文件上载控件,并在我们的.ASPX程序中使用它.正文第一步:开发自定义文件上载控件打开VS.NET,建立一个工程:WebApp,我们使用WebApp项目来做我们的工作.在项目WebApp上点右健选择Add下的Add Web User Control-,这时我们就可以建

MFC教程(11)-- MFC下的文件类

文件操作的方法 使用Visual C++编程,有如下方法进行文件操作: (1)使用标准C运行库函数,包括fopen.fclose.fseek等. (2)使用Win16下的文件和目录操作函数,如lopen.lclose.lseek等.不过,在Win32下,这些函数主要是为了和Win16向后兼容. (3)使用Win32下的文件和目录操作函数,如CreateFile,CopyFile,DeleteFile,FindNextFile,等等. Win32下,打开和创建文件都由CreateFile完成,成功