原理:php
任何對.php文件的請求,都簡單地交給php-cgi去處理,但沒有驗證該php文件是否存在。nginx
PHP文件不存在,沒辦法返回普通的404錯誤,它返回 一個404,並帶上一句」No input file specified」spa
另外,還可能跟 路徑或者 權限有關係,或者SCRIPT_FILENAME 變量沒有被正確的設置(這在nginx是最多見的緣由)。rest
解決辦法:日誌
1 打開文件: usr/local/php/etc/php.ini,修改如下配置code
2 修改文件權限blog
# cd /home/wwwroot # chown -R www:www ./* # chmod -R 755 ./* # lnmp restart
當執行的時候。若是個別項目裏邊有 .user.ini 文件。會提示遞歸
chown: changing ownership of ‘./www.test.com/.user.ini’: Operation not permitted
這時候須要 進入這個目錄 執行ip
chattr -i .user.ini
而後 進入到wwwroot目錄 , 再執行權限命令,最後別忘了,進入www.test.com 目錄,執行ci
chattr +i .user.ini
最後重啓
lnmp restart
搞定!
補充:Linux chattr 命令,用於改變文件屬性。
這項指令可改變存放在ext2文件系統上的文件或目錄屬性,這些屬性共有如下8種模式:
chattr [-RV][-v<版本編號>][+/-/=<屬性>][文件或目錄...]
用chattr命令防止系統中某個關鍵文件被修改:
chattr +i /etc/resolv.conf
lsattr /etc/resolv.conf
會顯示以下屬性
----i-------- /etc/resolv.conf
讓某個文件只能往裏面追加數據,但不能刪除,適用於各類日誌文件:
chattr +a /var/log/messages