2014-10-05 39 views
3

我試圖使用htaccess的重定向一些舊網址到新的,它重寫我的PHP文件清理URL的GET查詢:的.htaccess 301重定向(舊的URL到新的更新)與PHP的GET查詢

Options +FollowSymLinks 
RewriteEngine on 
RedirectMatch 301 /photo/old-photo /photo/new-photo  
RewriteRule ^photo/(.*)/?$ tpl-photo.php?slug=$1 
RewriteRule ^photo/(.*)?$ tpl-photo.php?slug=$1 

這正確輸出我的乾淨的網址,像這樣:

http://website.com/photo/one-beautiful-photo 

然而,當我嘗試我的舊網址重定向到新的URL,它在某種程度上攪亂網址:

http://website.com/photo/new-photo?slug=old-photo 

我怎樣才能解決這個讓我得到一個合適的乾淨的新網址:

http://website.com/photo/new-photo 
+0

發表您的完整' .htaccess',如果你的舊URL有一個querystring發佈一個更好的例子來說明它。 – Prix 2014-10-05 12:36:17

回答

1

請勿混用mod_rewritemod_rewrite規則,只保留mod_rewrite規則是這樣的:

Options +FollowSymLinks 
RewriteEngine on 

RewriteRule ^photo/old-photo/?$ /photo/new-photo [NC,L,R=301] 
RewriteRule ^photo/([^/]+)/?$ tpl-photo.php?slug=$1 [L,QSA,NC] 
+0

謝謝,anubhava!奇蹟般有效 ! :) – rainerbrunotte 2014-10-05 19:46:19

+0

不客氣,很高興它解決了。 – anubhava 2014-10-06 03:23:27

相關問題