标签:list res rip 意思 nts 关闭 apple inux intel
1.1.1 通过yum安装Nginx和php,更改了Nginx里面fastcgi_pass后的地址php不能正常请求nginx的location里面的配置如下
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 10.0.0.41:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
php-fpm配置文件更改的位置为:
listen = 10.0.0.41:9000
这个时候在/usr/share/nginx/html下面写了一个php的测试页
[root@nginx01-41 ~]# cat /usr/share/nginx/html/test.php
<?php
phpinfo();
?>
然后在浏览器里面访问10.0.0.41/test.php
1.1.1.2 剖析与解决:
然后分析错误502可能的原因:这个里面的bad geteway不是字面上的意思,这个地方基本上都是php-fpm请求的时候不正常,然后就开始着后段的错误
查看访问日志,和错误日志
访问日志:
10.0.0.1 - - [30/Aug/2018:01:46:02 -0400] "GET /test.php HTTP/1.1" 200 95137 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
10.0.0.1 - - [30/Aug/2018:02:18:05 -0400] "GET /test.php HTTP/1.1" 502 575 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
错误日志:
2018/08/30 02:18:05 [error] 9609#9609: *4 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 10.0.0.1, server: localhost, request: "GET /test.php HTTP/1.1", upstream: "fastcgi://10.0.0.41:9000", host: "10.0.0.41"
意思就是请求这个主机的10.0.0.41:9000端口失败
然后就去观看防火墙和selinux是否关闭,9000端口是否正常,发现防火墙和selinux都是关闭的,9000端口也正常监听。
这个时候就想肯定是php-fpm转发又问题,就开始去找配置文件,看看是不是监听的有问题
vim /etc/php-fpm.d/www.conf
在里面搜索listen监听相关的内容,找到一个listen.allowed_clients 的语句
listen.allowed_clients = 127.0.0.1,看到这的时候我就明白可能是php配置文件里面我们要允许clients可以通过这个地址访问
更改为listen.allowed_clients = 10.0.0.41
保存重启php服务后测试发现正常。问题得以解决。
Nginx+php更改了fastcgi_pass后面的地址php不能正常请求
标签:list res rip 意思 nts 关闭 apple inux intel
原文地址:http://blog.51cto.com/13447608/2166462