我目前的.htaccess看起來是這樣的:破碎的.htaccess重寫
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301]
RewriteRule /([^/.]+)/?$ /restaurants.php?id=$1 [L,NC,QSA]
RewriteCond %{THE_REQUEST} ^.*/index\.php
RewriteRule ^(.*)index.php$ /$1 [R=301,L]
我想我的網址是搜索引擎友好,我想出如何重寫example.com/restaurants.php?id=123到www.example.com/name/123。
問題是,當你去非www的example.com/name/123,它重定向到醜陋的網址example.com/restaurants.php?id=123,然後重定向到SEO友好乾淨www .example.com/name/123
如何解決非www版本的問題?
謝謝你的時間!
這不起作用。您的示例允許www和非www來解析200 –
不,首先規則會將所有非www URL重定向到www URL。您必須清除瀏覽器緩存,並確保www和非www都指向此htaccess – anubhava
謝謝@anubhava它的工作 –