[英]Apache mod rewrite for dynamic pages
我在為我的網站編寫的mod重寫規則有問題,似乎沒有任何改變,因為我的頁面URL加載與以前相同,如果有人可以查看它並讓我知道是否有任何問題非常感謝,謝謝!
REWRITE RULE
RewriteEngine On
RewriteRule ^([^/]*)/$ /index.php?art_id=$1 [L]
網址
http://www.test.com/index.php?art_slug=test
期望的結果
http://www.test.com/test
通過httpd.conf
啟用mod_rewrite和.htaccess,然后將此代碼放在DOCUMENT_ROOT
目錄下的.htaccess
:
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /
# to externally redirect from /index.php?art_slug=test to /art_slug/test
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+/(?:index\.php|)\?([^=]+)=([^\s]+) [NC]
RewriteRule ^ /%1/%2? [R=302,L]
# to internally forward from /art_slug/test to /index.php?art_slug=test
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([^/]+)/(.+)$ /index.php?$1=$2 [L,QSA]
驗證一切正常后,將R=302
替換為R=301
。 在測試mod_rewrite規則時,避免使用R=301
(永久重定向)。
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ index.php?art_id=$1 [L]
應該管用。 :)
RewriteEngine On
RewriteRule (.*)/$ search.php?keyword=$1
應該管用。 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.