欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

nginx提示:500 Internal Server Error錯(cuò)誤的解決方法

 更新時(shí)間:2013年04月17日 19:15:07   作者:  
本文章來(lái)給大家總結(jié)了大量關(guān)于導(dǎo)致nginx中提示500 Internal Server Error錯(cuò)誤的原因總結(jié)與解決方法分析有需要了解的朋友可參考參考

現(xiàn)在越來(lái)越多的站點(diǎn)開(kāi)始用 Nginx ,("engine x") 是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3/SMTP 代理服務(wù)器。 Nginx 是由 Igor Sysoev 為俄羅斯訪問(wèn)量第二的 Rambler.ru 站點(diǎn)開(kāi)發(fā)的,它已經(jīng)在該站點(diǎn)運(yùn)行超過(guò)兩年半了。Igor 將源代碼以類BSD許可證的形式發(fā)布。

在高并發(fā)連接的情況下,Nginx是Apache服務(wù)器不錯(cuò)的替代品。Nginx同時(shí)也可以作為7層負(fù)載均衡服務(wù)器來(lái)使用。根據(jù)測(cè)試結(jié)果,Nginx 0.6.31 + PHP 5.2.6 (FastCGI) 可以承受3萬(wàn)以上的并發(fā)連接數(shù),相當(dāng)于同等環(huán)境下Apache的10倍。

但很多人用 Nginx 的時(shí)候都會(huì)出現(xiàn) 500 錯(cuò)誤,根據(jù)我使用的情況來(lái)看,很大一部分原因是 因?yàn)槲募蜷_(kāi)句柄太小有關(guān)。

在linux 下 使用這個(gè)命令增加進(jìn)程打開(kāi)的文件句柄。
ulimit -SHn 51200
默認(rèn)只用1000 當(dāng)鏈接數(shù)小的時(shí)候看不出來(lái),使用這種處理方法可以有效防止500錯(cuò)誤出現(xiàn)。
今天訪問(wèn)網(wǎng)站的時(shí)候,偶爾會(huì)遇上500 Internal Server Error的錯(cuò)誤提示頁(yè)面.
查了相關(guān)資料認(rèn)為是訪問(wèn)過(guò)大,系統(tǒng)內(nèi)核進(jìn)程受限才出現(xiàn)的.

答案如下:

$ ulimit -n
11095

程序限制只能打開(kāi)11095個(gè)文件,ulimit命令是設(shè)置當(dāng)前用戶一個(gè)進(jìn)程可擁有的文件描述符的數(shù)量.
看來(lái)是模擬的并發(fā)數(shù)太多了,需要調(diào)整一下nginx.conf的并發(fā)設(shè)置數(shù),(我的配置主機(jī)的內(nèi)存2G,CPU為2.8G,)

復(fù)制代碼 代碼如下:

vi /etc/nginx/nginx.conf
events {
worker_connections 1024;
}


調(diào)整為
復(fù)制代碼 代碼如下:

events {
worker_connections 10240;
}


還是會(huì)出現(xiàn)上面問(wèn)題,使用
[root@qimutian nginx]# cat /proc/sys/fs/file-max
8192
文件系統(tǒng)最大可打開(kāi)文件數(shù)
[root@qimutian nginx]# ulimit -n
1024
程序限制只能打開(kāi)1024個(gè)文件
使用[root@qimutian nginx]# ulimit -n 8192調(diào)整一下
或者永久調(diào)整打開(kāi)文件數(shù) 可在啟動(dòng)文件/etc/rc.d/rc.local末尾添加(在/etc/sysctl.conf末尾添加fs.file-max=8192)
ulimit -n 8192
調(diào)整CentOS5文件打開(kāi)數(shù)
使用ulimit -a一下,發(fā)現(xiàn)OPEN FILES不能默認(rèn)超過(guò)1024,昨天的在進(jìn)行壓力測(cè)試時(shí),出現(xiàn)500錯(cuò)誤,具體請(qǐng)查看
nginx出現(xiàn) 500 Internal Server Error
早上起來(lái)看一下,發(fā)現(xiàn)原來(lái)是通過(guò)如下方式調(diào)整
方法1 (永久調(diào)整)

vi /etc/security/limits.conf

在文件末加上:

* soft nofile 8192
* hard nofile 20480

同時(shí)vi /etc/sysctl.conf末尾添加
fs.file-max=8192
重新啟動(dòng),在使用ulimit -n查看的數(shù)已經(jīng)是8192

方法2 (臨時(shí)用)

直接在終端輸入 ulimit -n 8192 按回車就ok了

500 Internal Server Error錯(cuò)誤補(bǔ)充:

1、硬盤空間滿了

使用 df -k 查看硬盤空間是否滿了。清理硬盤空間就可以解決500錯(cuò)誤。nginx如果開(kāi)啟了access log,在不需要的情況下,最好關(guān)閉access log。access log會(huì)占用大量硬盤空間。

2、nginx配置文件錯(cuò)誤

這里不是指語(yǔ)法錯(cuò)誤,nginx如果配置文件有語(yǔ)法錯(cuò)誤,啟動(dòng)的時(shí)候就會(huì)提示。當(dāng)配置rewrite的時(shí)候,有些規(guī)則處理不當(dāng)會(huì)出現(xiàn)500錯(cuò)誤,請(qǐng)仔細(xì)檢查自己的rewrite規(guī)則。如果配置文件里有些變量設(shè)置不當(dāng),也會(huì)出現(xiàn)500錯(cuò)誤,比如引用了一個(gè)沒(méi)有值的變量。

3、如果上面的問(wèn)題都不存在可能是模擬的并發(fā)數(shù)太多了,需要調(diào)整一下nginx.conf的并發(fā)設(shè)置數(shù)

解決方法是:

1 打開(kāi)/etc/security/limits.conf文件,加上兩句

復(fù)制代碼 代碼如下:

* soft nofile 65535
* hard nofile 65535


2 打開(kāi)/etc/nginx/nginx.conf
在worker_processes的下面增加一行

復(fù)制代碼 代碼如下:
worker_rlimit_nofile 65535;


3 重新啟動(dòng)nginx,重新載入設(shè)置

復(fù)制代碼 代碼如下:
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的錯(cuò)誤日志,也沒(méi)有發(fā)現(xiàn)500報(bào)錯(cuò)的情況了。


4、有可能是數(shù)據(jù)庫(kù)問(wèn)題我的在nginx日志php日志都沒(méi)有發(fā)現(xiàn)什么問(wèn)題, 最后發(fā)現(xiàn)數(shù)據(jù)庫(kù)訪問(wèn)不了,修正后問(wèn)題解決.

相關(guān)文章

  • nginx日常維護(hù)常用命令

    nginx日常維護(hù)常用命令

    這篇文章主要介紹了nginx日常維護(hù)如nginx啟動(dòng)、重啟、關(guān)閉等常用命令,需要的朋友可以參考下
    2014-03-03
  • 添加Nginx代理配置只允許內(nèi)部IP訪問(wèn)的實(shí)現(xiàn)方法

    添加Nginx代理配置只允許內(nèi)部IP訪問(wèn)的實(shí)現(xiàn)方法

    在本篇文章里小編給大家整理的是一篇關(guān)于添加Nginx代理配置只允許內(nèi)部IP訪問(wèn)的實(shí)現(xiàn)方法的文章,有需要的朋友們可以學(xué)習(xí)下。
    2019-10-10
  • 開(kāi)啟Nginx時(shí)端口被占用提示:Address already in use

    開(kāi)啟Nginx時(shí)端口被占用提示:Address already in use

    這篇文章主要介紹了開(kāi)啟Nginx時(shí)端口被占用提示:Address already in use的解決方法,文中通過(guò)兩種方法給大家介紹了Nginx的啟動(dòng)、停止與重啟 的操作方法 ,需要的朋友可以參考下
    2018-09-09
  • 反向代理緩存的詳細(xì)介紹

    反向代理緩存的詳細(xì)介紹

    這篇文章主要介紹了反向代理緩存的詳細(xì)介紹的相關(guān)資料,希望通過(guò)本文大家能夠掌握應(yīng)用反向代理緩存的使用方法,需要的朋友可以參考下
    2017-09-09
  • nginx動(dòng)態(tài)添加訪問(wèn)白名單的方法

    nginx動(dòng)態(tài)添加訪問(wèn)白名單的方法

    本篇文章主要介紹了nginx動(dòng)態(tài)添加訪問(wèn)白名單的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • Nexus使用nginx代理實(shí)現(xiàn)支持HTTPS協(xié)議

    Nexus使用nginx代理實(shí)現(xiàn)支持HTTPS協(xié)議

    這篇文章主要介紹了Nexus使用nginx代理實(shí)現(xiàn)支持HTTPS協(xié)議,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Nginx中break與last的區(qū)別詳析

    Nginx中break與last的區(qū)別詳析

    這篇文章主要給大家介紹了關(guān)于Nginx中break與last區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • nginx代理postgresql的實(shí)現(xiàn)示例

    nginx代理postgresql的實(shí)現(xiàn)示例

    本文主要介紹了nginx代理postgresql的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • Linux安裝Nginx步驟詳解

    Linux安裝Nginx步驟詳解

    這篇文章主要介紹了Linux安裝Nginx步驟,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Nginx中keepalive配置小結(jié)

    Nginx中keepalive配置小結(jié)

    本文介紹了Nginx keepalive配置的概念和作用,闡述了keepalive連接的基本原理和優(yōu)勢(shì),并給出了一些常用的配置示例,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-09-09

最新評(píng)論