• ベストアンサー

PCからの閲覧を拒否

主要携帯3社のみ閲覧できるサイトにしたいのですが、 .htaccessを以下のように記述後設置しても、自分の携帯からアクセスすると403 Forbiddenが出ます。 order deny,allow deny from all allow from 210.153.84.0/24 中略 allow from 222.7.57.32/27 設置場所を変えてこの.htaccessを例えば特定の画像フォルダに入れ、そのフォルダの画像を見ようとするとやはり403 Forbiddenです。 ミケネコさんやその他のページも多々参照し、いろんな.htaccessの記述に挑戦しましたがどれも500か403が出ます。一番のやりたい事は、画像のURLを直接入力されても、http://mobamani.com/doc/index.htmここのように携帯以外からは見れないようにする事です。 画像の直リン防止記述も、自サイト内からのリンクのみ許可の記述でも、結局直でアドレスを指定すると見れてしまいます。単にアクセス制限だけならyasuさんの自動振り分けCGIというのが役に立ちそうで導入しようとしましたが、設定ファイルでつまずいて導入できず終いです。TOK2サーバー利用。パスワード制限は取らない方針です。どこに原因がありそうかなど、いくつか指摘お願いします。

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

  • ベストアンサー
  • gentaro
  • ベストアンサー率47% (105/221)
回答No.6

ホスト名での制限はサーバーに負担をかけるので設定によりできないレンサバが多いです。 と、そういうオチでしたか・・・ 私もサーバー構築は今でもやっていますが、IPレンジで.htaccessが正常動作しない現象は初めてなので、サーバー側に何かあるとは考えられませんでした。 すみません。 >無制限につられてTOK2 ちなみに「転送量無制限」はほとんど釣り広告です。 実際に巨大な転送量を出すと「他の客に迷惑が」とかでアップグレード強制または追い出されます。 一般人のサイトだと転送量は微々たるものなので「無制限」と謳えるわけでして。 余談でした

hamemanclub
質問者

お礼

なるほど!「無料には訳がある」か。これはサーバー比較以外の面でも、とても参考になりました。内容が同じなら制限なしを選びがちですからね。。目の向け所が増えました。今回は力を貸していただきありがとうございました!

その他の回答 (5)

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.5

うーん・・・.htaccessは動作しているんですねえ。 謎です。 あまり良い方法ではありませんが、 order deny,allow deny from all allow from .docomo.ne.jp allow from .vodafone.ne.jp allow from .ezweb.ne.jp ホスト指定はどうですかね?HOSTLOOKUPが無効で、動作しないサーバーもあるかもしれませんが。 もしこれができたのならば、益々謎になります まあ、手段はどうであれ、USERAGENTで制限できた件はおめでとうございます。

hamemanclub
質問者

お礼

先ほど、ロリポップという別サーバーを借りてIPでの記述をした所、驚くほどすんなり制限できました!こちらに引っ越そうと思います。頭を悩ませてしまってスミマセンでした。どちらも似たようなサービス内容なんですが、無制限につられてTOK2を選びました。今日は本当に頭が痛いです。

hamemanclub
質問者

補足

そちらのホスト指定だとドコモからは403でした。ここまでの内容で、このサーバーに疑問みたいな物を感じますか?どこのサーバーもそうでしょうが、TOK2サーバーの誹謗中傷記事がやたら目に付くんで。。知識のあるgentaroさんが謎と思うくらいだから、私が調べてもどうにもならない感が少し。。ただ、「教えて教えて」の態度は取りたくないし。今日は時間があるので、別のお試しサーバー借りて同じ事を実験するかも知れません。

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.4

.htaccessの記述はIPアドレス帯含め間違いないようですね。 Forbiddenはメッセージの通り、その設定で該当アドレス帯域以外から参照した場合や、ディレクトリ参照ができないのにindex.htmlを置いていなかったりした場合に xxxx.com/ で参照した時に出るエラーです。 allow from にご自身のPCからのIPアドレスを入れてもForbiddenなのでしょうか? .htaccessを禁止するサーバーは少ないので.htaccess制御が効いていない感じではないと思いますが。

hamemanclub
質問者

お礼

ご報告があります。IPでの指定を止めて、ホスト?に変えてみました。 SetEnvIf User-Agent "DoCoMo/2" Lilith SetEnvIf User-Agent "DoCoMo/1" Lilith SetEnvIf User-Agent "KDDI" Lilith SetEnvIf User-Agent "UP.Browser" Lilith SetEnvIf User-Agent "J-PHONE" Lilith SetEnvIf User-Agent "Vodafone" Lilith SetEnvIf User-Agent "MOT" Lilith Order Deny,Allow Deny from all Allow from env=Lilith ErrorDocument 403 http://www.geocities.jp/..../403.html 探してもなかなか正規表現が見つからず、DoCoMo以外は適当な記述で、UP\.Browserにするのかもわかりませんが、とにかくPCは飛んで、ドコモは見れてます。やりたい事は一応出来てますが、何故IP指定が無効なのかが残ります。。

hamemanclub
質問者

補足

自身のPCからのIPアドレスのみ指定したら、PCからは見れました!ドコモからは見れませんでした。au,vodaについては確認できません。

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.3

単純に使っている携帯のキャリアのIPアドレス帯が間違っていませんか? 一度自分の携帯のIPアドレスを実際に確認してみてください。 その確認したIPだけでallow from記述し、それでも403なら何か特別な原因がありそうですね。

hamemanclub
質問者

補足

はい。ドコモfoma901icなので、次のようにやりました。 order deny,allow deny from all allow from 210.153.84.0/24 allow from 210.136.161.0/24 やっぱり同じです。。 「アクセスしたファイルは、アクセスする権限が与えられていないか、もしくはINDEXファイルが存在しません。」と表示されます。 まさか、allowという命令がサーバーで使えない設定なんでしょうか?.htaccessは使えると説明があるんですが、内容についてはサポートされていないのでそれを聞くことが出来ないのです。 ちなみにアスキーモードで/public_htmlにアップロードするだけで、他にやる事ってありませんよね?? PHP Version 4.3.11という文書なら手元にあるんですが、これが役に立つなら少し確認できそうです。 夜まで仕事に出てきます。

  • dais_001
  • ベストアンサー率87% (14/16)
回答No.2

ごめんなさい#1は無視してください。全く逆のことを書いていました。問題は別にあると思います。

hamemanclub
質問者

お礼

それでも、私の悩みに少しでも取り組んでいただいた事が嬉しいです。ありがとうございます!

  • dais_001
  • ベストアンサー率87% (14/16)
回答No.1

order deny,allow では最初に deny 行が評価されます。2行目にdeny from all がありますので、結果的にアクセスはすべて拒否されてしまいます。特定のIPアドレスからの接続だけを許可するには、以下のようになります。 Order Allow, Deny Allow from 210.153.84.0/24 中略 Allow from 222.7.57.32/27 Deny from all

参考URL:
http://httpd.apache.org/docs/2.0/ja/mod/mod_access.html

関連するQ&A