運行PHP出現 No input file specified 錯誤的解決辦法
APACHE伺服器出現No input file specified.的完美解決專案
啟用REWRITE的偽靜態功能的時候,首頁可以訪問,而訪問內頁的時候,就提示:“No input file specified.”
原因在於使用的PHP是fast_cgi模式,而在某些情況下,不能正確識別path_info所造成的錯誤,Wordpress的偽靜態也有一樣的問題。
WordPress程式預設的.htaccess裡面的規則:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1 [L]
“No input file specified.”,是沒有得到有效的檔案路徑造成的。
修改偽靜態規則,如下:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?/$1 [L]
有沒有發現不同?
其實就是在正則結果“/$1”前面多加了一個“?”號,問題也就隨之解決了。