• LNMP时,出现502 Bad Gateway的错误提示


          因为工作需要,要在ubuntu中安装LNMP环境,在这里,php是最新版本php7.1。一切都进展得很顺利,安装完成后,在浏览器中输入http://127.0.0.1/info.php,出现了502 Bad Gateway的错误提示。


    打开/var/log/nginx 下的error.log,发现提示为:2017/07/15 14:46:47 [error] 1228#0: *8 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /info.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "127.0.0.1"。

    进入/etc/php/7.1/fpm/pool.d下,打开www.conf文件,找到listen这一行,发现listen = /run/php/php7.1-fpm.sock。(我的php7.1-fpm.sock 在/var/run/php/php7.1-fpm.sock下,于是改成了/var/run/php/php7.1-fpm.sock)


    进入/etc/nginx/sites-available目录下,打开default文件,里面的location配置为:

     location ~ .php$ {
            #       fastcgi_split_path_info ^(.+.php)(/.+)$;
            #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
            #
            #       # With php5-cgi alone:
                   fastcgi_pass 127.0.0.1:9000;
            #       # With php5-fpm:
            #         fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
            #         include fastcgi_params;
            #         fastcgi_index index.php;
             #       include fastcgi_params;
            #}


            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /.ht {
            #       deny all;
            }

    很明显,default文件中的l监听方式和www.conf文件中的不一样,因此我改为:

     location ~ .php$ {
            #       fastcgi_split_path_info ^(.+.php)(/.+)$;
            #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
            #
            #       # With php5-cgi alone:
            #       fastcgi_pass 127.0.0.1:9000;
            #       # With php5-fpm:
                    fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
                    fastcgi_split_path_info ^(.+.php)(/.*)$;
                    include fastcgi_params;
                    fastcgi_index index.php;
                    include fastcgi_params;
            #}


            # deny access to .htaccess files, if Apache's document root
            # concurs with nginx's one
            #
            #location ~ /.ht {
            #       deny all;
            }


    最终default文件如下:


    保存这个配置后,重启Nginx ;service nginx restart,然后刷新浏览器,最后的结果展示如下:


    问题得到了解决!

  • 相关阅读:
    数据库连接池的作用及c3p0的详解(转载他人的--合理掌握学习方式)
    JAVA读取propertise文件内容两种方式(起始还是有很多种的)
    servlet--生命周期
    UML学习(三)-----序列图
    UML学习(一)-----用例图
    UML学习(二)-----类图
    Java静态域与静态方法
    spring boot启动原理三(结合web容器,如:tomcat(默认),jetty)
    spring源码相关第五篇----------------------------spring tx实现原理源码解读
    spring源码相关第四篇----------------------------spring aop实现原理源码解读
  • 原文地址:https://www.cnblogs.com/cmderq/p/9130835.html
Copyright © 2020-2023  润新知