转移了三个 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 }
~
1
sumuu 2016-12-04 21:06:48 +08:00
两个点.
1. 确认 php sock 文件路径是否存在 2. 去掉 PATH_INFO 看看! 应该是这个引起的 试试? |
2
nonozone OP @sumuu 查看了, sock 文件存在, PATH-INFO 删除了也不行。 同一批有三个 WP ,其他两个都没问题,就这个网站出现了这个邪门的问题...
|
3
Love4Taylor 2016-12-04 21:38:44 +08:00
同样遇到这种问题 不知道原因
service 启动 php-fpm 就会出现 直接 php-fpm -D 运行 一切正常了 |
4
skydiver 2016-12-04 21:56:02 +08:00 1
@nonozone
strace -p <php-fpm 的 pid> 看一下到底访问的哪个文件就知道错误是什么了 @Love4Taylor 你这个应该是 selinux 的问题之类,看一下 selinux troubleshooter 的提示吧 |
5
echo111222 2016-12-04 22:02:29 +08:00
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
|
6
nonozone OP @echo111222 $document_root$ 这个要改成自己的路径才行啊。
|
7
Love4Taylor 2016-12-04 22:06:42 +08:00
@skydiver 啊 谢谢
|
8
nonozone OP @skydiver 为啥我输入 strace 直接提示成 _strace 了... 然后我 install strace 之后
# strace -p 3051 Process 3051 attached accept(0, 变成这样,啥信息都没有? |
9
echo111222 2016-12-04 22:11:03 +08:00
@nonozone 你前面设置了 root 这里直接$document_root
|
10
echo111222 2016-12-04 22:12:50 +08:00
反正可以试一试。。错了没关系。。我之前也碰到 file not found 搜索下很多都这么说。。
如果还不行 注意文件目录读取权限。。。 |
11
nonozone OP 哎妈...终于搞定了...马大哈,创建网站根目录的时候,少了域名后缀,一直没发现...
|
12
baocaixiong 2016-12-05 10:06:48 +08:00
file not found 都是没有找到入口脚本文件而报的错误。所以要去找路径问题
|
13
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 |
14
nonozone OP @kemikemian 哦,这个仅仅是复制过来的问题。
|
17
Wakeupzombie 2016-12-05 23:13:17 +08:00
php 配置文件里的 include_path 设置问题?
|