2
我有一個網站使用mod_rewrite的漂亮的URL。我有兩個主要的網址:Apache忽略htaccess
example.com/id
example.com/generate/id
這htaccess文件:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^generate/([a-z0-9_-]+)$ generate.php?id=$1 [L,NC]
RewriteRule ^([a-z0-9_-]+)$ contact.php?id=$1 [L,NC]
第一個URL工作正常,但第二個不是。 Apache顯示404錯誤,我認爲這是因爲它正在尋找文件夾「生成」,這不存在,它無法在文檔根目錄中找到htaccess。
謝謝
你有在.htaccess任何其他'Options'指令?在任何情況下 - 將'Options + FollowSymLinks'改爲'Options + FollowSymLinks -MultiViews'並確保在該行之後沒有'Options + MultiViews'或類似的。現在再試一次有問題的網址。如果仍然沒有 - 請參閱是否可以啓用重寫調試(將「RewriteLogLevel 9」放入服務器配置/虛擬主機上下文中)並檢查重寫日誌以獲取確切的詳細信息。 – LazyOne
謝謝,錯誤發生在MultiViews選項中,禁用錯誤消失 –