6

http://www.mywebsite.com/sitemap.xmlにある私のサイトマップにGoogle、Yahoo、またはその他の検索エンジンロボットなどのロボットのみを許可できる方法はありますか。これは、ユーザーによる直接アクセスを許可せず、ロボットのみにアクセスを許可することは可能ですか?

4

3 に答える 3

5

基本的にはありませんが、ユーザーエージェント文字列を使用して何かを実行し、アクセスを禁止することができます(Apacheを想定)

<Location /sitemap.xml>
  SetEnvIf User-Agent GodBot GoAway=1
  Order allow,deny
  Allow from all
  Deny from env=!GoAway
</Location>

しかし、ここで言うように(私が構文を見つけた場所)

警告:

User-Agentによるアクセス制御は、エンドユーザーの気まぐれでUser-Agentヘッダーを何にでも設定できるため、信頼性の低い手法です。

于 2011-07-04T09:49:38.857 に答える
2

私の情報源では赤で表示されています。

$ip = $_SERVER["REMOTE_PORT"];
$host = gethostbyaddr($ip);

if(strpos($host, ".googlebot.com") !== false){
    readfile("sitemap.xml");
}else{
    header("Location: /");

于 2013-10-02T19:18:21.483 に答える
0

sitemap.php

<?php

    $ip = $_SERVER["REMOTE_PORT"];
    $host = gethostbyaddr($ip);

    if(strpos($host, ".googlebot.com") !== false){
        readfile("sitemap.xml");
    }else{
        header("Location: /");
    }
于 2011-07-04T10:05:05.293 に答える