.htaccess 使用附加参数重定向永久
我的目标是从 /kontaktaufnehmen/kontakt.html至/auftragsverwaltung/kontakt/?type=1 并且必须将参数添加到新路径中 我试过了.htaccess 使用附加参数重定向永久,.htaccess,redirect,permanent,.htaccess,Redirect,Permanent,我的目标是从 /kontaktaufnehmen/kontakt.html至/auftragsverwaltung/kontakt/?type=1 并且必须将参数添加到新路径中 我试过了 Redirect permanent /kontaktaufnehmen/kontakt.html /auftragsverwaltung/kontakt/?type=1 但参数不会添加到重定向路径中。 如果没有?type=1,将添加参数。尝试: RewriteEngine On RewriteCond %{
Redirect permanent /kontaktaufnehmen/kontakt.html /auftragsverwaltung/kontakt/?type=1
但参数不会添加到重定向路径中。
如果没有?type=1
,将添加参数。尝试:
RewriteEngine On
RewriteCond %{QUERY_STRING} !type=1
RewriteRule ^/?kontaktaufnehmen/kontakt.html /auftragsverwaltung/kontakt/?type=1 [L,R=301,QSA]
RewriteCond %{QUERY_STRING} type=1
RewriteRule ^/?kontaktaufnehmen/kontakt.html /auftragsverwaltung/kontakt/ [L,R=301]
这里重要的是
QSA
标志,这意味着已经存在的任何查询字符串都会被追加。mod_alias指令重定向
不会为您执行此操作。第二条规则只是一个重定向,因为它看到type=1
查询字符串已经存在,所以它不会再添加其他字符串。哪些参数?其他参数无关紧要,因为所有参数都必须添加到url。示例:/kontaktaufnehmen/kontakt.html?test=1必须重定向到/auftragsverwaltung/kontakt/?type=1&test=1它们确实很重要,因为它们似乎在查询中。如果是这种情况,则标志应包括QSA
。示例[L,QSA]。这样,传入的查询将附加到规则中添加的查询。不过我只是在猜测。这将有助于了解您现在掌握的规则和完整传入URL的一个示例,以便更好地了解。