首頁  >  問答  >  主體

(Linux + Nginx+ MySQL+ PHP+ Apache)post 出現500錯誤

伺服器安裝使用的是oneinstack一鍵安裝套件,lnmpa(Linux + Nginx+ MySQL+ PHP+ Apache)https://oneinstack.com/

程式運行的是discuz3.2, http://www.liuxuesheng8.com/

在發表新帖子,提交時,出現錯誤,提示:

This page isn’t working

bbs.liuxuesheng8.com is currently unable to handle this request.
HTTP ERROR 500

但是內容確實已經寫到資料庫裡,只是卡在上面圖片所示頁面,重新打開網站頁面,發表的新帖子已經提交,很是奇怪。
然後查看伺服器日誌,只是在access_log裡面出現,post 500錯誤,而在apache裡面和openresty的日誌裡面都沒有相應的錯誤日誌,這種情況下在哪裡查找500原因呢? ? ?

 - - [29/Apr/2017:18:27:03 +0800] "POST /forum.php?mod=post&action=newthread&fid=70&extra=&topicsubmit=yes HTTP/1.0" 500 -

phpcn_u1582phpcn_u15822736 天前1495

全部回覆(4)我來回復

  • ringa_lee

    ringa_lee2017-05-16 13:08:00

    顯然你這個錯誤是跟nginx相關的。

    nginx出現500,一般有下列幾種情況:

    1. 硬碟空間滿了(df -lh查看磁碟佔用情況,nginx所在目錄已佔用100%)。 nginx如果開啟了access log,在不需要的情況下,最好關閉access log。 access log會佔用大量硬碟空間。

    2. nginx設定檔錯誤
      設定rewrite的時候,有些規則處理不當會出現500錯誤,檢查下自己的rewrite規則。如果設定檔裡有些變數設定不當,也會出現500錯誤,例如引用了一個沒有值的變數。

    3. 並發問題,伺服器扛不住
      檔案開啟句柄太小,在做伺服器並發測試的時候,因為伺服器壓力大,我們經常看到一部分請求是500,那麼原因就是nginx可以使用的檔案句柄太小,每個請求都會佔用一個句柄。

    回覆
    0
  • 某草草

    某草草2017-05-16 13:08:00

    打開apache和php的錯誤輸出。

    回覆
    0
  • 天蓬老师

    天蓬老师2017-05-16 13:08:00

    apache, nginx, php錯誤日誌裡面,沒有與這個post500錯誤相關的,,,很奇怪

    3樓說的有可能

    因為配置了rewrite功能,有時候,打開帖子,rewrite不起效,還是動態網頁,再次點擊這個連結後,rewrite才起效。 。 。我猜想的原因是在post提交後,連結要rewrite,而此時伺服器不能rewrite,從而卡在了對應的頁面上,但資料是已經寫到了資料庫中的

    回覆
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-16 13:08:00

    php 程式碼可能有報錯,但又沒有配置錯誤輸出也會報500錯誤。可以試試看修改配置將php報錯以log的方式輸出。

    回覆
    0
  • 取消回覆