502,501报错nginx错误笔记(win10,nginx 不支持php多线程导致本地服务CURL请求本地另一个服务API返回超时/或无返回,tp如何忽略index.php)

由于项目需要微服务,本地也就产生了服务访问服务之间的需求。

本地跨域访问

以下配置文件解决问题:

 

 

错误二:file not found

大概了为nginx配置文件错误

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

解决办法:注释掉原来的fastcgi_param 

问题三:thinkphp访问路径如何忽略index.php(伪静态)   :  

#nginx配置文件里
location / {
            index  index.html index.htm index.php;
            #autoindex  on;
            if (!-e $request_filename) {
                rewrite ^/(.*)$ /index.php/$1;
            }
        }

 

问题四:PHP 项目 该网页无法正常运作情况,但没有报错code 500

修改php.ini可以看到错误信息    display_errors = On     display_startup_errors = On

 

问题五file_put_contents (/PHP/admin/tp/runtime/temp/71dafaa2a0ea0d586666de9d67f301a7.php) failed to open stream: Permission denied

解决方法:chmod -R 777 runtime

 

问题六:将PHP项目部署到新服务器上的PHP环境时,发生报错:scandir()  symlink() has been disabled for security reasons。

解决:只需要去PHP安装目录找到php.ini,ctrl+F搜索“disable_functions”,找到scandir() 删除掉就可以了

问题七:TP5报错Fatal error: require(): Failed opening required '/home/www/xx/public/../thinkphp/start.php

解决:   #fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; (注释这行就可以了)

 

问题八:nginx报错502

错误截图:

 

502报错的情况一般都为nginx没办法解析php文件,大概率是php那边的问题,首先排查php是否能正常启动,查看9000端口

 

使用命令:netstat -lntp

 

很显然9000端口未正常启动,正常的如下:

查看 php-fpm.conf文件:

查看后发现文件两处错误:

1.首先#不能为php-fpm注释应该使用;

2.listen. allowed clients =127.0.0.1 #可以向这个 PHP-FPM进程池发送请求的IP地址(一个或多个)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
"nginx 502 Bad Gateway"错误通常表示前端的 Nginx 服务器无法连接到后端服务器或者无法从后端服务器获取有效的响应。这个错误可能由多种原因引起,以下是一些常见的原因和相应的解决办法: 1. 后端服务器故障:检查后端服务器是否正常运行,并且没有出现任何故障或错误。您可以通过查看后端服务器的日志来确认是否有异常。 2. 后端服务超时:如果后端服务器处理请求的时间超过了 Nginx超时设置,Nginx 可能会返回 502 错误。您可以尝试增加 Nginx 配置文件中的超时时间来解决这个问题。 3. 后端服务器连接问题:确保 Nginx 配置文件中指定的后端服务器地址和端口号是正确的。如果后端服务器在其他地址或端口上运行,请确保配置文件中指定了正确的信息。 4. 防火墙或代理问题:检查防火墙或代理是否阻止 Nginx 与后端服务器之间的通信。确保防火墙或代理允许来自 Nginx请求通过。 5. 缓存问题:尝试清除 Nginx 的缓存并重新加载页面。有时候,过期或损坏的缓存可能导致 502 错误。 6. 内存不足:如果后端服务器的内存不足,可能会导致处理请求时出现错误。检查服务器的内存使用情况并尝试增加内存。 7. Nginx 配置错误:检查 Nginx 配置文件是否正确。特别注意代理设置、上游服务器的配置和负载均衡配置是否正确。 8. 重启 Nginx 服务器:有时候,重启 Nginx 服务器可以解决临时的网络或配置问题。尝试重启 Nginx 服务器来看看问题是否得到解决。 如果以上方法无法解决问题,建议您查看 Nginx 和后端服务器的详细日志以获取更多信息。此外,您还可以在搜索引擎中搜索特定于您的环境和配置的解决方案,以获取更多可能适用的建议。 请注意,以上只是一些常见的解决办法,具体解决方案可能因您的环境和配置而有所不同。如果问题仍然存在,您可能需要咨询更专业的技术支持或论坛以获取进一步的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值