2011-03-23 96 views
1

我試圖重寫我的網址要更加SEO友好,我使用下面的代碼做這在我的.htaccess文件:MOD-重寫的動態網址

RewriteEngine On  
RewriteRule blog/(.*)/$ blog/index.php?&link=$1 [NC]  
RewriteRule ^/*(.+/)?([^.]*[^/])$ http://%{HTTP_HOST}/$1$2/ [L,R=301] 

該代碼可以讓我將http://example.com/blog/index.php?link=22改寫成http://example.com/blog/page-title/

這裏唯一的問題是我試圖讓它在沒有結束斜槓(/)的情況下工作。我已經嘗試在.htaccess代碼的第三行中刪除它(正確評價$ 2),但是這只是打破了一切,重寫根本不起作用。

任何幫助是極大的讚賞。

回答

2

現在嘗試,無論有無斜線應該工作。

RewriteEngine On  
RewriteRule blog/(.*)/?$ blog/index.php?&link=$1 [NC]  
RewriteRule ^/*(.+/)?([^.]*[^/])$ http://%{HTTP_HOST}/$1$2 [L,R=301] 
+0

這不適合我。我使用這個確切的代碼: 'RewriteRule demo /(.*)/?$ demo/index.php?&link = $ 1 [NC] RewriteRule ^/*(。+ /)?([^。] * [^ /])$ http://%{HTTP_HOST}/demo/$ 1 $ 2/[L,R = 301]' 它在最後自動添加斜線(/),現在不用加載頁面給我一個404. – Jeremy 2011-03-23 03:30:23

+0

我做了一個編輯,沒有刪除/從第3行。 – Zimbabao 2011-03-23 04:11:26