啓用REWRITE的僞靜態功能的時候,首頁能夠訪問,而訪問內頁的時候,就提示:「No input file specified.」php
緣由在於使用的PHP是fast_cgi模式,而在某些狀況下,不能正確識別path_info所形成的錯誤,Wordpress的僞靜態也有同樣的問題。code
Wordpress程序默認的.htaccess裏面的規則:ci
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php/$1 [L]
「No input file specified.」,是沒有獲得有效的文件路徑形成的。input
修改僞靜態規則,以下:it
RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?/$1 [L]
有沒有發現不一樣? ast
其實就是在正則結果「/$1」前面多加了一個「?」號,問題也就隨之解決了。 class