トップページ⇒php
1001コメント347KB

.htaccessの偉い人 Part2

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2001/05/02(水) 19:47ID:???
.htaccessに関する質問はここにまとめて。
前スレ http://tako.2ch.net/test/read.cgi?bbs=perl&key=960307572
0002名無しさん@お腹いっぱい。2001/05/02(水) 19:57ID:???
移転ついでに前スレのをまとめるってのはどうだろ?
俺は多分やらんけど。
0003sage2001/05/03(木) 14:49ID:???
>>1
.htaccessがWebプログラミングか?
何でもかんでもスレ移転すればいいというものではない。

======== 終 了 ========
0004名無しさん@お腹いっぱい。2001/05/03(木) 17:54ID:i4XBkJ4Q
>>3
レンタルサーバでもないと思うが?
だったらどこでやればいいんだよ。
0005名無しさん@お腹いっぱい。2001/05/03(木) 18:06ID:???
>>4
3は柔軟性のない馬鹿だから気にしないでくれ。
0006名無しさん@お腹いっぱい。2001/05/03(木) 22:19ID:YkCkPBbU
と逝うことで

======== 再 開 ========
0007むぎ茶      2001/05/04(金) 06:23ID:???


Web制作でやれ(終了
0008名無しさん@お腹いっぱい。2001/05/04(金) 07:50ID:???
比較的浅くしかいじらないWeb制作よりはこっちの方が適当だと思うが
まあ必要になるまで沈めときゃいいや。
0009名無しさん@お腹いっぱい。2001/05/04(金) 14:11ID:gxC/x6Ho
必要なので教えてくだちい。

192.168.1.0/24 からのアクセスは許可
*.hogehoge.com からはベーシック認証
それ以外はアクセス不可

どうやればいいんでしょ?
0010はげ茶2001/05/04(金) 15:15ID:???

Web制作で聞け!
0011名無しさん@お腹いっぱい。2001/05/04(金) 17:12ID:SqcCx2UY
>>9
ApacheのFAQに関係ありそうな記述を見つけたよ。
http://httpd.apache.org/docs/misc/FAQ.html#remote-auth-only

実際に試したわけじゃないので、これでいいかどうかは不明。
うまくいったら報告してくり。
0012名無しさん@お腹いっぱい。2001/05/05(土) 01:32ID:bSsR6SS2
>>11
ありがとう。そいつを参考にこんなふうに書いてみたんだけどダメでした。

# 192.168.1. / hogehoge.com 以外からのアクセスは forbidden
RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.
RewriteCond %{REMOTE_HOST} !\.hogehoge\.com$
RewriteRule .* /nosuchfile [F]
# Allow で明示されていないところからは basic auth
Deny from all
Allow from 192.168.1.0/24
AuthType Basic
AuthUserFile /usr/local/apache/conf/htpasswd.users
AuthName "authorization required"
Require valid-user
Satisfy any

192.168.1.0/24 からは許可、それ以外はすべて認証、となってしまいます。
rewrite が効いてないみたい。mod_rewrite の使い方を勘違いしてる?
0013名無しさん@お腹いっぱい。2001/05/07(月) 02:17ID:BKR3RQck
>>12
> ありがとう。そいつを参考にこんなふうに書いてみたんだけどダメでした。
どういうふうにダメかを書け。 再実験するほど暇じゃない奴も答えられる。
0014名無しさん@お腹いっぱい。2001/05/07(月) 02:34ID:???
最後の行に書いてあるのがそれじゃないん?
0015名無しさん@お腹いっぱい。2001/05/20(日) 04:39ID:u8Z0DSNw
ネキュ板からのコピペです。よろしくお願いします。

特定のサイトからアクセスされた場合だけ、別ページに飛ばしたいのですが、
htaccessの設定で出来るというようなことを以前聞いたことがあるのですが、
本当に可能なのでしょうか?
もし可能でしたら方法を教えて頂けると嬉しいです。
不正に直リンクを貼られて困っています。
よろしくお願いします。

相互リンク
http://corn.2ch.net/test/read.cgi?bbs=php&key=988800432&ls=5
0016152001/05/20(日) 04:40ID:u8Z0DSNw
>>15
リンクまちがえました。
http://ton.2ch.net/test/read.cgi?bbs=sec&key=990286574
0017名無しさん@お腹いっぱい。2001/05/20(日) 06:32ID:nSz8yoh.
>>15
たとえば下記のように記述すると、
ahoaho.netまたはhoge.comから、gif,jpg,jpegファイルを
アクセスした場合にかぎり、強制的に/xxx/damedame.gifの
内容を表示します。

RewriteEngine on
RewriteCond %{REMOTE_HOST} ahoaho.net [OR]
RewriteCond %{REMOTE_HOST} hoge.com
RewriteRule ^.*\.(gif|jpg|jpeg)$ /xxx/damedame.gif

この方法は、WEBサーバ(Apache)にmod_rewriteモジュールと
いうやつが組み込まれてないと使えません。

詳しくはApacheのマニュアルを読んでみてください。
ただし「一回読んだぐらいで理解できるもんじゃない」と
当のマニュアル自体に書いてあるぐらい複雑ですが・・・
0018名無しさん2001/05/20(日) 11:30ID:???
>>17
どこがむずかしいの?
http://httpd.apache.org/docs/misc/rewriteguide.html
よんでその通りにやればOKじゃん?
mod_rerwite と mod_proxy くみあわせてつかってるけど、
かいたるとーりにやれば大丈夫だけど

複雑なルールは、少し正規表現知ってたりするほうがいいけどね(ウヒヒ
0019名無しさん2001/05/20(日) 11:34ID:???
ローカルにアパッチとドキュメントをインスト口ールしてたら、
http://localhost/manual/misc/rewriteguide.html
でもみれるとおもうよ
0020182001/05/20(日) 11:35ID:???
URLぬけてた
http://httpd.apache.org/docs/mod/mod_rewrite.html
http://httpd.apache.org/docs/misc/rewriteguide.html
この2つです
0021名無しさん@お腹いっぱい。2001/05/20(日) 11:42ID:???
>>20
日本語でどうぞ。
0022名無しさん@お腹いっぱい。2001/05/20(日) 18:55ID:DK.qaesY
F2Sで.htaccessを使って、
あるドメインを制限するにはどうしたらよいのでしょうか?

普通のやり方ではダメみたいです。
0023名無しさん@お腹いっぱい。2001/05/20(日) 19:00ID:???
>>22
普通でないなら、F2S に聞いて下さい。
0024名無しさん@お腹いっぱい。2001/05/20(日) 19:08ID:DgouIO.2
ブックマーク無効にする事できるのでしょうか?
日記のファイルに直リンクされているんですが、TOPから入ってほしいので。
0025名無しさん@お腹いっぱい。2001/05/20(日) 21:03ID:???
JavaScript などでリファラか Cookie チェックすれ。
ただし、両方有効にしてもらわないトナー。
0026名無しさん@お腹いっぱい。2001/05/20(日) 21:10ID:???
>>22
以前このスレのPart1で同じ質問した人がいて、
たしかこんな答をもらっていたように思う。

・X-FORWARDED-FORヘッダを見て、拒否したいIPアドレスと
  一致していたら、適当な変数をセットする。
・deny from env=変数名
  という命令で、変数がセットされていたらアクセス拒否

たとえば、IPアドレス111.222.111.222をはじきたいなら、
こんな感じになる(たぶん)。

SetEnvIf X-Forwarded-For "111\.222\.111\.222" HTTP_BADHOST=1
deny from env=HTTP_BADHOST

おれ自身は"SetEnvIf"も"deny from env="も使ったことないし、
F2Sのアカウントも持ってないので、これでいいかどうかは不明。
0027222001/05/20(日) 23:08ID:/4XwpOHI
>26
>26
レスありがとう。
そのやり方で、IPアドレスの制限はできたけど、ドメインネーム
での制限は出来ませんでした。
たとえば、hoge.ne.jpからアクセス出来ないようにするには、
どうしたら良いのでしょうか?
0028名無しさん@お腹いっぱい。2001/05/20(日) 23:38ID:CcmrZutQ
>>27
アクセス元のドメイン名は何かの環境変数に入ってるの?
いままで来たF2S関係の質問者は、ろくな情報も与えずに
答だけ求めるやつらばっかだったんで、そのへんがちーとも
わからんのよ。
0029272001/05/21(月) 00:13ID:REQ.emlY
>28
よくわからないのですが、例えばアクセスログを取る時に
$ENV{"REMOTE_ADDR"}ではダメでX-Forwarded-Forでうまくいくらしいのです。
変則的でよくわかりません。スマソ
0030282001/05/21(月) 00:25ID:???
>>29
そんだけの情報じゃ全然わからん。
ドメイン名で制限するのはあきらめて、全部IPアドレスで制限すれ。

SetEnvIf X-Forwarded-For "111\.222\.111\.222" HTTP_BADHOST=1
SetEnvIf X-Forwarded-For "111\.222\.111\.223" HTTP_BADHOST=1
SetEnvIf X-Forwarded-For "111\.222\.111\.224" HTTP_BADHOST=1
こうやって制限したいIPアドレスを並べるだけでいいから。

正規表現を使えば、もっとスマートに記述することも可能っぽいけど、
説明するのが面倒だからパス。
0031名無しさん@お腹いっぱい。2001/05/21(月) 21:37ID:???
>>24
日記を削除しろ。
0032名無しさん@お腹いっぱい。2001/05/21(月) 22:50ID:tzY0BWIQ
age
0033名無しさん@お腹いっぱい。2001/05/22(火) 17:09ID:lqCxDbrA
f2sってドメインの逆引きできるの?
0034名無しさん@お腹いっぱい。2001/05/22(火) 18:23ID:Ibd0kwTo
>>33
知りません。つうかスレ違い。つうかf2sに聞いたら?
0035■PROXY規制中■2001/05/23(水) 00:37ID:???
<font color="#赤">■PROXY規制中■</font>
って、どうよ?
0036名無しさん@お腹いっぱい。2001/05/23(水) 11:03ID:qbG/Sdlg
アクセス制限で匿名で中傷メールを送ってきたドメインを
はじきたくてあちこちで調べたつもりですが・・・

レンタルサーバー屋さんのほうで設定してある.htaccess
のファイルをホームーページビルダーのFTP転送ツールで
自分のパソコンに転送し,メモ帳で開いて以下の部分を
書き加えて上書きしてサーバーに転送してみました.

order allow,deny
allow from all
deny from .xxx.yyy.ne.jp

とりあえずdenyのドメインは自分の職場のものを書いたのですが,
普通にアクセスできてしまいます。
.htaccessで制限可能となっているサーバーなので会社に問い合わ
せしてますがいっこうに返事がこないので恐る恐るこちらで伺って
みようかと・・・
スキルがないので難しいことはまるでわかりません。
アドバイスいただけないでしょうか?
0037名無しさん@お腹いっぱい。2001/05/23(水) 15:03ID:3PmNmkkg
>>36
deny from .xxx.yyy.ne.jp だと、"xxx.yyy.ne.jp"自体は
拒否しないで、hogehoge.xxx.yyy.ne.jp(hogehogeは任意) を
拒否するんだけど、それで間違いないですか?
(deny from xxx.yyy.ne.jp なら、xxx.yyy.ne.jpを拒否)
0038362001/05/23(水) 15:33ID:qbG/Sdlg
>>37
“hogehoge"に当たる部分がアクセスごとにかわるようなので
.xxx.yyy.ne.jpとしたのですが・・・
xxx.yyy.ne.jpの部分はいつも同じだと“.“はなくてもよい
のでしょうか??
0039372001/05/23(水) 16:02ID:PxQBX9E2
>>38
いえそれなら .xxx.yyy.ne.jp でよいはずです。
なぜアクセス制限できないんでしょうねー。
deny from all ですべて拒否したら機能します?
あと、deny from .jp とか、 deny from .ne.jp とかの場合は。
0040名無しさん@お腹いっぱい。2001/05/24(木) 01:54ID:h6bLhCGQ
part1はどこにあるの?
0041名無しさん@お腹いっぱい。2001/05/24(木) 02:09ID:???
>>40
このスレの >>1 にリンクがあるよ。
0042名無しさん@お腹いっぱい。2001/05/24(木) 13:20ID:InKmVlqI
DirectoryIndex index.html /~dragon/forbidden.htm

ディレクトリを覗かれた際にindex.htmlが無かったら、代わりに
forbidden.htmを表示させるというものです。
index.htmlだけじゃなく、index.cgiも追加したいのですが、
どの様にすれば良いでしょうか?
0043名無しさん@お腹いっぱい。2001/05/24(木) 14:01ID:Pox4LNkU
DirectoryIndex index.html index.cgi /~dragon/forbidden.htm
0044名無しさん@お腹いっぱい。2001/05/24(木) 14:42ID:hPA/Qrco
やりたいのは実はこうだったりしない?

DirectoryIndex index.html index.cgi
Options -Indexes
ErrorDocument 403 /~dragon/forbidden.htm
0045422001/05/24(木) 18:34ID:InKmVlqI
ありがとうございます。
43さん、44さん両方のやり方でいけました。
どう違うのか、自分には分かりませんでしたが…。
0046名無しさん@お腹いっぱい。2001/05/24(木) 19:25ID:???
>>45
表示するのがhtmlなら、>>43も>>44も同じ結果になるけど、
エラー表示をCGIにする(forbidden.cgiとかにする)場合は
>>44のほうが多くの情報が得られる。のかな?(弱気)
0047名無しさん@お腹いっぱい。2001/05/24(木) 20:06ID:hPA/Qrco
かいせつ。
Options -Indexes というのは、ディレクトリ指定でアクセスされ、
かつ DirectoryIndex で指定したファイルが存在しないときは
アクセス禁止のエラー(403)を出せという意味。
ErrorDocument 403 はエラーコード 403 のときに、サーバ標準の
エラーメッセージのかわりに、指定したファイルを表示しろという意味。

だから、>>44 の場合はサーバにはエラー(403)として記録されるけど、
>>43 の場合は正常なアクセス(200)としてサーバのログに残る。
また、>>44 の設定をした場合は、index.html, index.cgi が
存在しないだけではなく、パーミッションが600(-rw-------)の
ファイルにアクセスしたりするような場合(これもエラーコード403)も
/~dragon/forbidden.htm が表示されるけど、>>43 の設定ではサーバの
デフォルトのエラーメッセージが表示される。
0048名無しさん@お腹いっぱい。2001/05/24(木) 20:10ID:hPA/Qrco
おまけ。
ErrorDocument 404 /~hoge/notfound.html
なんてやると、存在しないファイルにアクセスされたときに
自動的に notfound.html に飛ばせるよん。
004942-452001/05/24(木) 21:32ID:InKmVlqI
>>47さん、わかりやすいです!
個人的にはどちらの方法でも良いと思っていますが、
色んな場合を想定すると、>>44の方が良いみたいですね。
005036=382001/05/24(木) 21:33ID:Bb/OWtzk
>>39
deny from allでもアクセスできてしまいました。
根本的なやり方!??が間違っているんですかねぇ・・・
■ このスレッドは過去ログ倉庫に格納されています