nginx+php7.0 提示 File not found.还有可能是哪里的问题?

2016-12-04 20:30:48 +08:00
 nonozone

转移了三个 WP 到新的服务器,另外两个都没事,有个网站访问提示 File not found.搜了一圈,感觉我的配置也没啥问题啊,想问下出现这种情况还有可能是哪里的问题?

  1 
  2 server {
  3   listen 80;
  4   server_name www.abc.com abc.com;
  5   root /srv/www/abc.com/public_html;
  6   access_log /var/log/www/abc.com.access.log;
  7   error_log /var/log/www/abc.com.error.log;
  8   location / {
  9     index index.php index.html index.htm;
 10     if (-f $request_filename) {
 11       expires 30d;
 12       break;
 13     }
 14     if (!-e $request_filename) {
 15       rewrite ^(.+)$ /index.php?q=$1 last;
 16     }
 17   }
 18   location /nginx-status {
 19      stub_status on;
 20      access_log  off;
 21   }
 22   location ~ \.php$ {
 23     fastcgi_pass unix:/var/run/php/php7.0-fpm.abc.com.sock;
 24     fastcgi_index  index.php;
 25     fastcgi_param  SCRIPT_FILENAME    /srv/www/abc.com/public_html$fastcgi_script_na    me;
 26     fastcgi_param PATH_INFO               $fastcgi_script_name;
 27     include fastcgi_params;
 28   }
 29 }
~      
5832 次点击
所在节点    NGINX
17 条回复
sumuu
2016-12-04 21:06:48 +08:00
两个点.
1. 确认 php sock 文件路径是否存在
2. 去掉 PATH_INFO 看看! 应该是这个引起的

试试?
nonozone
2016-12-04 21:21:42 +08:00
@sumuu 查看了, sock 文件存在, PATH-INFO 删除了也不行。 同一批有三个 WP ,其他两个都没问题,就这个网站出现了这个邪门的问题...
Love4Taylor
2016-12-04 21:38:44 +08:00
同样遇到这种问题 不知道原因
service 启动 php-fpm 就会出现
直接 php-fpm -D 运行 一切正常了
skydiver
2016-12-04 21:56:02 +08:00
@nonozone
strace -p <php-fpm 的 pid> 看一下到底访问的哪个文件就知道错误是什么了

@Love4Taylor
你这个应该是 selinux 的问题之类,看一下 selinux troubleshooter 的提示吧
echo111222
2016-12-04 22:02:29 +08:00
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
nonozone
2016-12-04 22:05:26 +08:00
@echo111222 $document_root$ 这个要改成自己的路径才行啊。
Love4Taylor
2016-12-04 22:06:42 +08:00
@skydiver 啊 谢谢
nonozone
2016-12-04 22:09:43 +08:00
@skydiver 为啥我输入 strace 直接提示成 _strace 了... 然后我 install strace 之后
# strace -p 3051
Process 3051 attached
accept(0,

变成这样,啥信息都没有?
echo111222
2016-12-04 22:11:03 +08:00
@nonozone 你前面设置了  root 这里直接$document_root
echo111222
2016-12-04 22:12:50 +08:00
反正可以试一试。。错了没关系。。我之前也碰到 file not found 搜索下很多都这么说。。
如果还不行 注意文件目录读取权限。。。
nonozone
2016-12-04 22:16:08 +08:00
哎妈...终于搞定了...马大哈,创建网站根目录的时候,少了域名后缀,一直没发现...
baocaixiong
2016-12-05 10:06:48 +08:00
file not found 都是没有找到入口脚本文件而报的错误。所以要去找路径问题
kemikemian
2016-12-05 11:51:58 +08:00
fastcgi_param SCRIPT_FILENAME /srv/www/abc.com/public_html$fastcgi_script_na me;
是你复制问题吗,为什么后面的 name 分开了 na me
nonozone
2016-12-05 11:55:50 +08:00
@kemikemian 哦,这个仅仅是复制过来的问题。
shibingsw
2016-12-05 13:26:46 +08:00
@skydiver xiao zong 说的都对
shibingsw
2016-12-05 13:27:37 +08:00
@nonozone 这个时候你得请求一下你那个页面啊
Wakeupzombie
2016-12-05 23:13:17 +08:00
php 配置文件里的 include_path 设置问题?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/325244

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX