down_dawn 2018-08-25 06:41 采纳率: 0%
浏览 2596
已结题

Nginx错误:页面出现500

在/etc/nginx/sites-enabled/设置
图片说明
然后使用 gunicorn --bind unix:/tmp/downdawn.com.socket myblog2.wsgi:application 运行
图片说明
Nginx日志出现连接错误
图片说明
输入域名出现Server Error (500)错误

  • 写回答

1条回答 默认 最新

  • qq_42887354 2018-08-25 13:49
    关注

    方法1 (永久调整)

    vi /etc/security/limits.conf

      在文件末加上:

    • soft nofile 8192
    • hard nofile 20480

      同时vi /etc/sysctl.conf末尾添加

    fs.file-max=8192

      重新启动,在使用ulimit -n查看的数已经是8192

      方法2 (临时用)
      直接在终端输入 ulimit -n 8192 按回车就ok了

      500 Internal Server Error错误补充:
      1、硬盘空间满了
      使用 df -k 查看硬盘空间是否满了。清理硬盘空间就可以解决500错误。nginx如果开启了access log,在不需要的情况下,最好关闭access log。access log会占用大量硬盘空间。
      2、nginx配置文件错误
      这里不是指语法错误,nginx如果配置文件有语法错误,启动的时候就会提示。当配置rewrite的时候,有些规则处理不当会出现500错误,请仔细检查自己的rewrite规则。如果配置文件里有些变量设置不当,也会出现500错误,比如引用了一个没有值的变量。
      3、如果上面的问题都不存在可能是模拟的并发数太多了,需要调整一下nginx.conf的并发设置数

      解决方法是:
      1 打开/etc/security/limits.conf文件,加上两句
      复制代码 代码如下:

    • soft nofile 65535
    • hard nofile 65535

      

      2 打开/etc/nginx/nginx.conf
      在worker_processes的下面增加一行
      复制代码 代码如下:

    worker_rlimit_nofile 65535;

      

      3 重新启动nginx,重新载入设置
      复制代码 代码如下:

    kill -9 ps -ef | grep php | grep -v grep | awk '{print $2}'
    /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 100 -u www-data -f /usr/bin/php-cgi
    killall -HUP nginx

      重启后再看nginx的错误日志,也没有发现500报错的情况了。

      4、有可能是数据库问题我的在nginx日志php日志都没有发现什么问题, 最后发现数据库访问不了,修正后问题解决.

    评论

报告相同问题?