基于HTTP_HOST提供不同的robots.txt

问题描述 投票:0回答:2

我有两个网站都被谷歌使用相同的代码库索引:

dev.mysite.com 和 example.com

我想根据每个域提供不同的 robots.txt。

目前我有:

RewriteBase /

RewriteCond %{HTTP_HOST} ^dev\.mysite\.com$ [NC]
RewriteRule ^robots\.txt$ robots\.txt\.dev [L]

但是这似乎不起作用。有人能指出我正确的方向吗?

.htaccess mod-rewrite
2个回答
2
投票

对我来说,通过添加额外条件来完成工作

RewriteCond %{HTTP_HOST} ^dev\.mysite\.com
RewriteCond %{REQUEST_URI} (robots\.txt)
RewriteRule .* robots-dev.txt [L]

0
投票

同一服务器上多个域的另一种方法

.htaccess 文件

#load php file named robot.php on root folder
RewriteRule ^robots\.txt$ "\/robots.php" [L]

php 文件 robots.php

<?php
    header("Content-Type: text/plain");
    // default path  
    $path = "./robots.txt";
    
    if ( preg_match("/domainname_one/i",$_SERVER['SERVER_NAME']) ) {
        $path = "./domainname_one_folder/robots.txt";
    }
    if ( preg_match("/domainname_two/i",$_SERVER['SERVER_NAME']) ) {
        $path = "./domainname_two_folder/robots.txt";
    }
    if ( preg_match("/domainname_three/i",$_SERVER['SERVER_NAME']) ) {
        $path = "./domainname_two_folder/robots.txt";
    }
    echo file_get_contents( $path );
?>
© www.soinside.com 2019 - 2024. All rights reserved.