nginx+php 出现404错误解决方法

2023-11-06

http://www.51ou.com/browse/linuxwt/32263.html


错误日志

装好 nginx-1.0.5 与 php-5.3.6(php-fpm) 迫不及待的测试 info.php(<?php phpinfo(); ?>),但是只返回了空白页,什么也没有输出,以下是错误日志。


192.168.6.82 - - [01/Aug/2011:13:54:20 +0800] "GET /info.php HTTP/1.1" 404 5 "-" "Mozilla/5.0 (X11; U; Linux x86_64; zh-CN; rv:1.9.2.9) Gecko/20100827 Red Hat/3.6.9-2.el6 Firefox/3.6.9"


192.168.6.82 - - [01/Aug/2011:14:57:30 +0800] "HEAD /info.php HTTP/1.1" 404 0 "-" "curl/7.19.7(x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.12.6.2 zlib/1.2.3 libidn/1.18 libssh2/1.2.2"


192.168.6.82 - - [01/Aug/2011:13:58:57 +0800] "GET /index.html HTTP/1.1" 200 151 "-" "Mozilla/5.0(X11; U; Linux x86_64; zh-CN; rv:1.9.2.9) Gecko/20100827 Red Hat/3.6.9-2.el6 Firefox/3.6.9"


分析

1 使用firefox 浏览 测试页返回空白页,什么都没有。

nginx+php 出现404错误解决方法


2 使用curl  测试 测试页提示404没找到。

# curl -I 
HTTP/1.1 404 Not Found
Server: nginx/1.0.5
Date: Mon, 01 Aug 2011 06:54:46 GMT
Content-Type: text/html
Connection: keep-alive
X-Powered-By: PHP/5.3.6


3 使用firefox  浏览

nginx+php 出现404错误解决方法

4 静态页面的index.html 是可以访问的,而动态的info.php确是404 找不到,为什么会这样那?index.html 文件目录是nginx默认安装目录 /usr/local/nginx/html,而

info.php 我把它放到了 /data/web 下 是不是这个原因 ?看下nginx.conf配置文档

server {
       listen       80;
       server_name  localhost;

       location / {
           index  index.html index.htm;
           root   html;
       }


       error_page   500 502 503 504  /50x.html;
       location = /50x.html {
           root   html;

       }

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


过程

尝试更改下

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

nginx -t && nginx -s reload

测试访问仍然不行

google

再次更改

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

nginx -t && nginx -s reload

测试一下

[root@me zongm]# curl -I 
HTTP/1.1 200 OK
Server: nginx/1.0.5
Date: Mon, 01 Aug 2011 08:34:17 GMT
Content-Type: text/html
Connection: keep-alive
X-Powered-By: PHP/5.3.6

firefox 测试ok!

nginx+php 出现404错误解决方法


总结

问题还是在配置文档上,估计不少朋友会遇到php 输出空白页什么也不显示,

主要是nginx 的 root 指令 或者 fastcgi_param 指令 配置出了问题详细的文档请参考这里!

再看下nginx.conf配置文档,

 server{
       location / {
           index  index.html index.htm;
root   html;
       }

       location = /50x.html {
root   html

}

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

1 发现除了location ~ \.php$以外,每个location 下都有个root 指令用于载入web文件根目录,默认都是 /usr/local/nginx/html,第一个错误是没有在 location ~ \.php$ 添加web文件根目录

root  /data/web;

或者在server 字段下加入一个 root 例如

server {

.........

root  /data/web;

.........

}


2 参考这里知道了 PHP使用fastcgi_param 指令的 SCRIPT_FILENAME参数决定需要执行哪个脚本,所以这个位置也要改成

fastcgi_param  SCRIPT_FILENAME  /data/web$fastcgi_script_name;


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

nginx+php 出现404错误解决方法 的相关文章

随机推荐

  • 疯狂Java讲义笔记汇总

    目录 一 基础类型 二 流程控制与数组 三 面向对象 四 基础类库 五 集合 六 泛型 七 异常 八 数据库 九 注释 十 输入输出 十一 网络 十二 类加载机制 十三 多线程 面向对象三大特性 封装 继承 多态 一 基础类型 char i
  • 增益带宽积(GBWP、GBW、GBP、GB)

    增益带宽积 gain bandwidth product 放大器的增益带宽积是放大器带宽和带宽增益的乘积 1 释义 增益 表示放大器功率放大倍数 以输出功率同输入功率比值的常用对数表示 单位为分贝 dB 带宽 是指在固定的的时间可传输的资料
  • 【C语言进阶】习题练习4

    目录 习题1 习题2 求Sn a aa aaa aaaa aaaaa的前5项之和 其中a是一个数字 习题3 写一个函数打印arr数组的内容 不使用数组下标 使用指针 arr是一个整形一维数组 习题4 求出0 100000之间的所有 水仙花数
  • 查看Oracle数据库sid和用户名

    select name from v database 查看数据库名 select instance name from v instance 查看sid select from dba users 查看数据库里面所有用户 前提是有dba权
  • openGL细分着色器详解

    openGL系列文章目录 文章目录 openGL系列文章目录 前言 一 细分曲面着色器 1 细分曲面Patch 例子 1 c 主程序 2 片元着色器 3 曲面细分控制着色器 4 曲面细分评估着色器 运行结果 源码下载 前言 术语Tessel
  • 免费小程序商城搭建之b2b2c o2o 多商家入驻商城 直播带货商城 电子商务b2b2c o2o 多商家入驻商城 直播带货商城 电子商务

    1 涉及平台 平台管理 商家端 PC端 手机端 买家平台 H5 公众号 小程序 APP端 IOS Android 微服务平台 业务服务 2 核心架构 Spring Cloud Spring Boot Mybatis Redis 3 前端框架
  • java设计模式(二十三)访问者模式

    目录 定义 模式结构 角色职责 代码实现 适用场景 优缺点 定义 访问者模式是一种行为型模式 它允许你定义一个作用于某个对象结构中的各个元素的操作 而同时又不改变这些元素的类 该模式的核心思想是将数据结构与数据操作分离 从而可以在不改变数据
  • IOS_Swift_深入理解闭包 对比懒加载和普通赋值的区别

    定义一个字符串的变量的方法 直接赋值 var str JobDeer 闭包方式 var str String return JobDeer 简化闭包 省略了等号和括号 var str String return JobDeer 闭包中可以定
  • citrix协议ICA技术原理

    转载自 http www zrss com cn article 110 1 html Citrix交付中心解决方案的核心是虚拟化技术 虚拟化计算的核心是ICA协议 ICA协议连接了运行在平台上的应用客户端运行环境和远端终端设备 通过ICA
  • Flutter 单线程模型保证UI运行流畅

    Flutter 框架出色的渲染和交互能力 支撑起这些复杂的能力背后 实际上是基于单线程模型的 Dart 那么 与原生 Android 和 iOS 的多线程机制相比 单线程的 Dart 如何从语言设计层面和代码运行机制上保证 Flutter
  • JUC并发编程之AQS原理

    1 AQS 原理 1 1 概述 全称是 AbstractQueuedSynchronizer 是阻塞式锁和相关的同步器工具的框架 特点 用 state 属性来表示资源的状态 分独占模式和共享模式 子类需要定义如何维护这个生态 控制如何获取锁
  • PCL点云焊点提取

    滚回来更新一篇文章 和各位交流一下 待处理点云 数量级 百万 类型 零部件 描述 弯曲表面上有一些凸起在上面 需要提取凸起和平面接触的一圈点云 作为焊接的加工点 参考 https zhuanlan zhihu com p 32111069
  • Vue监听滚动实现导航栏锚点定位

    父级 div div div div div div div div div 子组件 ul class compreDiagnosisInfoUl li class active li ul div
  • 变分自编码器 (Variational Autoencoders, VAEs)

    Contents Dimensionality reduction PCA and autoencoders Dimensionality reduction Principal components analysis PCA Autoen
  • VMware Workstation克隆虚拟机(CentOS系统)

    问题 VMware Workstation克隆虚拟机 CentOS系统 下面具体说明下 如何在VMware Workstation中克隆一台已有的虚拟机 方法 如下图所示 要克隆名叫 CentOS7 base的一台虚拟 右键该虚拟机选择 管
  • userManager.do不可用问题

    dao层和业务层都可以成功添加 但在页面上调用Servlet显示不可用 原因 userAdd jsp被放到了web的子目录usermanager下面了 所以定位不到servlet资源了 修改 userManager do 成功解决问题
  • 怎么查EI论文的检索号

    论文题目 Study on joint probability density algorithm in multi sensor data fusion 那位热心人帮忙查一下检索号是多少啊 去http www engineeringvil
  • OpenCV调用cv2.imshow显示错误 “The function is not implemented. Rebuild the library with Windows”的解决办法

    在Windows环境下 已经安装了opencv python 读取图片 处理都没有问题 唯独显示就会出错 说 The function is not implemented Rebuild the library with Windows
  • Android 蓝牙开发(六)hfp连接

    转载请注明出处 http blog csdn net vnanyesheshou article details 71106622 本文已授权微信公众号 fanfan程序媛 独家发布 扫一扫文章底部的二维码或在微信搜索 fanfan程序媛
  • nginx+php 出现404错误解决方法

    http www 51ou com browse linuxwt 32263 html 错误日志 装好 nginx 1 0 5 与 php 5 3 6 php fpm 迫不及待的测试 info php 但是只返回了空白页 什么也没有输出 以