みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ロボットを.htaccessで排除したい。

ロボットが回遊してきてcgiを実行され、被害が出るので、
.htaccessでアクセス制限を掛けたく調べています。

.htaccessファイルは以下のとおり作れました。

***ここから
order allow,deny
allow from all
deny from xxx.xxx.xxx.xxx
***ここまで


ただ、このファイルを置く場所が分かりません。

プロバイダーの指定では、
/use/local/www/htdocs/user-id/public_html/目的のディレクトリ
と在ります。

これは、.htaccessファイルをここに置け、ということかと思いますが、
ここはどのように指定するのでしょうか。

使っているのは、フリーウェアのffftpです。
ffftpを実行したとき、
サーバー側に表示されているアドレスは / となっています。
そしてそこに、cgi-binフォルダやindex.htmlが表示されています。

.htaccessの説明を読んだ限りでは、
制限を掛けたいフォルダ(ディレクトリ)に置け、となっていました。
であれば、このルート部分に置きたいのですが。

関連でもう一つ、やらなければならないことはこれだけで宜しいのでしょうか。
例えばcgiファイルなどで何か定義し直す必要とか。

宜しくお願いします。

投稿日時 - 2011-01-21 11:21:32

QNo.6463731

困ってます

質問者が選んだベストアンサー

> プロバイダーの指定では、
> /use/local/www/htdocs/user-id/public_html/目的のディレクトリ
> と在ります。

> .htaccessの説明を読んだ限りでは、
> 制限を掛けたいフォルダ(ディレクトリ)に置け、となっていました。
> であれば、このルート部分に置きたいのですが。

.htaccessの設定はサブディレクトリまで有効になるのでどちらでも構いません。
ただ、制限する場所を限定したいのであれば後者ということになります。

余談ですが、ロボット撃退にはもっとすっきりした方法としてrobots.txtがありますが、
既に検討されましたか?

http://www.tohoho-web.com/wwwxx079.htm

投稿日時 - 2011-01-21 11:43:56

お礼

早速ありがとうございました。
置き場所は私が借りているルートで構わないということデスね、
了解です。
なお、robots.rxrは見ていないということです。
それで今回質問しました。

解決したのですが、
折角なので教えて下さい。
プロバイダ指定の場所に置くというのは、
私のルートに置くより上になるのでしょうか。
位置が良く見えません。

宜しくお願いします。

投稿日時 - 2011-01-21 13:05:28

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

ftpでのルートと、HTTPでのルートを混同してませんか?
HTTPが提供するのは、あくまで
/use/local/www/htdocs/[user-id]/public_html/以下ですから、HTTODのルートはここですよ。
 Windowsでも、コンピューター上の場所はC:\DOCUMENT AND SETTIGS\[USER-NAME]\My Documentであっても、エクスプローラのルートに\マイドキュメントが見えるでしょ!!
 UNIX系では、マウントやエイリアスは多く使われます。
/use/local/www/htdocs/user-id/public_html/ が、ドキュメントルート(http://hoge.com/)だったり、/use/local/cgi/user-id/がcgiだったり(http://hoge.com/cgi-binだったり・・

きちんと理解しておきましょう。
・・ローカルにApacheをサーバーを作っておくとよくわかるかも・・
 検索エンジンは、基本的にrobot.txtを最初に参照しますからそこに指示を書いておけばよい。膨大なクローラーについていちいち指定はできません。
 また、なによりも、ロボットが読みに来たから動作が混乱するようなCGIは書いてはなりません。これが一番肝心なところですよ。

投稿日時 - 2011-01-21 19:32:20

お礼

いろいろと有り難うございます。

>ftpでのルートと、HTTPでのルートを混同してませんか?
 混同ではなく、分かっていないのです。
 勉強します。
 ヒントを貰えると結構それについては理解できていくのですが、
 基本的なことが分かって居ないのだと思います。

>ロボットが読みに来たから動作が混乱するようなCGIは書いてはなりません。
 余計なお世話です。

投稿日時 - 2011-01-21 21:05:52

あなたにオススメの質問