IIS PHP環境Temp檔案夾的許可權問題引起的網站故障

來源:互聯網
上載者:User

前幾天不知為何,伺服器抽風嚴重…

伺服器非常慢,把WINDOWS2003重啟了,結果連不上伺服器。結果悲劇的去了機房。

尋找不出什麼問題,GHOST恢複系統。

幾天后回去又裝了個新站上去。再過兩天后,問題又出現了。

排查過程 檢查網頁伺服器,病毒,木馬?是否被入侵? 檢查資料庫伺服器,CPU,記憶體,網路一切正常,相應的連接埠也做了 IP 限制,只允許網頁伺服器訪問,查看記錄檔也沒有異常情況 檢查其餘的 .Net 網站,速度正常,沒有任何問題 檢查其餘的 Php 網站,架構方法一樣,也沒有任何問題(其餘的 php 網站訪問量相對於論壇來說小很多) 建立一個應用程式集區和網站應用程式程式,單人訪問速度沒有問題,說明 php程式沒有問題 檢查 Php 設定,發現沒有異常

綜合以上因素,所以基本可以確定問題主要來源於某個小問題,然後當訪問人數過多的時候就會體現出來。

那這個問題是什麼呢?

這時候想到去看一下 Php 記錄檔,開啟 c:\windows\temp 下的 Php 記錄檔,突然… 卡死了!

原來這個檔案已經達到了 800多 MB,難道是這個問題?

記得以前 IIS 下所有網站都出現了訪問緩慢的問題,然後發現 IIS 記錄檔達到了幾個 G,禁用 IIS 日誌後恢複正常。

難道也是這個問題?果斷禁用了 Php error log,並刪除了這個檔案後,略有改善,但是感覺還是沒解決…

正在彷徨時,忽然發現 Temp 檔案夾下有大量 sess_ 開頭的檔案!(之前開啟 Temp 檔案夾的時候就特別慢)數量竟然達到了 10W 個!總容量雖然只有 300MB ,但是佔用空間卻達到了 3G

看上去問題就出在這裡了!

關於 NTFS 下的檔案數量

NTFS 的優越性就不用說了,也早就是主流了…

NTFS 下的最大檔案數是 4,294,967,295個 (2^32 – 1)

但是為什麼僅僅 10W 個檔案就讓系統慢成這樣了呢?好吧,都說是理論值了… 不知道有沒有人測試過,但 10W 個的確非常多了…

解決方案

刪除這些檔案是必需的,這個過程很痛苦… 因為系統卡死了…

後藉助 del *.* /q /s 後才成功將其刪光

可是光刪也不是辦法,總有一天它還是會滿的…

這些檔案其實是 Php 儲存 Session 的檔案,一個 Session 對應了一個檔案,但是 Session 結束的時候不應該刪除嗎?

其實 Php 是會刪除的,但是由於許可權的問題,而導致它不能及時的刪除了,以上就是 IIS_USERS 組的預設許可權。

它並沒有刪除的許可權 !難怪沒辦法刪除!

知道這個後就簡單了,給 IIS_USERS 加上刪除的許可權就 OK 了!

修改好後,Temp 檔案夾下的檔案數一直維持在一個數量級,而沒有明顯的變化~

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.