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
2 名前:Name_Not_Found mailto:sage [2006/09/09(土) 01:42:30 ID:???] .htaccessファイル(「分散設定ファイル」)の書き方・使い方などに関するスレです。 【Apacheドキュメント】 ・ Apache チュートリアル: .htaccess ファイル httpd.apache.org/docs/2.2/howto/htaccess.html ・ Apache 2.2ドキュメント httpd.apache.org/docs/2.2/ ・ Apache 2.0ドキュメント httpd.apache.org/docs/2.0/ ・ Apache 1.3ドキュメント httpd.apache.org/docs/1.3/ ・ Apache Trunkドキュメント httpd.apache.org/docs/trunk/ ・ Apache チュートリアル:認証、承認、アクセス制御 httpd.apache.org/docs/2.2/howto/auth.html ・ Apache モジュール mod_access(アクセス制御) httpd.apache.org/docs/2.2/mod/mod_access.html ・ Apache モジュール mod_auth (認証) httpd.apache.org/docs/2.2/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 【参考サイト】 ・ ミケネコの 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/
3 名前:Name_Not_Found mailto:sage [2006/09/09(土) 12:20:12 ID:???] まぁ>>1 、おつかれちゃーん
4 名前:Name_Not_Found mailto:sage [2006/09/09(土) 13:36:41 ID:???] 前スレ .htaccess質問コーナー Part4 pc8.2ch.net/test/read.cgi/hp/1128774075/
5 名前:Name_Not_Found [2006/09/09(土) 14:27:40 ID:6o7YX4bF] Content-Typeとオプションパラメータのcharsetを: AddType "text/html; charset=Shift_JIS" .html と、.htaccessに記述したのですが、ディレクトリインデックスやコンテントネゴシエーションのように 拡張子を指定しないで参照するとContent-Typeが送信されません。 どうしたらいいのでしょうか?
6 名前:Name_Not_Found mailto:sage [2006/09/09(土) 16:09:15 ID:???] そんなところにcharsetなんて設定しちゃまずいんでないかい? AddType text/html .html AddCharset Shift_JIS .html
7 名前:Name_Not_Found mailto:sage [2006/09/09(土) 17:16:05 ID:???] %{REQUEST_URI}が「/」の時は RewriteCond %{REQUEST_URI} ^(.)$ あるいは RewriteCond %{REQUEST_URI} ^(/)$ で表現できるのですが、 %{REQUEST_URI}が「/」の時を除いた、「/a.html」「/b.dat」・・・・・ を表現するにはどうしたら良いのでしょうか?
8 名前:5 [2006/09/09(土) 21:17:22 ID:6o7YX4bF] >>6 え? そうだったのですか…… (;_;) まあ、とりあえず次のようにしてみたらイケました! RewriteEngine On RewriteRule \.html$ - "[T=text/html; charset=utf-8]" >>7 こういうこと? ^/[a-z]\.html$
9 名前:Name_Not_Found mailto:sage [2006/09/09(土) 21:50:08 ID:???] 質問しますね。 服が汗びっしょりで気持ち悪いんだけど、 お風呂に入ってくるよ。 いくぜ。
10 名前:7 mailto:sage [2006/09/09(土) 22:06:38 ID:???] >>8 レスサンクス やってみます
11 名前:Name_Not_Found mailto:sage [2006/09/10(日) 08:34:52 ID:???] 突然すみません。 SetEnvIf Referer "^hoge\.hoge\.com/" ref_ok SetEnvIf Referer "^$" ref_ok <Files ~ "\.(gif|jpg|png|swf|3g2|wmv|mp3|avi|lzh|zip)$"> order deny,allow deny from all allow from env=ref_ok </Files> と SetEnvIf Accept-Language XX Lilith order allow,deny allow from all deny from env=Lilith と SetEnvIf User-Agent "YYYYYY" allow_ua order deny,allow deny from all allow from env=allow_ua を一緒に使いたいのですが、これってどうやって書けば・・・? いろいろ試したんですが、上手くいかないんです。
12 名前:Name_Not_Found mailto:sage [2006/09/10(日) 22:11:33 ID:???] >>11 例えばLilithであり、allow_uaだった場合どうしたいのかとか。 ref_okでLilithだった場合どうしたいのかとかの情報。
13 名前:Name_Not_Found mailto:sage [2006/09/10(日) 22:52:11 ID:???] そろそろ過去との互換性のために動くようになってるディレクティブはやめようぜ。
14 名前:Name_Not_Found mailto:sage [2006/09/13(水) 05:32:59 ID:???] >>11 ようするに、その3つを AND で使いたい(全て適用させたい)ってことだよね。 そのまま全部並べればいいんじゃないの? ########### この行からコード開始 # 1個目 SetEnvIf Referer "^hoge\.hoge\.com/" ref_ok SetEnvIf Referer "^$" ref_ok <Files ~ "\.(gif|jpg|png|swf|3g2|wmv|mp3|avi|lzh|zip)$"> order deny,allow deny from all allow from env=ref_ok </Files> # 2個目 SetEnvIf Accept-Language XX Lilith order allow,deny allow from all deny from env=Lilith # 3個目 SetEnvIf User-Agent "YYYYYY" allow_ua order deny,allow deny from all allow from env=allow_ua ########### この行でコード終了 こう書けばおkじゃね? 試してないから大丈夫かはわからんけど
15 名前:14 mailto:sage [2006/09/13(水) 06:06:08 ID:???] 自分もこの方法でいいか気になるので もしよかったら教えて下さい><
16 名前:Name_Not_Found [2006/09/13(水) 09:42:04 ID:uzb8uKF4] ホームページ制作王は、世界の権威として名高いCOMDEXが 21世紀のワールドスタンダードに認定したWebパブリッシングアプリケーションである。 ホームページ制作王に不可能はない。 不可能があるとすれば、そこが人類の英知の限界点である。 21世紀、世界のWebはホームページ制作王を中心に回っていくのである。 にもかかわらず、ここ日本では、心ない風評のため、まだまだ普及に 遅れがみられる。 ホームページ制作王を普及させないかぎり、我が国のWebは、 世界の趨勢の後塵を拝するばかりである。 世界が認めた高性能!ホームページ制作王 pc8.2ch.net/test/read.cgi/hp/1106508682/
17 名前:Name_Not_Found mailto:sage [2006/09/16(土) 01:54:57 ID:???] >>14 それだと<Files>で指定するファイルだけ参照元制限がかかり、あとは全許可。
18 名前:Name_Not_Found mailto:sage [2006/09/16(土) 07:00:48 ID:???] >>17 Order を複数書いたら、最後の「のみ」が適用されるからそうならないでしょ。 UserAgentが「YYYYYY」の時のみ、アクセスできる、ってのが適用されると思う。 Filesの部分は範囲が違うようだけど、Filesの正規表現が満たしている場合のみ、 要素(element)内のコマンドが解釈されるとすると、 やっぱり、UserAgentが「YYYYYY」の時のみ、アクセスできる、ってのが適用されると思う。
19 名前:Name_Not_Found mailto:sage [2006/09/16(土) 07:24:36 ID:???] エスパーみたいなキレのある回答をする人はどこ行っちゃったんだろ?
20 名前:Name_Not_Found mailto:sage [2006/09/16(土) 13:46:06 ID:???] >>18 allow from allがあるから全許可だよ。
21 名前:Name_Not_Found mailto:sage [2006/09/19(火) 00:39:36 ID:???] テンプレサイトを見たりググったりしてもわからなかったので 質問したいのですが、 mod_gzipもしくはmod_deflateを使うために.htaccessに記載する 場合どのように記述したらいいのでしょうか?
22 名前:Name_Not_Found mailto:sage [2006/09/21(木) 15:06:37 ID:???] 誘導されてきました。 htaccessでBASIC認証をかけているんですが、複数のディレクトリにそれぞれ別の認証を設定すると 両方の認証を通ると、もう片方の認証が解けてしまいます。 これを解消するにはどうすればいいのでしょうか? 【例】 example.com/aaa/.htaccess example.com/bbb/.htaccess 両方とも別のhtpasswdを参照し、別のユーザ・パスワードを設定してある。
23 名前:Name_Not_Found mailto:sage [2006/09/21(木) 15:16:43 ID:???] >両方の認証を通ると、もう片方の認証が解けてしまいます。 は?
24 名前:Name_Not_Found mailto:sage [2006/09/21(木) 16:26:09 ID:???] >両方の認証を通ると、もう片方の認証が解けてしまいます。 ひ?
25 名前:Name_Not_Found mailto:sage [2006/09/21(木) 16:51:16 ID:???] >両方の認証を通ると、もう片方の認証が解けてしまいます。 ふ?
26 名前:Name_Not_Found mailto:sage [2006/09/21(木) 17:29:05 ID:???] >両方の認証を通ると、もう片方の認証が解けてしまいます。 へ?
27 名前:Name_Not_Found mailto:sage [2006/09/21(木) 18:10:18 ID:???] >両方の認証を通ると、もう片方の認証が解けてしまいます。 ほー。
28 名前:Name_Not_Found mailto:sage [2006/09/21(木) 20:38:57 ID:???] ばいばいきーん
29 名前:Name_Not_Found mailto:sage [2006/09/21(木) 23:14:46 ID:???] >>23-28 市ね
30 名前:Name_Not_Found mailto:sage [2006/09/21(木) 23:36:39 ID:???] 逆ギレワッショイ
31 名前:Name_Not_Found [2006/09/22(金) 08:56:34 ID:KUVRy1q4] こんにちは。 制限の書き方ですが、アクセス不許可対象に、 Non-AnonymousやSquidを入れた場合もプロキシ制限できます?? またこの書き方の場合、大手のプロパイダまで制限される可能性はありますか?
32 名前:Name_Not_Found [2006/09/23(土) 14:03:48 ID:g+KA+BKp] 逆引きできないIPからのアクセスだけを拒否することってできますでしょうか? 調べているのですが、なかなか見つからない…。
33 名前:Name_Not_Found mailto:sage [2006/09/23(土) 14:25:21 ID:???] HostNameLookups on SetEnvIf Remote_Host "^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$" damenyo order allow,deny allow from all deny from env=damenyo
34 名前:Name_Not_Found mailto:sage [2006/09/23(土) 14:32:36 ID:???] HostNameLookupsは.htaccessからは上書きできないんだがな。 >>32 Allowにfrom .jpなり何なりと設定するしかないよ。
35 名前:32 mailto:sage [2006/09/23(土) 14:37:36 ID:???] >>33 なるほど。 HostNameLookupsで強制的にDNS逆引きをONにしておいて、 それでもXXX.XXX.XXX.XXXを拒否する、と。 ありがとうございましたー。
36 名前:Name_Not_Found mailto:sage [2006/09/23(土) 14:39:15 ID:???] >>34 あれ、ダメなんですか。 今テスト中なので後で結果報告しまする。
37 名前:Name_Not_Found mailto:sage [2006/09/23(土) 15:00:09 ID:???] 以前いたキレのいい回答者はどこいっちゃったのかなぁ。
38 名前:32 mailto:sage [2006/09/23(土) 15:12:26 ID:???] 当方が使っている鯖では残念ながら>>33 は500 Internal Errorでした。 >>34 みたいにベタ書きするしかないみたいです…。 ありがとうございました。
39 名前:Name_Not_Found mailto:sage [2006/09/23(土) 15:23:12 ID:???] 残念ながらではなく、.htaccessでは使えないとマニュアルにも書いてあるから Internal Server Errorなんだが。
40 名前:Name_Not_Found mailto:sage [2006/09/23(土) 20:56:21 ID:???] HTTPヘッダで Last-modified を送りたいのですが、どうすれば出来るのでしょうか? Googleで検索してみたものの、見つかりませんでした。 もしかして.htaccessでは出来ないのでしょうか?
41 名前:Name_Not_Found mailto:sage [2006/09/23(土) 21:22:14 ID:???] >>40 .htaccessってHTTPヘッダ送る機能あったっけ?
42 名前:Name_Not_Found mailto:sage [2006/09/23(土) 21:37:52 ID:???] CGIの話だな。
43 名前:Name_Not_Found [2006/09/24(日) 02:10:09 ID:MNAgmQ3P] .htaccessによるBASIC認証で、大多数の人はIDとPASSの入力で普通に通過できるんですが ごくたまに入力するダイアログ自体が出ずに、直接401に飛ばされるという人がいます。 BASIC認証以外の制限はかけていません。 セキュリティソフトが関係しているとか、ブラウザののセキュリティレベルが高いとか そういったことが関係するのでしょうか? 原因についてもしお心当たりがありましたらアドバイスお願いできませんでしょうか。
44 名前:Name_Not_Found mailto:sage [2006/09/24(日) 02:25:12 ID:???] >>40 headerってディレクティブはあるYO! SSIでLast-Modified吐きたいとかなら www.kanzaki.com/docs/sw/http-header.html#ssi-xbithack
45 名前:Name_Not_Found mailto:sage [2006/09/24(日) 04:32:21 ID:???] ディレクティブはあってもExtensionになってるから、.htaccessスレとしては 使えるところと使えないところが出てくるがな。 >>43 AuthNameを英語にしてみるとかな。
46 名前:43 mailto:sage [2006/09/24(日) 08:11:34 ID:???] >>45 AuthNameは英語で日本語は使っていません(´・ω・`) こんな風に書いています。 AuthUserFile /hoge/hoge/.htpasswd AuthGroupFile /dev/null AuthName "enter" AuthType Basic <Limit POST GET> require valid-user </Limit> <Files ~ "^\.(htpasswd|htaccess)$"> deny from all </Files>
47 名前:Name_Not_Found mailto:sage [2006/09/24(日) 10:33:54 ID:???] >>46 少なからず、HTTPヘッダでの認証をサポートしていないユーザーエージェントもあるよ。 サーバサイドプログラム(CGIなど)を使うのが一番確実じゃない?
48 名前:Name_Not_Found [2006/09/24(日) 18:17:14 ID:AipklFgD] 初めまして。 鯖はデジタルスペースのアダルトプランです。 htdocsディレクトリ以下にcgiを置けるのですが、cgiとssiを許可しても、同じcgiプログラム内でユーザー入力データが受け渡し出来ずにエラーになります 詳しい方教えてください
49 名前:Name_Not_Found mailto:sage [2006/09/24(日) 18:38:30 ID:???] >>46 そういう解説をしている糞サイトが多すぎるね 認証関係の解説サイト(特に初心者向け)は殆どがそういう間違った解説をしているし > AuthGroupFile /dev/null なにこれ Unix のダミーシェルじゃないんだからこんな指定しなくていい > AuthName "enter" テスト用ってことならいいけど、AuthName は、認証区域の名称を入れる > <Limit POST GET> limit はメソッドを限定する場合のみ書けばいい こういう無駄な表記は脆弱性を作る原因 ちなみに、古いApacheだと メソッド「XXX」とクライアントが送るとスルーパスだよ これはほんとに「XXX」でも「HOGE」でもなんでもいい 不正なメソッドはGETと扱われるんだけど、GETじゃないからLimit要素をスルーして 脆弱性となる
50 名前:Name_Not_Found mailto:sage [2006/09/24(日) 18:40:20 ID:???] htaccessと何か関係でも?
51 名前:49 mailto:sage [2006/09/24(日) 18:41:25 ID:???] つまり、↓のような4行にすればいい。 AuthUserFile /hoge/hoge/.htpasswd AuthName "VIP area" AuthType Basic require valid-user
52 名前:Name_Not_Found mailto:sage [2006/09/24(日) 18:41:56 ID:???] >>50 は>>48 宛。
53 名前:Name_Not_Found [2006/09/24(日) 19:35:53 ID:AipklFgD] htdocsと言うフォルダ以下にアップして、管理ツールでcgiとssiディレクトリを使用可に設定して、分散設定ファイル(.htaccess)の制御を設定してくれと書かれています。 設定は4種あり、 @分散設定ファイルを使用できないようにする A分散設定ファイルで設定できる全てのディレクティブを使用可能にする Bこのディレクティブには設定しない C以下のリストから選択する(省略) >>48 の症状の場合はどうすればよいか分かりません
54 名前:Name_Not_Found mailto:sage [2006/09/24(日) 19:48:45 ID:???] >>53 それで君は2にしたんだろうな?
55 名前:Name_Not_Found mailto:sage [2006/09/24(日) 19:55:54 ID:???] >>53 htaccessの設定が済んでいて、CGIが動いている(表示される)なら、 それ以降のCGIの挙動はhtaccessとは全く関係ない。つまりスレ違いだ。
56 名前:Name_Not_Found [2006/09/25(月) 17:51:31 ID:YIOr4ez7] 質問させてください。ある画像ページを ・IE以外からは見れないようにしたい ・IE以外はsorry.htmlに飛ばしたい ・自サイト(xxx.xxx.jp)以外から直リンクもされないようにしたい ので、 SetEnvIf User-Agent "MSIE" ie SetEnvIf REFERER "xxx.xxx.jp" 1 SetEnvIf REFERER "^$" 2 Order Deny,Allow Deny from all Allow from env=ie Allow from env=1 Allow from env=2 ErrorDocument 403 sorry.html としたのですが、IE以外でも見れてしまいます。 おかしいところがあったら指摘お願いします。
57 名前:Name_Not_Found mailto:sage [2006/09/25(月) 17:53:29 ID:???] >>56 何故、IE以外では見られないようにするのか教えていただきたい Firefox や Opera などを何故蹴る必要があるのかが知りたい ダウンローダーを規制したいというなら、それやっても無意味だよ ダウンローダーは通常、UserAgentとして、IEを名乗るから。 迷惑行為を規制したいなら、UserAgentじゃなくて行動を基にアクセス規制すべき
58 名前:57 mailto:sage [2006/09/25(月) 17:56:08 ID:???] あと、それだと、「ie」と「1」と「2」のどれかの条件満たしてたら見られるよ ついでに「.jp」などの「.」はエスケープして、「.\」にしないと駄目でしょ 「.」は正規表現のメタ文字なんだから
59 名前:Name_Not_Found mailto:sage [2006/09/25(月) 18:07:11 ID:???] >>57 早速のアドバイスありがとうございます。 実は悪質な無断転載にあっていまして、右クリ禁止は勿論、 画像をcssでDIVタグ内に表示させたりなどいろいろ手を打ってきたのですが、 最近の子はスクリーンショットを覚えたようでそれで持ちかえるんです。 それを防ぐためにクリップボードの中身を消去するスクリプトを導入しました。 でもそれがIE以外のブラウザでは無効になってしまうので、 >>56 で述べたようなことを希望しました。 でも「ie」「1」「2」のいずれかを満たせば見れてしまうんですね…困った…。
60 名前:Name_Not_Found mailto:sage [2006/09/25(月) 18:10:50 ID:???] ErrorDocumentのリダイレクト先が/で始まってない。 >>58 教える側が .\ なんてアホミスをするのはまずい。
61 名前:57 mailto:sage [2006/09/25(月) 18:12:28 ID:???] >>59 そういう目的なら、IE以外蹴っても「無駄」です 理由を挙げると ・Firefox や Opera でも IEを名乗ることが可能 ・IEでも特定のゾーンのセキュリティ設定で「スクリプトによる貼り付け処理の許可」を「無効」にすればそのスクリプトは無効に ここまでは、ネットランナーにも書いてあるレベルなんで、無断転記をする厨は勿論のこと、 (ブログツールの利用などではなく)Webサイトを作成できるレベルの人間なら大半が知っていることかとおもいます ・目に見えない電子透かしを入れる ・電子透かしをいれた旨を表記する ・薄い文字ですかしっぽく人間に見えるように自分のサイト名とドメイン名を入れる ・無断転記には法的処置を取ると書く のが効果的です。
62 名前:57 mailto:sage [2006/09/25(月) 18:13:58 ID:???] >>60 あw ごめん・・・。 「\.」ですね ほんとくだらないミスでした typoってやつです 2Keyを同時に押す感じでタイピングしてるんで順番がよくずれるんです ・・・・・(´・ω・`)
63 名前:56 mailto:sage [2006/09/25(月) 18:19:02 ID:???] >>61 うわーそうなんですか。全然知らなかったです。 ネットランナーはサイトか何かでしょうか?すみませんあまり詳しくなくて…。 .htaccess関係ないことなのにアドバイスありがとうございました。
64 名前:Name_Not_Found mailto:sage [2006/09/25(月) 18:32:15 ID:???] 厨房御用達の悪用って文字が平然と踊ってる雑誌。
65 名前:Name_Not_Found mailto:sage [2006/09/26(火) 05:23:39 ID:???] 確かネットランナーってWinnyとかのP2Pの利用方法を詳しく説明したりしてたP2P幇助雑誌だよねw
66 名前:Name_Not_Found mailto:sage [2006/09/26(火) 23:45:40 ID:???] 基本認証について質問させて下さい。 内輪用コンテンツに.htaccesと.htpasswdを用いてユーザ認証をかけました。 同じディレクトリ内にindex.cgiとmobile.cgi二つあり,mobile.cgiにアクセスした場合のみ 認証無しにしたいです。 で,考えたのですがあまりうまくいきません……。 <Files mobile.cgi> allow from all </Files> AuthUserFile /home/hogehoge/.htpasswd AuthGroupFile /dev/null AuthName "Please enter username and password" AuthType Basic require valid-user どなたかご教授の程,よろしくお願いいたします。
67 名前:Name_Not_Found mailto:sage [2006/09/27(水) 00:22:43 ID:???] そこまでわかってる人ならSatisfyとか。 大穴開けるかもしれないからよく調べて使ってね。
68 名前:66 mailto:sage [2006/09/27(水) 23:17:45 ID:???] ありがとうございます。 Satisfy,試してみましたがホストと基本認証のどちらか/どちらもを参照するものでした。 残念ながらファイル単品というのは無理みたいです。 次善の策,ということで別ディレクトリにlnコマンドでシンボリックリンクをはり, そちらからアクセスすることにしました。
69 名前:Name_Not_Found mailto:sage [2006/09/28(木) 11:15:49 ID:???] BASIC認証につかうAuthUserFileってHTTP_HOSTによって 変えることって可能でしょうか?
70 名前:Name_Not_Found mailto:sage [2006/09/28(木) 12:10:08 ID:???] バーチャルホスト単位の設定になりそうだから.htaccessでは無理だな。 1つ上のディレクトリの.htaccessでリライトしてHostヘッダによって 落ちるディレクトリを分けて、それぞれの.htaccessで違うAuthUserFileを使うとか。 ユーザがかぶるならAuthGroupFileとRequire group group4dir1 group4dir2とかを 使うと楽だよ。
71 名前:Name_Not_Found mailto:sage [2006/09/29(金) 21:15:00 ID:???] すみません教えてください。 特定IPを弾く.htaccessを設定しているのですが、 まったく効果がなく毎回のようにアクセスされてしまいます。 調べてネットマスク等色々な事を試してはみたのですが、 お手上げ状態になってしまいました。 .htaccessの設定記述は下記の通りです。 order deny,allow allow from all deny from xx.xxx. deny from xx.xxx.xx.x/xx よろしければ他に効果的な記述がございましたらご教授ください。
72 名前:Name_Not_Found mailto:sage [2006/09/29(金) 21:26:25 ID:???] order deny,allowとした場合は、 deny from xx.xxx. deny from xx.xxx.xx.x/xx allow from all という解釈になる。つまりorder順が間違ってる。
73 名前:Name_Not_Found mailto:sage [2006/09/30(土) 00:28:09 ID:???] >>72 Orderは間違ってないよ。Allow from allが余分だよ。 って解釈もある。
74 名前:Name_Not_Found mailto:sage [2006/09/30(土) 00:49:03 ID:???] 確かに。
75 名前:Name_Not_Found mailto:sage [2006/09/30(土) 11:34:48 ID:???] 長文で申し訳ありません。 レンタルサーバ内でフリーのブログCGI(brosxom)を動作させています。 1年以上前からルート(hogehoge.com)で稼働している index.cgi を aaa ディレクトリと bbb ディレクトリにそれぞれコピーし、bbb ディレクトリに ドメインを設定。 /www ← hogehoge.com |- index.cgi |- .htaccess |- /aaa |- index.cgi |- .htaccess |- /bbb ← bbb.com |- index.cgi |- .htaccess CGIのファイル名 index.cgi が、個別エントリの URL に hogehoge.com/index.cgi/test.html と表示されるのがいやなので、各 index.cgi と同じ階層の.htaccess に以下の記述を しています。 # index.cgiを省略する DirectoryIndex index.cgi RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.cgi/$1 [L,QSA] (続く)
76 名前:Name_Not_Found mailto:sage [2006/09/30(土) 11:35:58 ID:???] (続き) ルートの hogehoge.com は index.cgi を省略しても動作するのですが、 bbb ディレクトリの bbb.com は index.cgi を省略すると個別エントリの URL が 404エラーとなります。 bbb.com/ ○表示される bbb.com/index.cgi/test.html ○表示される bbb.com/test.html ×404エラー ちなみに aaa ディレクトリの index.cgi は省略しても hogehoge.com/aaa/test.html で問題なく表示できています。さらに、 hogehoge.com/bbb/test.html でも表示できています。 パーミッションも問題なく、bbb.com で index.cgi を省略したエントリの URL が 404エラーになる原因がわかりません。 bbb ディレクトリ(bbb.com)下の .htaccess は他と同じ記述ではマズいのでしょうか?
77 名前:Name_Not_Found [2006/09/30(土) 16:44:50 ID:X0cbm9OE] <FilesMatch "\.xhtml$"> RewriteEngine On RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml RewriteRule .* - "[T=application/xhtml+xml; charset=UTF-8]" </FilesMatch> これだと、条件に合わない場合、Content-Type情報が送信されません。 条件に合わない場合、違うContent-Type情報を送信するにはどうすればできるのでしょうか?
78 名前:71 mailto:sage [2006/09/30(土) 19:27:24 ID:???] >72 早速ありがとうございます! 指摘箇所を直して暫し様子をみてみましたが、やはり アクセスされてしまいました。 特定IPというのが米国のものなので、何かあるのかなと考えつつ、 今一度.htaccessを勉強し直してまいります。
79 名前:Name_Not_Found mailto:sage [2006/10/02(月) 00:45:02 ID:???] >>77 手元のApache1.3.33だとMSIEでもapplication/xhtml+xml(デフォルト)が送出されるlo 条件に合わないってのはそのことじゃないのか。
80 名前:Name_Not_Found mailto:sage [2006/10/02(月) 01:49:30 ID:???] ぶっちゃけ、そんなContent-Typeを気にするなら http://〜/〜.xhtml なんてURIでのアクセス自体時代遅れ。
81 名前:Name_Not_Found mailto:sage [2006/10/02(月) 14:12:05 ID:???] むしろ application/xhtml+xml に対応する気配がない IE の方が(ry
82 名前:Name_Not_Found mailto:sage [2006/10/02(月) 14:19:28 ID:???] IEってAcceptにapplication/xhtml+xmlって入れて投げてくるんだっけ?
83 名前:77 [2006/10/02(月) 19:07:04 ID:MRQyiv1T] HTTP_ACCEPT に application/xhtml+xml が含まれていれば(すなわち対応している?) Content-Type に application/xhtml+xml を返すようにしたのですが……。 <FilesMatch "\.xhtml$"> RewriteEngine On RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml RewriteRule .* - "[T=application/xhtml+xml; charset=UTF-8]" </FilesMatch> Firefoxなどでは "application/xhtml+xml"が返されます。 しかし、これだと Internet Explorer や携帯端末のブラウザは "text/html" を返さない だけではなく、文字コード情報も送られないため文字化けが発生してしまいます。 "HTTP_ACCEPT に application/xhtml+xmlが含まれている"という条件に一致する場合は あるContent-Typeを...。 それ以外の条件はまたあるContent-Typeを...。という条件分岐は出来ないのでしょうか?
84 名前:Name_Not_Found mailto:sage [2006/10/02(月) 19:17:16 ID:???] サーバ本体の設定がわざわざカツカツに詰めてあるわけじゃないなら コンテントネゴシエーションを使えるだろうから、その方が確実。
85 名前:Name_Not_Found mailto:sage [2006/10/02(月) 19:18:50 ID:???] まあfoo.xhtml.ja.utf-8なんてファイル名が嫌いなら使えないけど。
86 名前:Name_Not_Found mailto:sage [2006/10/02(月) 19:28:41 ID:???] >>84 ということは、ファイルを二つ用意する必要があるんですか? もっと効率良い条件分岐が出来ないのかなぁ。。
87 名前:Name_Not_Found mailto:sage [2006/10/02(月) 19:30:16 ID:???] そんなことを気にするのにXHTMLをtext/htmlなんて偽って送られて来ても困る。
88 名前:Name_Not_Found [2006/10/02(月) 19:37:17 ID:MRQyiv1T] では、XHTMLではなくHTML 4.01を使おうかなぁ。 XMLパーサーで解析・処理出来るし、XHTML 1.1からruby要素が追加されたし ……惜しいなぁ。
89 名前:Name_Not_Found [2006/10/02(月) 19:48:09 ID:MRQyiv1T] とりあえず、ruby要素は使えないけれど、HTML互換のXHTML 1.0にして "text/html"で送ることにします。 推奨はされていないけれど。 将来、Internet Explorerが application/xhtml+xml に対応して、バグもないようなら XHTML 1.1 以降で書き直すことにします。ありがとうございました。
90 名前:Name_Not_Found [2006/10/02(月) 22:00:41 ID:nlLYBB4g] ↓のhtaccessをおいたらインターナルサーバエラーでるんだけど、なんかまちがってる? 天才な人おしえて order allow,deny deny from all allow from hogehoge.jp/ ErrorDocument 404 hogehoge/hoge/error.php
91 名前:Name_Not_Found mailto:sage [2006/10/02(月) 22:20:38 ID:???] 少し上にも同じミスしてるヤツがいるよ。
92 名前:Name_Not_Found mailto:sage [2006/10/03(火) 04:19:40 ID:???] >89 自分も前スレで似たような質問をしたけれど、結局PHPにした。 AddType text/html .html AddCharset Shift_JIS .html <Files "*.html"> RewriteEngine On RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml RewriteCond %{REQUEST_FILENAME} \.html RewriteRule .* - "[T=application/xhtml+xml; charset=Shift_JIS]" </Files> これで、「/」で終わるURL以外は動作するようになった。 他のサーバだと「/」で終わっても動作するらしいのだけど、 当方のサーバだと「/」で終わる場合は全部 text/html になるので、 index.html にあたるものだけ index.php にしてとりあえず完全対応。 ttp://hxxk.jp/2004/09/28/0248 PHPに書くコードはこのへんを参照。
93 名前:77 mailto:sage [2006/10/03(火) 08:09:56 ID:???] >>92 自分は以前PHPでやっていたんだけど、レンタルサーバがCGI版として 提供しているから動作がもっさりしているのでやめたんだ。 <FilesMatch "\.xhtml"> AddType "application/xhtml+xml; charset=UTF-8" xhtml <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml RewriteRule .* - "[T=text/html; charset=UTF-8]" </IfModule> </FilesMatch> これでうまくいったみたいだが、auの携帯端末にあるブラウザ "UP.Browser" だと 文字化けする(UTF-8)。HTTPヘッダが見れないから心配なんだが……。
94 名前:77 mailto:sage [2006/10/03(火) 21:47:37 ID:???] au端末のブラウザ "UP.Browser" は、application/xhtml+xmlに対応しているのね。 (KDDI-TS33 UP.Browser/6.2.0.9.1 (GUI) MMP/2.0 で確認) 携帯端末のブラウザでさえapplication/xhtml+xmlに対応しているのに、IEは全くもう……。 で、気が付いちゃったわけですよ。何がって? UTF-8において、MINE型が "text/html"なら文字化けしないんだけど、"application/xhtml+xml" だと文字化けしています。 いみわかんね……。中途半端な実装しやがって。
95 名前:Name_Not_Found mailto:sage [2006/10/03(火) 22:10:18 ID:???] ttp://html-time.com/tool/htaccess_maker.htm ここ以外の作成ツールがあるサイトを探しています。 自分が使ったのはこれでなかったと思うのですが、見つけることができません。 RewriteEngineが使えたはずなのですが
96 名前:Name_Not_Found mailto:sage [2006/10/04(水) 10:03:05 ID:???] 自分が管理している Apache 2.2 系のサーバにおいて、特定のIPアドレスかつ特定のUserAgentのアクセスを拒否するという 特殊な設定をしたいと考えています。 Apache の環境変数 httpd.apache.org/docs/2.2/env.html で特定の条件を満たした環境変数をセットすることはできたのですが、 Apache モジュール mod_authz_host httpd.apache.org/docs/2.2/mod/mod_authz_host.html には、 「環境変数A かつ 環境変数B」 の場合、といった処理の方法は書かれていませんでした。 そのような処理を行う方法はないでしょうか? 「環境変数A かつ 環境変数B の場合に 環境変数Cをセットする」などの方法でも構いません。 よろしくお願い致します。
97 名前:Name_Not_Found mailto:sage [2006/10/04(水) 12:57:53 ID:???] 環境変数Bを立てるのではなく、環境変数Aを倒したらどう?
98 名前:96 mailto:sage [2006/10/05(木) 02:13:25 ID:???] >>97 なるほど その手がありましたか 貴方、資質ありますね 【条件X】 を正規表現で定義する場合には一般的に 【not 条件X】も定義できますからね まず、【条件ALL】 を満たしていたら、【環境変数A】 を立てて、 【not 条件A】 を満たしていたら、【環境変数A】 を倒して、 【not 条件B】 を満たしていたら、【環境変数A】 を倒す。 そして、【環境変数A】が建っていることを条件に、Allow やら Deny をすればいいわけですね。 ありがとうございました。
99 名前:Name_Not_Found mailto:sage [2006/10/05(木) 19:29:15 ID:???] RewriteEngine on RewriteCond %{HTTP_HOST} ^(www\.abcd\.sakura\.ne\.jp)(:80)? RewriteRule ^(.*) www.abcd.com/$1 [R,L] これを、index.htmlにアクセスした場合でも/区切りで表示されるようにしたいのですが、どう記述するのでしょうか 「\」と「/」の扱い方がわからず、色々書いてもうまくいかなくて
100 名前:Name_Not_Found mailto:sage [2006/10/06(金) 00:23:12 ID:???] スラッシュ区切り?