- 締切済み
googleからの、?03DD0000 つきのURLのアクセスを禁止する方法
ドメインを取得して、ホームページを開設しているんですが、googleに?つきの妙なURLを拾われてしまいました。 http://example.com/?03DD0000 というようなURLです。 表示内容は、http://example.com/と全く同じです。 ?付きURLのアクセスを禁止できる方法があったら教えてください。 現状・分かっていること ?付きのアクセスは、googleの検索結果からきた人のみです。 googleからのアクセス全てを禁止するのは、できれば避けたいです。 ?03DD0000というファイルも、ディレクトリも存在しません。 ?03DD0000というファイル・ディレクトリをわざと作っても、http://example.com/と同じ内容が表示されます。 トップページには、index.cgiとindex.htmlが置いています。 URLに?が付くのは、なつみかん(アンテナ)の仕様が原因でした。 出所に、?つきURLが出ないように対処してもらいました。 それから3ヶ月たってもgoogleに?つきのURLが残っているようです。 WiseNutに拾われたときには、WiseNut運営元にメールを出してURLを消してもらったのですが、googleにメールを出しても消してもらえませんでした。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
?より後ろ側は、Perl では変数 $ENV{QUERY_STRING} 、JavaScript の場合は変数 location.search で受け取ることができます。 変な引数が入っていたらエラー画面へ飛ばすようにすればいいと思います。 ただ、引数がついてしまうのは訪問者の責任ではないので、現状のまま無視するような仕様の方が無難です。 エラーを出すと、ホームページが開設されていないと勘違いした人や、不親切だと怒ってしまった人などが来てくれなくなります。
- mrumesuke
- ベストアンサー率45% (254/557)
不確定要素があるため断言できませんが、"http://example.com/?03DD0000"というのはおそらくindex.cgiにパラメータとして03DD0000を渡していることになるのではないでしょうか。 そうであればindex.cgiの改造で防げるかと思います。 いかがでしょうか。
お礼
すみません、自己解決しました。 DirectoryIndexで.htmの優先順位をあげてから、 AddHandler cgi-script htm を設定して.htmがCGIとして動くようにし、 そのCGIで引数の有無を判定して表示するようにしました。
補足
回答ありがとうございます。 index.cgiを改造してみたところ、引数はindex.htmlのほうに渡されていることが分かりました。 index.cgi側では対処のしようがないようです。
お礼
自己解決しました。 補足の補足 robots.txtは、ディレクトリ単位での拒否になるので、使えませんでした。
補足
回答ありがとうございます。 JavaScriptを設置したところ、index.htmlに引数が渡されているのが分かりました。 ということは、robots.txtに、 User-agent: Googlebot Disallow: /index.html?03DD0000 と書いてやればいいのでしょうか?