ホスト名でアクセス制限する時に、ホスト名をソースの中で指定する時どういうふうに書いたらいいのでしょうか?例えば・・・acoska000000.adsl.ppp.infoweb.ne.jpや YahooBB219005242044.bbtec.net などのホストをどうやって書いたらいいのかわかりません。自分のホストで試したみましたがアクセス制限が全然かかりません。どうしたらよいのでしょうか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答12件)

id:erminus No.1

回答回数33ベストアンサー獲得回数0

ポイント16pt

.htaccessファイルを編集すれば良いんではないかと思います。

id:gouda0

そんな難しいことはできません。

だいたいそんなファイルありません。

2003/07/07 20:56:07
id:jeanjean No.2

回答回数64ベストアンサー獲得回数3

ポイント16pt

アクセス制限を掛けたいディレクトリ内に、以下の内容の.htaccess というファイルを作ればOKです。

order deny,allow

deny from all

allow from .adsl.ppp.infoweb.ne.jp .bbtec.net

ただし、コンテンツを置いているサーバ、プロバイダによっては、.htaccess ファイルによる制限を無効にしているところがありますので、その場合には、CGIなどで認証システムを作るしかないと思います。

また、ご質問のホスト名は、常時固定的に割り振られているものでは無いように見受けられますので、上に書いた参考のものは、特定のプロバイダのみからアクセスを受け付けるように掛かれています。

上記の記述は実際に動作テストを行っておりませんので、スペルミス等でうまく動作しない可能性が無くも無いので、ご参考程度にお願いいたします。

ほか、参考になるページの検索結果です。

id:gouda0

読んでもまったくわかりません。

既にCGI認証システムはできてるんですけど・・・

あとはホスト名を入れるだけなんですよ。

その入れる時のホストの表示部分がわからないんです。

ホスト全部入れてみたんですけど拒否されないみたいだったので。

2003/07/07 21:05:10
id:moc No.3

回答回数56ベストアンサー獲得回数0

ポイント16pt

以下過去ログの抜粋です。

COFFEEBREAKさんの、投稿です。

特定のホストからアクセス制限するには?

このページを参考に書いてみました。

任意の部分には「.*?」と書いて、ドット「.」は「¥.」と書けばいいともいます。(動作未確認)

$host[0] = ’.*?¥.abc¥.co¥.jp’;

$host[1] = ’ryucc-.*?¥.ppp¥.odn¥.ad¥.jp’;

(略)

local($match) = 0;

$host = $ENV{’REMOTE_HOST’};

$addr = $ENV{’REMOTE_ADDR’};

if ($host eq $addr) { $host = gethostbyaddr(pack(’C4’,split(/¥./,$host)),2) || $addr; }

foreach $c_host(@check_host) {

if ($host =~ /$c_host/) { $match=1; last; }

}

if ($match) {print ”Content-type: text/html¥n¥n”;

print ”<html><body>アクセスできません</body></html>”;

exit;

}

id:gouda0

ありがとうございます。

実は.htaccessについていろいろ調べてやってみたのですが.htaccess というファイル自体が作れませんでした。

私はまずテキスト形式でソースを入れてファイルの名前を決める時.htaccessという名前をつけようとしたのですがどうしても.htaccess.txtというファイルができてしまいましたので、すべてのファイルというファイルの形式で保存してみました。しかしそのファイルはFFFTPでアップロードできませんでした。

もしかして.htaccess の前に何か適当な文字を入れなければならないのでしょうかaaa.htaccess とか・・・

それとも.htaccessとは.(ドット)で始まるファイルなんですか?

そもそも.htaccessとはファイル名ですよね?

2003/07/07 22:04:20
id:erminus No.4

回答回数33ベストアンサー獲得回数0

ポイント16pt

URLはダミーです。また先ほど書いた者なのでポイントは要りません。

.htaccessはファイル名であっています。

.htaccessという名前のファイル名を作成できないならば,いったん「htaccess.txt」などという名前で作成し,FFFTPでアップロードした後に,右クリックの「名前変更」で「.htacess」に変更すればOKです。

id:gouda0

どうしてもファイル名が.htacessにできません。

どうしてでしょうか?

今調べたら.htaccessの利用不可でした。

ところで自分のサーバーがホスト名を出力しているか調べるため

#!/usr/local/bin/perl

print ”Content-type: text/html¥n¥n”;

print ”<body>$ENV{’REMOTE_HOST’}</body>”;

exit;

というコードで自分のサーバーで試してみたところ何も表示されませんでした。

これはIPを出力だけしているのかorホスト名も出力しているのかどちらなんでしょうか?

2003/07/07 23:03:33
id:anger No.5

回答回数2ベストアンサー獲得回数0

ポイント16pt

http://www.zdnet.co.jp/help/tips/linux/l0301.html

競争力向上にITを活用するすべての企業へ - ZDNet Japan

.htaccessで秘密の認証ページを作る

こちらはlinuxでの.htaccessの設定です。

.htaccessはドットで始まるファイルです。windowsで*nixサーバに.htaccessを置く場合はftpでアップロード後にファイルをリネームすれば良いでしょう。

こちらはwindowsXPでの設定です。

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 polyamid 152 136 1 2003-07-07 23:07:34
2 なむうぉんす 1482 1047 133 2003-07-08 08:22:15
3 なむうぉんす 1482 1047 133 2003-07-08 09:46:29
4 moc 56 44 0 2003-07-08 10:29:36
5 shinchan 6 4 0 2003-07-08 23:21:52
6 zifree 175 152 6 2003-07-09 04:14:00
7 dity 3 1 0 2003-07-09 12:35:02

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません