- 1 名前:Name_Not_Found [2006/09/09(土) 00:19:29 ID:HbgUKOrv]
- .htaccessの書き方・使い方などに関するスレです。
【参考サイト】 ・ ミケネコの htaccess リファレンス mikeneko.creator.club.ne.jp/〜lab/web/htaccess/ ・ メモランダム MultiX.jp multix.jp/html/memo/ ・ futomi's CGI Cafe - .htaccessの小技編 www.futomi.com/lecture/htaccess/ ・ .htaccess実践活用術 www.shtml.jp/htaccess/ 【Apacheドキュメント】 ・ Apache 1.3ドキュメント httpd.apache.org/docs/ ・ Apache 2.0ドキュメント httpd.apache.org/docs-2.0/ ・ Apache 2.1(alpha)ドキュメント httpd.apache.org/docs-2.1/ ・ Apache チュートリアル: .htaccess ファイル httpd.apache.org/docs-2.0/howto/htaccess.html ・ Apache チュートリアル:認証、承認、アクセス制御 httpd.apache.org/docs-2.0/howto/auth.html ・ Apache モジュール mod_access(アクセス制御) httpd.apache.org/docs-2.0/mod/mod_access.html ・ Apache モジュール mod_auth (認証) httpd.apache.org/docs-2.0/mod/mod_auth.html ・ Apache URL Rewriting Guide (Rewrite) japache.infoscience.co.jp/rewriteguide/ ・ Apache module mod_rewrite (Rewrite) japache.infoscience.co.jp/japanese_1_3_6/manual/mod/mod_rewrite.html
- 303 名前:Name_Not_Found mailto:sage [2006/11/29(水) 23:11:53 ID:???]
- >>302
大真面目ですorz 対処法教えてくださいorz
- 304 名前:Name_Not_Found mailto:sage [2006/11/30(木) 00:18:06 ID:???]
- .htaccessが使えると書かれていても、
どこまで使えるかとか、こういうときはこんな動作をするとか、 そういう細かいことって実際に使ってみないとわからないんだよね。 ttp://www.tekipaki.jp/~info/gaid.html サポートしないって書かれているけど、 どんな設定になっているかは鯖管しかわからないんだろうから 何とでも書けるわけで。 そういう設定が第三者にもわかるといいんだけど、 そういうのを公開するのはセキュリティ面などで問題があるのかな?
- 305 名前:Name_Not_Found [2006/11/30(木) 10:35:34 ID:5RAbdkw1]
- 画像ファイルへの直リンクのアクセスを
その画像リンクが表示されているhtml(同じディレクトリです) に飛ばしたいんですけどどうすればいいでしょうか? RedirectMatch (.*)\.jpg$ www.hogehoge.jp$1.jpg.html と書いてみたんですけどこうするとhtml に飛ぶんですけど 画像が表示されないんですよね。
- 306 名前:Name_Not_Found mailto:sage [2006/11/30(木) 11:42:48 ID:???]
- そりゃそのHTMLファイルからJPGファイルを読みに行こうとすると
HTMLファイルにリダイレクトされちゃうからな
- 307 名前:Name_Not_Found mailto:sage [2006/11/30(木) 11:50:34 ID:???]
- 例の画像の盗用を防ぐ設定に追加して403のエラードキュメントに
HTMLファイルへのURLを指定すればよいのだわ。 SetEnvIf Referer ^htt〜 SINK <Files *.jpg> Order allow,deny Allow from env=SINK ErrorDocument 403 http://〜/hoge.html </Files> 別のURLへリダイレクトするために403が302に変わるのだわ。
- 308 名前:Name_Not_Found mailto:sage [2006/11/30(木) 12:48:38 ID:???]
- サーバーの設定でindex.htmlやindex.cgiがないフォルダにアクセスするとforbiddenになるように
なっているのですが、これを.htaccessで一部のフォルダのみ解除できる方法はないでしょうか。 過去ログをプレーンテキストでフォルダごと公開したいのですが、厳しいでしょうか。
- 309 名前:Name_Not_Found mailto:sage [2006/11/30(木) 13:47:25 ID:???]
- 解除したいフォルダ毎に
Options +Indexes と書いた.htaccessを置くですぅ。 でもOptionsの上書きを許可されてないとInternal Server Errorになってしまうですっ。
- 310 名前:308 mailto:sage [2006/11/30(木) 14:34:37 ID:???]
- >>309
どうもありがとう。 早速トライしてみます!
- 311 名前:308 mailto:sage [2006/11/30(木) 14:42:14 ID:???]
- できました!サンクス
- 312 名前:Name_Not_Found mailto:sage [2006/11/30(木) 15:43:34 ID:???]
- ErrorDocumentの動作が変なんです
ErrorDocument 401 /401.html >認証エラーメッセージの下に404と出るから401.htmlを見つけられない? ErrorDocument 401 401.html >401.htmlと文字列だけ表示される ErrorDocument 401 http://〜/401.html >認証エラーメッセージの下に今度は404は出ないけどページジャンプしない 反応自体はあるからErrorDocumentは機能してるみたいなんだけど、こういう場合 忘れてる設定とかあるんだとしたら教えて下さい。
- 313 名前:Name_Not_Found mailto:sage [2006/11/30(木) 16:09:16 ID:???]
- >>312
下の2つは文法的に誤り。 401の場合は、必ずローカルな文書を参照しなければならない ttp://httpd.apache.org/docs/2.2/ja/mod/core.html#errordocument 一番上は文法的には合っているので、エラーメッセージの通り401.htmlが 見つからないのだろう。
- 314 名前:312 mailto:sage [2006/11/30(木) 18:11:07 ID:???]
- 自己解決しました
ErrorDocument 401 /401.htmlと書いた場合 apacheでDocumentRoot設定してある所に401.htmlを置いたら見てくれました・・・ 個別に設定したい場合はDocumentRootからの相対パスを全部指定したらうまくいきました DocumentRoot = c:\main の場合 ErrorDocument 401 /401.htmlと書くと c:\main\401.htmlが読まれる c:\main\aaa\bbb\ccc で ccc内部に.htaccessを書きccc内部の401.htmlを指定したい場合 ErrorDocument 401 /aaa/bbb/ccc/401.html と書いたらそちらが読まれました・・・404とかは普通の指定でいいのに・・ひょっとして認証試験 のためにダイレクトにccc以下にアクセスしてたからこうなったのかな・・・よくわからないけどとりあえず 解決しました、>313 さんアドバイスありがとうございます
- 315 名前:Name_Not_Found mailto:sage [2006/11/30(木) 18:22:58 ID:???]
- ドキュメントをちゃんと読みやがれこんちくしょーっ!
URL-pathへのリダイレクトのURL-pathの説明はここですぅ。 ttp://httpd.apache.org/docs/2.2/ja/mod/directive-dict.html#Syntax 基本的に絶対パスでしか設定できないですぅ!
- 316 名前:Name_Not_Found mailto:sage [2006/11/30(木) 18:34:22 ID:???]
- >>314
どこが自己解決なのですか?
- 317 名前:Name_Not_Found mailto:sage [2006/11/30(木) 18:40:54 ID:???]
- 自分でテキストを修正したとかいうのを
自己解決とか思ってんじゃねーの (そう考えれば全部自己解決かしらぁ)
- 318 名前:Name_Not_Found mailto:sage [2006/11/30(木) 19:20:16 ID:???]
- たぶんこの人は、ものすごく「せっかちなあわてん坊さん」なんだな。
もうちょっと、落ち着いてやればいいのにw
- 319 名前:Name_Not_Found mailto:sage [2006/11/30(木) 19:59:56 ID:???]
- >>304
あの書き方なら大抵のことはできないとおかしい。 tekipakiって途中から管理人が変わってるみたいだし 申し込みが引継ぎの前か後かで、設定違ってるとかのオチじゃないかな。 引き継いだ方の鯖管がそれほど詳しく無かったりとか。
- 320 名前:312 mailto:sage [2006/11/30(木) 20:28:27 ID:???]
- >315 ディレクティブって言葉をそのリンクで初めて知りましたw、読んでもよく分かりませんが。
自己解決の意味合いとしては、質問を書いてからどなたかが「こうすればいいんじゃね?」って アドバイス等がない時など、具体的な解決策が分からず自分であれこれ試すしかない状態の 結果、解決したから自己解決って書いたんです・・、>317の言うように何かを修正した つもりもなければ、何を修正したことになってるかすら分かりません。 自己解決の意味がこの世に解決策がすでに存在しているのに、それを見つけられなかったり 利用できなかったら自己解決とは言わないんですね、そういう考え方もあると勉強になりました。 >318 そうかも知れません、出来ないことが目の前にあるとなるべく全速で解決したい気持ちが 強いタチなのは自分でも困ってます(;´Д`)。 とはいえこの質問も数日色々と悩みぐぐり本を立ち読んだ末カキコったので勘弁してくださいorz。 ちなみに鯖立てとかも体系的に順序立てて学んでいるわけではなく、必要だと思ったところを つまみながらやってるんで、ちゃんと学んでる人が読むべきモノ、目を通すモノをかなりスルーして るのは分かってますすいません。
- 321 名前:Name_Not_Found mailto:sage [2006/11/30(木) 20:54:00 ID:???]
- 長文レスって、簡潔に情報を伝える能力の欠如なんだけど、
はっきり言って馬鹿の一言に尽きるね。
- 322 名前:Name_Not_Found mailto:sage [2006/11/30(木) 20:57:51 ID:???]
- >>320
長文読まずの書き込みですが、 他人に質問した時点で、自己解決ではないと思います。
- 323 名前:Name_Not_Found mailto:sage [2006/11/30(木) 21:21:59 ID:???]
- >>313のアドバイスで下二つは間違い、一番上が合っている、と下二つを切り捨てることができた。
一番上に絞ることができ、なおかつ文法があっているからエラーメッセージの通り401.htmlが見つからない、とまで指摘されている。 ここで文法が間違ってるかどうかを見直す手間は省いてもらえた。 残る可能性は401.html自体が存在していないか、置き場所を間違えているかどちらか。 ここまで彼のアドバイスで教えてもらえたことになる。が、彼は君のPCの中を見ているわけじゃないので、これ以上は無理。 そして、そこから先は実際の画面を見ることができる君の作業になる。 まるまる教えてもらって、最後の詰めは自分でやりなさいよ、という状態まで持ってきてもらったんだから、 自己解決というのはちょっと、ポカーン・・・ じゃ無いのかしら
- 324 名前:312 mailto:sage [2006/11/30(木) 22:37:32 ID:???]
- >>321
簡潔にすると途中が分かりにくくなるのでいやなんですよ、努力はしてますが。 >>322 その通りですね、すいません。 >>323 まさにその通りですね、反省しておりますorz、自分のような未熟者が他にも同じように悩んでいたらと思って 確認の意味で書いたんですが、余計なお世話となってしまいました、「自己解決」と書かずに「解決しました」 と書けばよかったかな。 場を荒らしてしまい申し訳ありませんでした、失礼します。
- 325 名前:Name_Not_Found mailto:sage [2006/11/30(木) 23:10:12 ID:???]
- どんな解決のしかたをしたかは、答えた方や同じ悩みを参考にしたい人の為にも書いておくべきかしら。
あなたの言うとおり、「解決しましたー」と書いてから解決方法を書けばよかったかしらー。
- 326 名前:Name_Not_Found mailto:sage [2006/12/01(金) 20:05:25 ID:???]
- すみません、1時間ほどテンプレサイトやgoogle先生で調べたり悩んだりしているのですが、どうしてもわからないのでお教えください。。。
初歩的な質問とはおもうのですが・・・ あるページを同ドメイン内の別のページの別ファイル名のファイルに移動した場合、 Redirect permanent /hoge/test.html www.hoge.com/hogehoge/test2.html などと書いてリダイレクトするのはわかるのですが、 もしも、ディレクトリ直アクセスで、index.htmlが呼び出されている場合に、 Redirect permanent /hoge/index.html www.hoge.com/hogehoge/index.html Redirect permanent /hoge/ www.hoge.com/hogehoge/index.html とやっても、飛ばしてくれません。 このような場合には、どのような記述をすればよろしいのでしょうか。どなたか偉い人おおしえくださいませ。
- 327 名前:Name_Not_Found mailto:sage [2006/12/01(金) 20:31:32 ID:???]
- 追記。IEでは
Redirect permanent /hoge/index.html www.hoge.com/hogehoge/index.html これで飛ばしてくれるのですが、firefox等ではだめなのです・・・
- 328 名前:Name_Not_Found mailto:sage [2006/12/01(金) 21:55:07 ID:???]
- >>326-327
言い訳はやめとけ。 さて、/hoge/って何の意味?単なるディレクトリなら>>327で合ってるが。
- 329 名前:Name_Not_Found mailto:sage [2006/12/02(土) 09:39:08 ID:???]
- そうね。
hoge.comは実在し、www.hoge.comは商用サイトとして実際に運用されているから、 URLの例示として使うのはいただけないのだわ。 IEでできてFirefoxではできないって場合はブラウザの設定が原因かもしれないのだわ。 /hoge/ を /hogehoge/ への書き換えの他にドメインも書き換えてるようなら クロスドメイン時のセキュリティ周りの設定を確認してちょうだい。
- 330 名前:259 mailto:sage [2006/12/04(月) 00:24:06 ID:???]
- 結果報告です。
11/10に出した質問メールの返事が鯖管の方から今日来ました。 301リダイレクトは使用できないようです・・・。 今週中にはドメインが移転できるようになるので、速攻で新しい鯖に移します。 みなさんのおかげで、見切りをつけることができて新しい鯖とも契約済みなのでスムーズに移れます。 ありがとうございました。
- 331 名前:294 mailto:sage [2006/12/05(火) 06:17:08 ID:???]
- 少し前に質問させていただいた者ですが、未だ解決しておりません;
Serene Bachで、ジャンルごと、ページごとに生成される拡張子に悪戦苦闘しています AddType application/x-httpd-php .cgiはもちろん、 >>295さん、>>298さんに教えていただいた方法でも無理ですorz 教えていただけると幸いです。
- 332 名前:Name_Not_Found mailto:sage [2006/12/05(火) 09:04:17 ID:???]
- >>331
そもそもApacheでないというオチとか?
- 333 名前:327 mailto:sage [2006/12/05(火) 11:14:42 ID:???]
-
>>328さま >>329さま そうでした。例はexample.comですよね。すみません。 ブラウザの設定上の問題ですか。安心しました。 どうもありがとうございました。
- 334 名前:Name_Not_Found mailto:sage [2006/12/05(火) 17:34:58 ID:???]
- >>331
| `ヽ、 _ .. -―===‐- .._ 、ミ川川川彡 | \ , ≠-―――- .._ \ -ミ 彡 , -┴==――- .. _ 〉'´ 、 `ヽ ヽ三 ギ そ 三 . //´ 、 、 / 、 \ \ ヽ. 三. ャ れ 三 { / , -‐ァ===‐- .._ ヽ ∨ / 、\ \ \ ヽ 三 グ は 三 \/ / /, { `ヽ ! / }ヽ. ヽ、 ヽ、__ ..二、 三. で 三 , ' , ' // ハ | ト、 |l { /二ヽ `¨¬x=-ミ_‐┐ 三 言 ひ 三 / /_, / //∠=ヽ、 } lハlハ イィ::f_} \ ´ vイ} ´ /} 三 っ ょ 三 l / { ,ィf´ ノノ 7f_j`ゞV } |__ハ {` ゙ー' `  ̄ ノ,′ /三. て っ 三 j∧ 「{kツ ゙ー' / ,′厂´ \ ヽ、 ` u / イ 三 る と 三 ヽ{ ` u. ノ / / {{爪 -:‐ ー=彡イ / 三 の し 三 八 ´` ー=イ fl / { \ ..:::::::::〈 / 三 か て 三 ハ\ ...::::::| jハ{ { + \__..:::::::::::::::::∨ ┼ 三 !? 三 \{` ー‐、.:::::::::::| / { + } / ∧:::::,. -‐/ 〃彡 ミ ` 」::::::/j /\ /{ + } ≠x 〉´ / + 〃r 彡川川川ミ /x=く ´ _f〜、 / /Y´‐} 〃}}、 /´ ̄ Y 〃 ノ ハ \ \ f^ア 〃ノハ ヽ ノメ〜ヽ / / { ニ} {{ 〃}} {二 | 〃f´ / } ヽ ヽ 環境かけよ
- 335 名前:Name_Not_Found mailto:sage [2006/12/05(火) 18:27:06 ID:???]
- >>331
> AddType application/x-httpd-php .cgi AddType は HTTPヘッダーを指定するためのもの。 "application/x-httpd-php" などの指定は現在の Apache では推奨されない。 AddHandler を使うべきだ…。 httpd.apache.org/docs/2.2/mod/mod_mime.html#addhandler …と思ったけど、モジュール版php では今も AddType を使わざるを得ないのか。
- 336 名前:Name_Not_Found mailto:sage [2006/12/05(火) 19:03:25 ID:???]
- _
,'´r==ミ、 卯,iリノ)))〉 /`-|l〉l.゚ ー゚ノlノ\ AddHandler php-script .php ってのも レ´V|!/'i)卯iつVヽ! あるらしいわぁ? ''y /x lヽ
- 337 名前:335 mailto:sage [2006/12/05(火) 19:09:09 ID:???]
- >>336
そうなのか 使ってみようとおもう ありがとーヽ(゚∀゚)ノ
- 338 名前:Name_Not_Found mailto:sage [2006/12/05(火) 19:21:44 ID:???]
- .ィ/~~~' 、
、_/ /  ̄`ヽ} ,》@ i(从_从)) ||ヽ|| ゚ -゚ノ| || 待ちなさい、手元のPHP-5.2.0では || 〈iミ''介ミi〉|| php5-scriptの文字列しか定義されてないのだわ。 ≦ ノ,ノハヽ、≧ php-4.xはphp4-scriptの可能性があるのだわ?
- 339 名前:335 mailto:sage [2006/12/05(火) 19:26:48 ID:???]
- >>338
う、うん、待ってみる…。 うわーん待ちきれない(ノ_・。)グスン
- 340 名前:Name_Not_Found mailto:sage [2006/12/05(火) 19:33:20 ID:???]
- ___
く/',二二ヽ> ちゃんと調べてから言いやがれ〜っ、 |l |ノノイハ)) php-4はphp-script、php-5はphp5-script、 l∩#゚听∩ どっちもApache 2.xのハンドラモジュールでないと ノ弋l_介」ン 使えないですぅ!
- 341 名前:335 mailto:sage [2006/12/05(火) 19:43:03 ID:???]
- >>340
了解ですー。 漏れは php5 なので AddHandler php5-script .php してみますね。 ハンドラモジュールってのは httpd.apache.org/docs/2.2/mod/ 見ても無かったんですが、 mod_mime (Baseモジュール) ってことでしょうか…。
- 342 名前:Name_Not_Found mailto:sage [2006/12/05(火) 19:44:16 ID:???]
- ┌──┐ AddTypeのapplication/x-httpd-phpとapplication/x-httpd-php-sourceの
i二ニニ二i 文字列の比較を経てからようやくAddHandlerのphp5-scriptと比較される i´ノノノヽ))) みたいだから、コンテントネゴシエーションで問題が出てるとか出なければ Wリ゚ -゚ノリ 無理に使わなくてもいいと思うんだ。 AddTypeが使えないならAddHandlerも使えないし。
- 343 名前:294 . 331 mailto:sage [2006/12/05(火) 19:45:23 ID:???]
- お答え頂き有難うございます
調べたところ、ウェブサーバー:Apache と書いてありましたが・・・ 結局どう書けば良いのでしょうか
- 344 名前:Name_Not_Found mailto:sage [2006/12/05(火) 20:28:47 ID:???]
- ___ Apache2用のPHPモジュールには
く/',二二ヽ> <Files *.php> |l |ノノイハ)) SetInputFilter PHP |l |リ゚ ー゚ノl| SetOutputFilter PHP ノl_|(l_介」).| </Files> ≦ノ`ヽノヘ≧ として使うフィルタ版があるですぅ。 それと比較してハンドラと言ったまでですぅ。 >>343 AddTypeやForceTypeでInternal Server ErrorならAddTypeとForceTypeの 上書き許可が無いですぅ。 Internal Server Errorも出やがらないなら、.htaccess自体使えないですぅ。
- 345 名前:Name_Not_Found mailto:sage [2006/12/07(木) 14:31:47 ID:???]
- 211.94.0.0-211.103.255.255
219.142.128.0-219.142.191.255 58.0.0.0-58.255.255.255 72.232.0.0-72.232.255.255 これらを弾きたいんですが 211.94.0.0/21 こんな感じにするには どういうふうに計算すればよいのでしょうか?
- 346 名前:Name_Not_Found mailto:sage [2006/12/07(木) 15:29:31 ID:???]
- 0 & 0 = 0, 0 & 1 = 0, 1 & 0 = 0, 1 & 1 = 1 の計算を知ってないと説明は難しいですぅ。
サブネットマスクってやつぁ、なかなか見どころがあるですぅ。
- 347 名前:Name_Not_Found mailto:sage [2006/12/07(木) 16:22:17 ID:???]
- >>346
漏れはサブネットマスクの計算はできるけど、 「0 & 0 = 0, 0 & 1 = 0, 1 & 0 = 0, 1 & 1 = 1 の計算」 の意味が分からんな。 プログラミング言語のif文とかの、 条件1が偽 ∩ 条件2が偽 … 偽 条件1が偽 ∩ 条件2が真 … 偽 条件1が真 ∩ 条件2が偽 … 偽 条件1が真 ∩ 条件2が真 … 真 のこと? サブネットマスクとどういう関係があるのやら
- 348 名前:Name_Not_Found mailto:sage [2006/12/07(木) 18:30:20 ID:???]
- >>347
へー、理解はしてなくても計算はできるものなんだ。
- 349 名前:347 mailto:sage [2006/12/07(木) 19:01:45 ID:???]
- >>348
うんと、漏れは、例えば、>>345 の 211.94.0.0-211.103.255.255 をサブネットマスク表記にしたかったら、 211.94.0.0 を 2進数に直して、 11010011 01011110 00000000 00000000 211.103.255.255 を 2進数に直して、 11010011 01100111 11111111 11111111 としてる。 211.94.0.0-211.103.255.255 の範囲を全て含むサブネットマスク表記を考えると、 共通している部分は 11010011 01 なので、その部分まで固定可能となる。 00000000 〜 01111111 … 0 〜 127 ※1桁固定 01000000 〜 01111111 … 64 〜 127 ※2桁固定 01100000 〜 01111111 … 96 〜 127 ※3桁固定するともうだめ 、 この場合の適切なサブネットマスクは、/10 って感じで。 つまり、 サブネットマスク表記: 211.64.0.0/10 範囲: 211.64.0.0 - 211.127.255.255 最小: 11010011 01000000 00000000 00000000 (211.64.0.0) 最大: 11010011 01111111 11111111 11111111 (211.127.255.255)
- 350 名前:Name_Not_Found mailto:sage [2006/12/07(木) 19:51:00 ID:???]
- 345です
みなさんレスありがとうございます うー、すごい難しいんですね 諦めますorz ちなみに 211.94.0.0-211.103.255.255 こういうふうに書いていても、弾くことはできませんよね?
- 351 名前:Name_Not_Found mailto:sage [2006/12/07(木) 19:51:23 ID:???]
- 一番難しいものを選んで範囲外まで誤爆なんて、無様ね。
- 352 名前:Name_Not_Found mailto:sage [2006/12/07(木) 20:18:14 ID:???]
- >>350
とりあえず、AllowやDenyで許されてるのは ttp://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#allow ここに書いてある通りなのだわ。 ドメイン名はDNSの2重逆引きの応答を待つ時間のレスポンスの悪さが 嫌われているのだわ。 IPアドレスの1部ってのも余計な処理が加わるけど、これは無視できる レベルなのだわ?
- 353 名前:Name_Not_Found mailto:sage [2006/12/07(木) 20:37:17 ID:???]
- Apache 側で次のようなアクセス制御を行ないたいと思います。
アクセス制御は POST のみでいいので、全体を <Limit POST> で囲います。 次のような制御を行いたいのですが、Order Allow Deny Allow といった3段階の制御はできません。 1. 日本国内に割り当てられているIPアドレスを許可する。 次のリストのIPアドレスをCIDR形式で Allow ftp://ftp.apnic.net/pub/apnic/stats/apnic/delegated-apnic-latest ftp://ftp.arin.net/pub/stats/arin/delegated-arin-latest 2. 荒らし行為を行ったISPを Deny する。 例えば、「.kyoto01.so-net.ne.jp」 を Deny。 再接続すればIPアドレスは1桁目から変わるので、IPアドレスベースでのDenyは現実的ではない。 3. 巻き添えになった人を Allow なので、SetEnvIf を使うことになるかとおもいますが、SetEnvIf だと必要な場合のみ逆引きを行う、といった設定ができません。 また、<Limit POST> の次に Allow from .example.com などといれて強制的に逆引きさせても、 それは SetEnvIf では原則的に取得できないようです。(何度もやるとできる場合もありますが不安定です。Keep-Aliveの関係?) 全てのリクエストに対して逆引きする設定をしたら、期待の動作ができましたが、それだとDNSへの負荷が高くなり、遅延も発生します。 なので、POSTのみ逆引きする設定をしたいのですが、良い方法はないでしょうか? よろしくお願いします。
- 354 名前:Name_Not_Found mailto:sage [2006/12/07(木) 20:42:22 ID:???]
- >>350
211.94のIPアドレスの一部で書いても211.94から211.103までのたったの10個なのだわ。 サブネットマスクで誤爆なく説明も入れると長文になりすぎるから我慢してちょうだい。 他の3つは 219.142.128.0/18 58 72.232 でいけるのだわ。
- 355 名前:Name_Not_Found mailto:sage [2006/12/07(木) 20:53:41 ID:???]
- どのページにアクセスしてもindex.htmlに飛ばしたいんですけどどうしたらいいですか?
- 356 名前:Name_Not_Found mailto:sage [2006/12/07(木) 21:58:45 ID:???]
- >>353
1.はAllowで考えるとJPに割り当てられたアドレスってことになるけど、 Denyで考えればJPに割り当てられていないアドレスってことになるわぁ。 2.荒らしのIPアドレスと一緒にJPに割り当てられていないアドレスもDenyしてしまえば Order deny,allowで1.は省けるわぁ。 すべてのリクエストに対して逆引きするような設定ができる立場なら、Webサーバと 同じサーバか隣のマシンにキャッシュ目的のDNSサーバを立ててしまうといいわぁ >>355 素直にリライトするのねぇ。 403や404のエラードキュメントをttp://example/index.htmlにするのもあるけど、 index.htmlもなかったら大変よぉ? Redirect / ttp://example/index.html なんて直接行ったらループするだけだわぁ。
- 357 名前:Name_Not_Found mailto:sage [2006/12/07(木) 21:59:24 ID:???]
- >>355
その質問だとindexだけ置けばいいやんと言う事に
- 358 名前:356 mailto:sage [2006/12/07(木) 22:05:07 ID:???]
- >>356
キャッシュDNSサーバたてるというのは合理的かもしれません。 > 2.荒らしのIPアドレスと一緒にJPに割り当てられていないアドレスもDenyしてしまえば > Order deny,allowで1.は省けるわぁ。 良い方法だとは思うのですが、JPに割り当てられていないIPアドレスというのは、 どうやって調べることができるんでしょうか? SetEnvIfでは ネットマスクを使った表記ができないので、フラグをたてたり倒したりしてやるのは現実的じゃないとおもいますし・・・。 よろしくおねがいします。
- 359 名前:Name_Not_Found mailto:sage [2006/12/07(木) 22:21:43 ID:???]
- >>358
簡単よぉ。 0.0.0.0〜255.255.255.255からJPに割り当てられた分をすべて取り除けば JPに割り当てられてないIPアドレスが残るわぁ。 どこにも割り当てられてないIPアドレスのリストもあるわぁ。 ttp://www.cymru.com/Documents/bogon-bn-agg.txt
- 360 名前:Name_Not_Found mailto:sage [2006/12/07(木) 22:25:36 ID:???]
- >>358
2.のISP丸々弾く→巻き添えを一々救済、という方法こそ現実的ではないと思う。 荒らしIPを地道に弾いた方がマシだろう。 まあそうするとヤル気のある敵は串使って来たりするんだが。根比べだね。
- 361 名前:356 mailto:sage [2006/12/07(木) 22:37:54 ID:???]
- >>360
> 2.のISP丸々弾く→巻き添えを一々救済、という方法こそ現実的ではないと思う。 掲示板サイトを長期間運営している経験上、これは効率的です。 プロキシは、サイバーシンドロームと各種大手プロキシサイトのを自動収集していますし、 国外IP拒否で大抵のプロキシは防げるので…。 So-net なんかは割り当て範囲が50個近くあるので、IPベースでのBANは困難です。 (荒らしのIP上3桁のどれかが違うのが50個)
- 362 名前:Name_Not_Found mailto:sage [2006/12/07(木) 22:38:16 ID:???]
- >>356
待ちなさい。無理にリライトしなくてもRedirectMatchでゴリ押しする方法もあるのだわ。 RedirectMatch ^/$ example.com/index.html RedirectMatch ^/[^i] example.com/index.html RedirectMatch ^/i[^n] example.com/index.html RedirectMatch ^/in[^d] example.com/index.html RedirectMatch ^/ind[^e] example.com/index.html RedirectMatch ^/inde[^x] example.com/index.html RedirectMatch ^/index[^\.] example.com/index.html RedirectMatch ^/index\.[^h] example.com/index.html RedirectMatch ^/index\.h[^t] example.com/index.html RedirectMatch ^/index\.ht[^m] example.com/index.html RedirectMatch ^/index\.htm[^l] example.com/index.html RedirectMatch ^/index\.html..* example.com/index.html
- 363 名前:Name_Not_Found mailto:sage [2006/12/07(木) 22:47:26 ID:???]
- >>361
じゃあso-netの救済も1人につき50個近くあるわけだよね。 マトモな来訪者より、荒らしの数の方が多いんだ。コンテンツに問題あるんじゃね?
- 364 名前:356 mailto:sage [2006/12/07(木) 22:59:59 ID:???]
- >>363
救済は、CookieのトラッキングIDでやってます。 大抵の人はCookie消したりしないので基本的には問題発生してません (ちなみに、トラッキングIDでのDenyは SetEnvIf でやってます。)
- 365 名前:Name_Not_Found mailto:sage [2006/12/08(金) 02:05:02 ID:???]
- うんうん、そういうのやってたよ。
でもcookie offの人は多い。onにして下さいとか注意書き入れてたりしたけど、 メンドい事言うなと掲示板に書かれた事もある。 結局のところあまり神経質になっても本末転倒なんで、 ホントに悪質な人だけに的を絞る方針にしたけど。 ところで356じゃなくて、353じゃないの?まさか自演?
- 366 名前:353 mailto:sage [2006/12/08(金) 02:07:40 ID:???]
- >>365
ごめん番号間違えた(´・ω・`) 自演じゃないです 一応Cookieを拒否している人&アクセス規制対象ISPに対してはアカウント取得するようにアナウンスしてます ちなみにアク禁の対象にしているのは極めて悪質なケースだけですが 1日5万PVぐらいはあるので変な人がいっぱいくるんです
- 367 名前:Name_Not_Found mailto:sage [2006/12/08(金) 02:24:38 ID:???]
- htaccessだけでは無理だと思うよ。
サイト収入があるなら、お金出す事も検討すれば?cgiになるだろうけど。
- 368 名前:353 mailto:sage [2006/12/08(金) 02:42:48 ID:???]
- >>367
スクリプトが色々あるのでCGIを使わずにできれば楽かな、と思ってました。 HostNameLookups で全て逆引きOKにしている状態では、htaccess の SetEnvIf 使っていけたので、 POSTの時だけ逆引きにできればいけるかな、と思ったんですが無理そうですね。 ファイル名指定ではいけるので発想を変えて、<Files> で CGIのPOST用のファイルを指定 (CGIは閲覧用とPOSTの2つにコピー) して POSTのファイル名のときだけ逆引きするようにします。 これだと htaccess だけで完結してスマートかな、と。 ありがとうございました。
- 369 名前:Name_Not_Found mailto:sage [2006/12/08(金) 11:54:47 ID:???]
- HostNameLookupsをさわれる(httpd.confをさわれる)なら、そっちに書きやがれですぅ!
- 370 名前:Name_Not_Found mailto:sage [2006/12/08(金) 18:23:01 ID:???]
- 各ディレクトリのindex.htmlやindex.phpに接続された場合、
/で終わるように転送させたいと思っています。 ttp://pmakino.jp/tdiary/20061105.html ここと>>104を参考にしましたが、転送されません。 とりあえずindex.htmlだけで試していますが、 以下のもの(上記サイトに載っていたもの)ではだめでした。 RewriteEngine on RewriteCond %{REQUEST_URI} (.*/)index\.html?$ RewriteRule .* %1 [R=301,L] 使用しているサーバはApacheを使っているようですが、 ヘッダやサポートページを見たところではバージョンがわかりませんでした。 どのように書けばよいのか、助言をくださるとありがたいです。
- 371 名前:Name_Not_Found mailto:sage [2006/12/08(金) 20:11:48 ID:???]
- 質問です。
拡張子がhtmlのファイルを拡張子なしでも表示できるようにしたいのですが、 (例えばwww.example.com/example.htmlをwww.example.com/exampleと表示) 以下のようにしてみてもうまくいきません。 どうすればいいでしょうか。よろしくお願いします。 <FilesMatch ".*\.html"> RewriteEngine On RewriteRule ^(.*) $1.html [R=301,L] </FilesMatch>
- 372 名前:Name_Not_Found mailto:sage [2006/12/08(金) 20:34:59 ID:???]
- >>370-371
2人ともまずmod_rewriteが使える鯖なのか確認。
- 373 名前:371 mailto:sage [2006/12/08(金) 20:44:19 ID:???]
- >>372
この前問い合わせたんだけど、 「mod_rewriteのご使用に関しましても特に制限はございません。」 とのことです。
- 374 名前:Name_Not_Found mailto:sage [2006/12/08(金) 21:35:50 ID:???]
- >>373
>例えばwww.example.com/example.htmlをwww.example.com/exampleと表示 これは有り得ないだろ。
- 375 名前:371 mailto:sage [2006/12/08(金) 21:49:19 ID:???]
- >>374
ttp://pi8027.flnet.org/とかttp://web.xii.jp/iec/とか ttp://overknee.info/とかではできているのですが…。
- 376 名前:Name_Not_Found mailto:sage [2006/12/08(金) 22:08:17 ID:???]
- >>371
これはMultiViewsが常套手段だろ
- 377 名前:Name_Not_Found [2006/12/08(金) 22:15:53 ID:GmHanQ9H]
- pc8.2ch.net/test/read.cgi/php/1108362994/l50から誘導されてきますた
index.phpやdefault.phpなどのファイルの拡張子を全てhtml拡張子で表示させていんですけど、 どうすればいいですか?
- 378 名前:Name_Not_Found mailto:sage [2006/12/08(金) 22:26:32 ID:???]
- >>377
RedirectかRewrite。このスレ内に何度も何度も出て来るからよく読んで。
- 379 名前:Name_Not_Found mailto:sage [2006/12/08(金) 22:27:49 ID:???]
- >>371
自分の書いてる事よーく見てみろ。本当にそうしたいのかも。
- 380 名前:371 mailto:sage [2006/12/08(金) 22:49:17 ID:???]
- >>377
できました。ありがとうございました。 >>379 よーく見てみましたが、何も分かりませんでした。
- 381 名前:377 mailto:sage [2006/12/08(金) 23:09:23 ID:???]
- >>380
?? >>378 スレ検索したけどわかんねぇorz とりあえず RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f ってことはわかるんだけど、最後に書くルールがわからなひ。 /usr/lcoal/apache2/htdocs/example.com/*.phpの全てのファイルを指定したい場合ってどうすりゃええのん?
- 382 名前:370 mailto:sage [2006/12/08(金) 23:21:12 ID:???]
- >372
Content-Typeの振り分けなどのため、すでに使っています。 特に問題はないようです。
- 383 名前:Name_Not_Found mailto:sage [2006/12/09(土) 01:32:39 ID:???]
- お願いします。。
.htaccessが対応されてるレン鯖で携帯のみを許可にするため以下を 設定しました。 order deny,allow deny from all allow from 210.169.40.0/24 allow from 210.196.3.192/26 ・ ・ ・ そして携帯からアクセスした所 .htaccessが入れられているフォルダのパーミッションを755 .htaccessのパーミッションを644にすると500エラー .htaccessのパーミッションを600にすると403エラー .htaccessが入れられているフォルダのパーミッションが700で .htaccessのパーミッションを644にすると403エラー .htaccessのパーミッションを600にすると403エラー になります。。 携帯からのIPアドレスを確認し自分のIPアドレス帯域も許可してアクセスして いるのですが...なぜでしょうか。。
- 384 名前:Name_Not_Found mailto:sage [2006/12/09(土) 01:57:34 ID:???]
- OSの使い方はこのスレの管轄外よぉ。
パーミッションはディレクトリ(フォルダ)が0755、.htaccessが0644の 500エラーになった組み合わせが正解よぉ。 500エラーになるのは.htaccessの中身が不正って事よぉ。 .htaccessで使用できない設定を使ってないか、誤字脱字余計な文字がないか 確認して、FTPはアスキー(テキスト)モードを使ってアップロードしなさいよぉ。
- 385 名前:Name_Not_Found mailto:sage [2006/12/09(土) 02:15:47 ID:???]
- >>384
最後は改行をし誤字脱字チェックをしアスキーモードでアップロード したのですがこうなってしまいます。。。 おとといあたりからずっとこんな感じなんですよ・・頭が痛い; もうPHPでやった方がいいですね、、 こんな夜中にすみません、レスありがとうございます。
- 386 名前:Name_Not_Found mailto:sage [2006/12/09(土) 16:03:02 ID:???]
- .htaccessが効いてない状態で403になるのは、アクセスしたファイルの
パーミッションがWebサーバのユーザから読めないようになっている 可能性が高いのだわ? ディレクトリは最低でも実行許可のxを、ファイルは読み取り許可のrを 他の人のパーミッションに与えてちょうだい。
- 387 名前:Name_Not_Found mailto:sage [2006/12/09(土) 19:31:42 ID:???]
- 質問です。
ヤフーからのアクセスをはじきたいのですが SetEnvIf Referer "yahoo.co.jp" shutout order allow,deny allow from all deny from env=shutout であってますか?(最後はちゃんと改行しています) これをftpでアスキーモードで転送、txtを消して.htaccesファイルにしてるんですが 500エラーが出てヤフー以外からも見る事が出来なくなってしまいした。 どこかおかしな所があれば教えて貰えないでしょうか?
- 388 名前:Name_Not_Found mailto:sage [2006/12/09(土) 20:42:29 ID:???]
- >>387
何勝手にurl省略してんの?
- 389 名前:Name_Not_Found mailto:sage [2006/12/09(土) 21:00:06 ID:???]
- ヤフーがどこでもいいから入っていればって意味になるから問題ないですぅ!
txtをtxt、ftpをftpと書いちゃう>>387はもっとよく誤字脱字を探しやがれですぅ!
- 390 名前:387 mailto:sage [2006/12/09(土) 21:33:26 ID:???]
- うぅーん、誤字脱字(大文字小文字)チェックしたつもりなんですが
387のでどこかまずい所ありますか? ファイルは一番上(って言うんでしょうか)に置いたんですが 置き場所が悪いんでしょうか… さっぱりわかりません…
- 391 名前:387 mailto:sage [2006/12/09(土) 21:45:53 ID:???]
- あっ、ファイル名はちゃんと.htaccessにしてます!
- 392 名前:Name_Not_Found mailto:sage [2006/12/09(土) 21:58:30 ID:???]
- >>389
お前いい加減な事ばっか言うよな。 他人の回答に一々突っ込むなら、正しく突っ込め。 >>390 ネカマの言う事だけ聞くんだ。アンタもアンタだよね。
- 393 名前:Name_Not_Found mailto:sage [2006/12/09(土) 22:07:18 ID:???]
- >>392
389の口調は漏れは好きなんだが… 以前漏れがお世話になった人だしあまり苛めないでくれ
- 394 名前:387 mailto:sage [2006/12/09(土) 22:10:49 ID:???]
- >>392
url省略せずに置いても機能しなかったので、煽りかと思ってしまいました。 気を悪くさせてしまったならすみません。
- 395 名前:Name_Not_Found mailto:sage [2006/12/09(土) 22:45:13 ID:???]
- >>394
へえ。じゃあ他の指定は有効なの?
- 396 名前:Name_Not_Found mailto:sage [2006/12/09(土) 22:49:53 ID:???]
- >>393
漏れとかナリキリとか、どっから湧いてくるんだ? このスレは腐臭を放っているが、原因は明白だ。
- 397 名前:Name_Not_Found mailto:sage [2006/12/09(土) 23:21:59 ID:???]
- 40代50代の負けず嫌いのおっさんはどこから湧いてくるんだ?
- 398 名前:Name_Not_Found mailto:sage [2006/12/10(日) 00:26:04 ID:???]
- いっぱいいるんでね?
- 399 名前:Name_Not_Found mailto:sage [2006/12/10(日) 00:46:07 ID:???]
- >>390
まだ全角スペースを見落としてそうだわぁ。 メモ帳でも編集メニューの検索で簡単に見つけられるし、置換を使えば 簡単に半角スペースに置き換えられるわぁ。
- 400 名前:Name_Not_Found mailto:sage [2006/12/10(日) 01:50:09 ID:???]
- キモ
- 401 名前:Name_Not_Found mailto:sage [2006/12/10(日) 02:00:56 ID:???]
- ホルモン
- 402 名前:370 mailto:sage [2006/12/10(日) 04:42:36 ID:???]
- まさかとは思うが
「新規テキスト文書.htaccess」なんてことになっていないだろうか。 テキストエディタによっては、 全角スペースがそれとわかるように表示してくれるものがある。 自分の使っているソフトは、デフォルトの設定だとただの空白に見えるけれど。
- 403 名前:Name_Not_Found mailto:sage [2006/12/10(日) 15:05:18 ID:???]
- httpd.conf でこう設定してあるとします。
<FilesMatch "(^\.|(dat|inc|log|txt)$)"> Order Allow,Deny Deny from all </FilesMatch> その状態で、.htaccess で Order Deny,Allow Allow from all としても、拡張子が dat のファイルは閲覧できませんでした。 普通は Order は 1個しか指定できないので、.htaccess で上書きされるはずなのですが、 これは何故でしょうか? FilesMatch の範囲にはいっているファイルは .htaccess が無視されて、 FilesMatch が優先されるのでしょうか? ご教示お願いします。
|
|