如何在Plesk 11.0.9中为域及其子域添加重写规则?

时间:2015-09-24 08:07:14

标签: apache .htaccess mod-rewrite plesk

我需要将请求文件从所有可能的子域重定向到位于顶级域的一个文件:

^.example.com/robots.txt >> http://example.com/robots.txt

robots.txt可能存在于子域httpdocs中,也可能不存在,此规则必须首先执行(我们希望提前阻止所有抓取工具)。

Plesk 11.0.9提供的文件夹结构是:

example.com/
  ...
  httpdocs/
  subdomains/
    sub1/
      httpdocs/

example.comroot所有。

在哪里可以添加一个可以触发所有子域的apache重写规则?

编辑:我使用ping doesntexist.example.com进行了测试,请求确实被定向到example.com,这意味着在处理过程中应该有一个点来执行重写逻辑。

1 个答案:

答案 0 :(得分:0)

尝试将此规则放在/example.com/httpdocs/.htaccess

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?!www\.)[^.]+\.(example\.com)$ [NC]
RewriteRule ^robots\.txt$ http://%1/$0 [L,R=302,NC]