我有wampserver 2.4,我似乎無法讓Mod_Rewrite工作。我已經在Apache服務中啓用了它,並取消了httpd.conf中的mod_rewrite.so並重新啓動了服務器。我也檢查了我的phpinfo(),並在服務下列出了mod_rewrite。WAMP 2.4 Mod_rewrite 2.4
我測試它的網站是在地址localhost/eb/index.php後面我試圖在event.php頁面上測試它,其中的url看起來像localhost/eb/event.php?id = 1
這就是我的.htaccess文件在我的index.php文件所在的localhost/eb的根目錄中的樣子。
<IfModule mod_rewrite.so>
RewriteEngine on
RewriteBase /eb/
RewriteRule ^event/([0-9]+)/?$event.php?id=$1
</IfModule>
即使在此之後它仍然顯示的URL本地主機/ EB/event.php?ID = 1
它工作!請你解釋一下爲什麼要這麼多規則?我讀過的所有教程都只顯示在OP中使用重寫規則。另外,我現在需要做什麼,以便我的CSS腳本可以在重寫的頁面上工作?這是一個動態頁面,所以CSS調用是在header.php中,並且該文件包含在其他頁面文件中 –
對於css/js問題,在css,js,images文件中使用絕對路徑而不是相對路徑。這意味着你必須確保這些文件的路徑以'http://'或斜槓'/'開始。 或者您可以嘗試在您的頁面標題中添加此項:' ' –
anubhava
這裏需要2條規則。規則1:將實際的'/eb/event.php?id=123'重定向到'/ eb/event/123',並將第二條規則重定向到實際的'/ eb/event/event.php?ID = 123'。 – anubhava