《PHP學習:php以fastCGI的方式運行時文件系統權限問題及解決方法》要點:
本文介紹了PHP學習:php以fastCGI的方式運行時文件系統權限問題及解決方法,希望對您有用。如果有疑問,可以聯系我們。
本日準備將一個php demo放在IIS下運行,網站在IIS下的配置是這樣的:PHP學習
應用程序池是集成模式下的.net framework 2.0(2.0或4.0沒什么關系,因為php以fastCGI的方式在跑), 應用程序池標識配置為IIS內置的NETWORKSERVICE, 使用的認證方式為匿名身份驗證.PHP學習
打開本地的網站,拜訪php頁面, 出現了500錯誤.PHP學習
PHP學習
好吧,是權限問題,最簡單的解決方法是把C:\Users\Administrator\PhpstormProjects\phpDemo的權限設成Everyone, 并允許完全控制:PHP學習
PHP學習
重新拜訪php頁面,成功了:PHP學習
PHP學習
上面的方法是夠簡單,但也太不平安了,平時本地搭個demo這樣做沒問題,真正上線的時候,這樣做遲早出問題的.PHP學習
于是重新設置,把該目錄下的只讀權限賦給NETWRORKSERVICE帳號再試一下PHP學習
PHP學習
不過問題還是沒有解決,拜訪的時候,出現了401錯誤PHP學習
PHP學習
錯誤信息中包括顯示登錄用戶為匿名,檢查了網站下的身份驗證(再點擊 匿名身份驗證->編輯),原來網站默認情況下,在登錄辦法為匿名時,使用的默認登錄用戶為IUSR(就是我們看到的匿名登錄用戶了)PHP學習
PHP學習
那么解決方法就是:PHP學習
1. 將IUSR設置為C:\Users\Administrator\PhpstormProjects\phpDemo的讀權限,類似之前對NETWORKSERVICE的設置.PHP學習
2. 或選擇使用應用程序池標識即可.PHP學習
經試驗,辦法1與2都成功.PHP學習
PHP學習
Note:NETWORKSERVICE在IIS7中隸屬于iis_iusers用戶組,之前對NETWORKSERVICE的設置也可以改為對iis_iusers的設置,同樣也可以解決問題,只是權限被進一步放寬了罷了.PHP學習
以上所述便是本文的全部內容了,希望大家能夠喜歡.PHP學習
《PHP學習:php以fastCGI的方式運行時文件系統權限問題及解決方法》是否對您有啟發,歡迎查看更多與《PHP學習:php以fastCGI的方式運行時文件系統權限問題及解決方法》相關教程,學精學透。維易PHP學院為您提供精彩教程。