我有WordPress .htaccess文件,这就是它的外观。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# the following three lines will work for all subdomains
RewriteCond %{HTTP_HOST} !^example\.net$ [NC]
RewriteCond %{HTTP_HOST} !^www\.example\.net$ [NC]
RewriteRule . "http://www.example.net/" [R=301,L]
# the following two lines will redirect non-www to www version of the domain
RewriteCond %{HTTP_HOST} ^example\.net
RewriteRule ^(.*)$ "http://www.example.net/$1" [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# Wordfence WAF
<Files ".user.ini">
<IfModule mod_authz_core.c>
Require all denied
</IfModule>
<IfModule !mod_authz_core.c>
Order deny,allow
Deny from all
</IfModule>
</Files>
# END Wordfence WAF
我想将子域名重定向到主域名。
问题是如果我点击,subdomain.example.net/anystring
它成功地重定向到example.net
但是,如果我点击,subdomain.example.net/anystring?anytext
它会成功重定向到example.net?anytext
所以此处附加了?anytext
,我需要删除附加到subdomain.example.net
我尝试过几件事,但没有成功。
我会请求你的帮助。
答案 0 :(得分:1)
添加?
以防止将查询字符串附加到替换网址,因此请在代码中更改这两行:
RewriteRule . "http://www.example.net/" [R=301,L]
由此:
RewriteRule . "http://www.example.net/?" [R=301,L]
和这一行:
RewriteRule ^(.*)$ "http://www.example.net/$1" [R=301,L]
由此:
RewriteRule ^(.*)$ "http://www.example.net/$1?" [R=301,L]