我们正在尝试将URL重定向到http://example.com/gtsdsds8yz/x3idsdssq.php?wtb=hgtvsdsd-m3u
Tohttp://example.com
为此,我们使用如下.htaccess
:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^wtb=hgtvsdsd-m3u$ [NC]
RewriteCond %{HTTP_HOST} .*
RewriteRule ^gtsdsds8yz/x3idsdssq.php https://example.com [L,R=301]
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
>RewriteCond %{QUERY_STRING} ^wtb=hgtvsdsd-m3u$ [NC] RewriteCond %{HTTP_HOST} .* RewriteRule ^gtsdsds8yz/x3idsdssq.php https://example.com [L,R=301]
这应该重定向到根目录,但是,它不会剥离 URL 参数,我认为这是您的问题?但请注意,您严格缺少替换字符串上主机名后面的尾部斜杠(浏览器需要更正此问题(。
若要删除查询字符串,需要QSD
(查询字符串丢弃(标志 (Apache 2.4+(。或者,如果您仍在使用 Apache 2.2,请将?
附加到替换字符串的末尾。
例如:
RewriteCond %{QUERY_STRING} ^wtb=hgtvsdsd-m3u$ [NC]
RewriteRule ^gtsdsds8yz/x3idsdssq.php https://example.com/ [L,R=301,QSD]
请注意,这应该放在所有WordPress指令之前,位于.htaccess
文件的顶部。
在测试之前,您需要清除浏览器缓存。
RewriteCond %{HTTPS} !on RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
您还将HTTP到HTTPS重定向放在了错误的位置。这也需要在文件的开头 - 在WordPress前端控制器之前,因为它根本不会重定向您的WP URL。