2013-02-19 52 views
1

我需要301將所有?print=yes網址重定向到沒有?print=yes的網址,其中包含相同的名稱,通過.htaccess。目前,該網站的標頭中出現PRINT的按鈕,因此需要修復70多個網址...將該按鈕移除到PRINT頁面會使設計毀於一旦,因此它不是真正的選擇。如何爲具有特定字符的URL製作htaccess規則?

我認爲它需要一個RedirectMatch規則,但我該怎麼寫呢?

例子:redirect 301 from domain.com/faq/?print=yes to domain.com/faq

提前感謝!

+0

有時候我討厭自己......這不起作用,因爲我寫錯了東西。它是'domain.com/faq/?print = yes'而不是'domain.com/faq?print = yes'。抱歉。 – user2085949 2013-02-19 07:30:58

回答

1

啓用mod_rewrite的,並通過httpd.conf的.htaccess,然後把這個代碼在你.htaccessDOCUMENT_ROOT目錄:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{QUERY_STRING} ^print=yes$ [NC] 
RewriteRule^%{REQUEST_URI}? [R=301,L,NE] 
+0

非常感謝。有用! – user2085949 2013-02-19 07:57:26

+0

很高興知道。請將此答案標記爲已接受。 – anubhava 2013-02-19 08:24:49

0

我不知道,如果重定向可以做同樣的,但這裏是我如何與重寫做

Options +FollowSymlinks 
RewriteEngine on 
RewriteRule ^(.*)\?print=yes$ $1 [NC] 
+0

Techmonk,您能否相應地編輯您的代碼?我很抱歉我在這方面不存在的語法技巧。 – user2085949 2013-02-19 07:35:53

+0

這不起作用,因爲RewriteRule不能匹配查詢字符串。 – anubhava 2013-02-19 07:45:48