1read 100read
2011年12月2期Web制作22: .htaccess質問コーナー Part8 (641) TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
23: Web制作者が愚痴るスレ 10クレーム目 (65)
24: 【無料】cbistってどうよ【アクセスアップ】 (72)
25: ネットショップ開業したい(^-^) (137)
26: 【リースは5年】イーシーエム【HPリース詐欺】参 (575)

.htaccess質問コーナー Part8


1 :09/02/09 〜 最終レス :11/12/22
.htaccessファイル(「分散設定ファイル」)の書き方・使い方などに関するスレです。
ドキュメント、参考サイトへのリンクなどは >>2-3 辺り。
前スレ
.htaccess質問コーナー Part7
http://pc11.2ch.net/test/read.cgi/hp/1206025115/

2 :
【Apacheドキュメント】
・ Apache チュートリアル: .htaccess ファイル
http://httpd.apache.org/docs/2.2/howto/htaccess.html
・ Apache 2.2ドキュメント
http://httpd.apache.org/docs/2.2/
・ Apache 2.0ドキュメント
http://httpd.apache.org/docs/2.0/
・ Apache 1.3ドキュメント
http://httpd.apache.org/docs/1.3/
・ Apache Trunkドキュメント
http://httpd.apache.org/docs/trunk/
・ Apache チュートリアル:認証、承認、アクセス制御
http://httpd.apache.org/docs/2.2/howto/auth.html
・ Apache モジュール mod_access(アクセス制御)
http://httpd.apache.org/docs/2.2/mod/mod_access.html
・ Apache モジュール mod_auth (認証)
http://httpd.apache.org/docs/2.2/mod/mod_auth.html
・ Apache URL Rewriting Guide (Rewrite)
http://japache.infoscience.co.jp/rewriteguide/
・ Apache module mod_rewrite  (Rewrite)
http://japache.infoscience.co.jp/japanese_1_3_6/manual/mod/mod_rewrite.html

3 :
【参考サイト】
・ ミケネコの htaccess リファレンス
ttp://mikeneko.creator.club.ne.jp/~lab/web/htaccess/
・ メモランダム MultiX.jp
ttp://multix.jp/html/memo/
・ futomi's CGI Cafe - .htaccessの小技編
ttp://www.futomi.com/lecture/htaccess/
・ .htaccess実践活用術
ttp://www.shtml.jp/htaccess/
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

4 :
放置プレイだったので立てました。
需要はあると思うので今までどおりマターリいきましょう。

5 :
otu

6 :
http://MYDOMAIN.com/cgi-bin/mt4i/i.cgi?id=1&cat=1&mode=postform&no=10&eid=ENTRY_ID
というURLへのアクセスを、
http://MYDOMAIN.com/archives/ENTRY_ID.html
へ Redirect Permanent したいと思ってます。
Redirect Permanent /cgi-bin/mt4i/i.cgi?id=2&cat=1&mode=postform&no=10&eid=(.*) /archives/$1.html
と設定したところ、500のスクリプトエラーが出てしまいます。
Redirect Permanent /cgi-bin/mt4i/i.cgi /archives/index.html
等、i.cgi以降の引数を指定しなければエラーは出ません。
サーバーはcoreserverです。
チェックすべき点等ご教示願います。

7 :
まず脳味噌のチェック

8 :
初歩的な質問で申し訳ないのですが
ローカル環境にxamppを使いwordpressをインストールしたのですが
webalizerでvisitsの項目を見ると、なぜか12もアクセスがありました。
htdocs内に、.htaccessファイルを作成し
Order deny,allow
Deny from All
Allow from localhost 127.0.0.1
でアクセス制限をし、Mysqlにもpassかけてあります。
これは、不正アクセスされているのでしょうか?
それとも、こういうものなのでしょうか?

9 :
すいません、baiduというuaでの
http://www.example.com/test/
へのアクセスを
http://www.example.com/baidu/
へ飛ばしたいと考えています
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} baidu [NC]
RewriteRule /test/ http://www.example.com/baidu/
これでうまくできませんでした。
RewriteRuleのところの/test/の記述が間違っているのだと思いますが、
どのように訂正すれば良いのかわかりません。
どなたかわかるからいましたら是非ご教示ください、お願いいたします。

10 :
>>8
webalizerでアクセスしてきたIP確認してみた?
なんのためのwebalizerなんだかw

11 :
こんな場末のスレで聞いてる時点でアレなんだから相手してやるな

12 :
>>10
釣りだよ、釣り。
スルーしろ。

13 :
http://www.google.com/
の自動転送なんだけど、何故google.comに行かないで
http://www.google.co.jp/に行くわけ? どうやって分けてるんだろ?

14 :
>>13
IPアドレスで見てるか、Accept-Languageで見てるか、UserAgentで見てるか
じゃないかな?

15 :
はい馬鹿が釣れたw
レベル低すぎw

16 :
>>15
このスレ初めて?
肩の力入りすぎだぞ坊やw

17 :
>>15
高レベルの回答を頼むw

18 :
質問させてください
ディレクトリが複数の階層に分かれている場合、
例えば以下のようなディレクトリ構造のサイトがある場合、
/
/a/
/a/b/
ルート/に.htaccessを置けば.htaccess内に記載したdeny等の効果が
/a/や/a/b/にも適用されるとの理解で間違いないでしょうか?
上の理解で間違いなければ、
サイト全体に1つの.htaccessの効果を同等に浸透させたければ、
ルート/にだけ、/.htaccessのように置けば、
/a/b/等に/a/b/.htaccessのように設置しなくても問題ないでしょうか?
さくらのレンタルサーバで実験していましたところ、
/.htaccessを置いただけでは/a/b/にdenyの効果が適用されていない
と思える節がありましたのでこの質問のように疑問に感じた次第です
よろしくお願いいたします

19 :


20 :
>21
高レベルの回答を頼む

21 :
>>20
おびろーん

22 :
>>21
AAを略すな

23 :
今、以下のような設定で Baidu と中華を排除しています。
SetEnvIf User-Agent "Baiduspider" AGENT
order allow,deny
allow from all
deny from env=AGENT
deny from .cn
これに加えてあるドメインからのスパムがあるのでPOSTを禁止したいのですが
このあとに以下を加えるといいのでしょうか?こうすると中華もPOSTできてしまうような
気がします…
<Limit POST>
order allow,deny
allow from all
deny from .hogehoge.com
</Limit>

24 :
>>23
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

25 :
>>24
了解しました。
以下の質問の回答をもらえるとありがたいです。
今、以下のような設定で Baidu と中華を排除しています。
SetEnvIf User-Agent "Baiduspider" AGENT
order allow,deny
allow from all
deny from env=AGENT
deny from .cn
これに加えてあるドメインからのスパムがあるのでPOSTを禁止したいのですが
このあとに以下を加えるといいのでしょうか?こうすると中華もPOSTできてしまうような
気がします…
<Limit POST>
order allow,deny
allow from all
deny from .example.com
</Limit>

26 :
あるディレクトリd1に.htaccessを置いています。そこでhtaccess1を利用してリダイレクト処理などを行っています。
このとき、d1配下に存在するd2ディレクトリの中にもhtaccess1のリダイレクト処理が適用されるのですが、これを回避するには
どうしたらいいでしょうか?
サーバは自前で融通が利きます。
apacheは2.2系列、OSはFreeBSD7.1R、バーチャルドメインで区切られたドキュメントルート以下のディレクトリで単独の設定を
施すことが可能です。
/d1
|- htaccess1
|- /d2
  |- htaccess2
  |- file21
  |- file22

27 :
>>26
d1/.htaccessのリダイレクト処理の部分で、d1/d2を除外するだけのことだろう

28 :
>>27
おまえ・・・ そんな事ぁ 26でもわかってるだろ

29 :
>>28
わかってないから、26みたいになってるんじゃなかろうかw

30 :
で、知ったかぶりの
>31
素敵な回答をどうぞ

31 :
除外する記述を知らないんだろ?
>32 どうぞ

32 :
そうおっしゃらずに>>30さん、お願いしますよぉ

33 :
    ∧_∧    
  ┌ ( `・ω・)     ガガガガガガガッ!!!!!!
  ├ (   ┏ ○┓_ _ _ _从._,
  ├ つ┏┓三((〓((━(。゚。)   ━ 二 三  ━  ━  ━   >32
  └ ≡≡≡ノ  ̄  ̄  ̄  ̄ ⌒Y⌒
    (__(__)

34 :
いろいろと返事ありがとうございます。
htaccess1のrewriteがちょっと複雑になっているためd2配下のhtaccess2でなんとかできないかな、と思っていました。
もちろん、できないのであれば>>27さんの通りhtaccess1で除外させます。
後出し条件になってしまいますが、d1とd2のアクセス比は10000:1ぐらいです、後出しごめんなさい。
ですからd2で除外できるのであれば、そのほうがうちのようなunk鯖に優しいかなと思っていました。
そしてrewrite周りのミスでどこか見れなくなった、とかを避ける意味もあります。rewriteうまくかけないですし><。

35 :
可哀そうで謙虚な 26・・・

36 :
>>26=>>34
このスレ、さかのぼって見れば分かると思うけど、
まともに答えてくれる人はもういないよ
↓か他のスレか他の質問サイトで質問した方がいい
【Apache】mod_rewriteについて語るスレ
http://pc11.2ch.net/test/read.cgi/php/1023791370/

37 :
ちょっとゴメン、ドメインでのアクセス拒否について質問。
example.com.cnというドメインなんですが、
order allow,deny
allow from all
deny from .cn
これではじけるはずじゃないんでしょうか?
ログ見てたらはじけてなくて・・・中国韓国全NO50件大杉?

38 :
中国からのIPアドレスが、.cnではないということではないのか?

39 :
38 名前:Name_Not_Found[sage] 投稿日:2009/03/03(火) 09:22:17 ID:???
中国からのIPアドレスが、.cnではないということではないのか?

40 :
39 名前:Name_Not_Found[sage] 投稿日:2009/03/03(火) 10:26:49 ID:???
38 名前:Name_Not_Found[sage] 投稿日:2009/03/03(火) 09:22:17 ID:???
中国からのIPアドレスが、.cnではないということではないのか?

41 :
>>37
かの国の検索エンジンのクローラーのIPアドレスを逆引きしても、
.cnにはならなかった気がする
なので、ホスト名ではなくて、IPアドレスではじくしかないんじゃ
なかろうか

42 :
http://www.hakusan.tsg.ne.jp/tjkawa/lib/krfilter/index.jsp
昔どこかで三国フィルターとかって名前であったと思ったけど、どこいっちゃったかな。

43 :
これ?
ttp://www.dayomon.net/fw/

44 :
Options +MultiViews
を使ってページを表示させていたのですがレンタルサーバーを
移ってから500内部サーバーエラーと出て表示されなくなりました。
どのような原因が考えられるのでしょうか?
PHPバージョン 5.2.8
アパッチバージョン 2.2.11 (Unix)

45 :
>>44

46 :
>>41
いや、ドメイン名として.com.cnとなってるわけだから
ドメイン名がcnではないわけではない。
スパマーとして名高い数字四桁.com.cnのことなんだけどね。
NICにIP範囲出してくれるページあるが、それでごっそりCN入れても
日本国内の住人が弾かれることってないんだろか。

47 :
よしよし、今日も馬鹿がいるな

48 :
wordpressを使用しています。
ブログのアドレス変更にて
http://sample.com/
http://www.sample.com/ に変更したところ
「403 Forbidden」となります。
http://sample.com/にアクセスしても
http://www.sample.com/にリダイレクトされる状態です。
だれか助けてください。お願いします。

49 :
すいません。
wordpressスレで聞いてきます。

50 :
deny構文で質問です。
現在、hogehoge128hoge2-32.hoge11.example.comというところから荒らしをされているのですが、
自分自身のIPがexample22hoge1-192.hoge11.example.comなので、通常の一致構文だと.hoge11.example.comで規制するしかなく、困り果てています。
deny fromではどのようにして正規表現もしくは代替表現を使えばいいのでしょうか。
なお、hogehoge128hoge2-32.hoge11.example.comはどうやらhogehoge[0-9]{2,3}hoge2-[0-9]{2,3}.hoge11.example.comの可変のようです。
よろしくお願いいたします。

51 :


52 :
RewriteRuleで
http://example.com/abc ←スラッシュ無し
http://example.com/abc/ ←スラッシュ有

http://example.com/
http://example.com/abc/123.html

http://example.com/123.html
へそれぞれ変換するにはどう書けばいいんでしょう。
RewriteEngine on
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
とすると、http://example.com/abc ←スラッシュ無し の条件の時
http://example.com//home/abc/def などとサーバーの絶対パスが後ろについてしまいます。

53 :
ずぶの素人ですが、.htaccessを使用したユーザー認証ページを作成する際、
次のようにしたいと思っています。
http://ninshou/user/example/  ←example内を閲覧する為に認証が必要。
[認証の実行後↓]
http://ninshou/user/example/exampleA ⇒グループAのIDのみ閲覧可
http://ninshou/user/example/exampleB ⇒グループBのIDのみ閲覧可
http://ninshou/user/example/exampleC ⇒グループA・BのIDともに閲覧可
上記のようにしたいと思っています。
ディレクトリ内のファイルについてグループごとに認証制限できるようですが、
各ファイルを閲覧する為いちいち認証ダイアログが表示されるようでした。
一度認証したらグループ毎に、自動的に、表示されるページが決まっている
ようにするには.htaccessのみでは出来ないでしょうか?
perlのCGIで別のプログラムを作る必要があるのでしょうか?

54 :
↑httpをつけてしまいました。すみません。。

55 :
http://example.com/aaa.html というページのみを独立させて
http://aaa.com/ というサイトにした場合、
どのように書けばhttp://example.com/aaa.htmlにアクセスした人をhttp://aaa.com/に飛ばせますか

56 :
>>55
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
aaa.comのような所有者のあるドメインを勝手に例示用として使ってはいけません

57 :
>>48
http://sample.com/も存在するドメインですね。
>>56
それは分かりましたので、答えを教えてください。

58 :
>>56
それは分かりましたので、答えを教えてください。

59 :
aaa.com/bbb
aaa.com/ccc
という2つのディレクトリがあったとして、aaa.com/bbb内にのみ検索除けのための.htaccessを設置したら、aaa.com/cccのみ検索に引っかかるという認識でよいでしょうか?

60 :
>>59
sageは名前欄に入れるのではなく、
E-mail欄に入れなければ効果はありません

61 :
検索かけてもないんですが、随分と放置していたサイトに自分でもちろん
書いて設定したのですが、下記の意味がわかりません。
どういう意味でしょうか?
<Files ~ "^\.">
Allow from all
</Files>
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
分かる方いましたら教えて下さい。

62 :
>検索かけてもないんですが
まずは自分で何かをすることを覚えよう。
その上で分からない部分を質問するのです。

63 :
htaccessで
LAN内を許可
外部からの場合はベーシック認証
する方法を教えてください。

64 :
もうこのスレはダメだろ
質問しても無意味

65 :
web板もブログ板?も質問してもろくな答えなんてでないっしょ。

66 :
ブログ板は民度が低くまともな回答が得にくい
Web制作板はスレによってはまともな人がいて助かる時がある
WebProg板へ行けば欲しい答が手に入りやすい
以上

67 :
.htaccess mod_rewriteについて
http://example.com/data1?data2/data3;data4
このようにアクセスした場合
http://example.com/index.php?id=data1&mode1=data2&mode3=data3&flag=data4
このようにアクセスさせたいです。
考えてみましたが
うまく動作しません。
データーに受け渡す値は
a-zA-Z0-9
限定です。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]+\?+[a-zA-Z0-9]+)\/+[a-zA-Z0-9];+[a-zA-Z0-9)$ index.php?id=$1&mode=$2&mode3=$3&flag=$4 [L]
ご教授よろしくおねがいします
これではだめみたいです

68 :
>>67
RewriteRule ^([a-zA-Z0-9]+\?+[a-zA-Z0-9]+)\/+[a-zA-Z0-9];+[a-zA-Z0-9)$
が間違ってんだろう
http://webtech.akijapan.com/htaccess/rewrite.phtml
まずはここ読んでみるのオヌヌメ

69 :
限りなく初心者で悪いんだが質問
FTPでファイルを上げたり変更したりできるのはわかったんだが、.で始まる設定ファイルって消去したらサーバ機以外からいじれなくなるんだよね??

70 :
>>69
そんな事は無い
×いじれなく
○いじられなく

71 :
×いじられなく
○いじれなく

72 :
http://xxx.hoge.com/zzz.html を開いたときに、自動的に
http://www.hoge.com/xxx/zzz.html へ飛ばす(ブラウザのアドレス欄もこのURLになる)ようにする方法を
教えてください。
サブドメインxxx配下のリソースを、丸ごと同じxxxという名前のディレクトリ配下に引越しさせたいんです。

73 :
test

74 :
>>70
サンクス
自分で>>69読み直すと、確かに紛らわしい文だったな
すまんね

75 :
教えて下さい。WindowsXPにapache(バージョン2.2.11)とperlを入れて、
webサーバで掲示板を動かしています。
http://サーバーのアドレス/a/bbs.exe というURLで、
aのフォルダごとパスワード認証を掛けたいのですが、
AuthUserFile "C:\pass"
AuthName "Please enter username and password"
AuthType Basic
require valid-user
では認証は正しく発動するのですが、
私の家庭内LANからは、認証不要にしようと
Satisfy any
order deny,allow
allow from 192.168.0.1/24(←家庭内)
deny from all
をつけ加えました。こうすることにより、家庭内LANからは
認証がいらなくなったのですが、外部からも認証無しで
bbs.exeにアクセスできてしまいます。
外部から
http://サーバーのアドレス/a/bbs.exe と直接指定すると、認証は出なくて、
http://サーバーのアドレス/a/ とディレクトリを指定すると、認証のダイアログが出ます。
Satisfy any 以降を削除すると、http://サーバーのアドレス/a/bbs.exe を
打ち込んでも正しく認証画面が出ます。
こんな不思議な現象は初めてです。.htaccessの記入がおかしいのでしょうか。
どこがおかしいのか教えて頂けないでしょうか。

76 :
質問1個め
サブドメインを数字の1から9まで使用したスパムのリファ弾きって
SetEnvIf Referer "^http://1\.sample\.com" ref_ng
SetEnvIf Referer "^http://2\.sample\.com" ref_ng
SetEnvIf Referer "^http://3\.sample\.com" ref_ng
(省略)
order allow,deny
allow from all
って、個別のところを正規表現使って
SetEnvIf Referer "^http://[1-9]\.sample\.com" ref_ng で実現できますか?
質問2個目
あと、まどろっこしいんでsample.comごと弾きたいんだけど
「特定文字列が含まれていれば」の条件の正規表現はどう記述するのですか?

77 :
テンプレも読まず質問しないように
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

78 :
>>77
答える知能がないカスは黙って消えろ
二度とでしゃばんな

79 :
example.jpにwww.example.jpでアクセスした際、
example.jpにリダイレクトさせるには下記の記述で良いのでしょうか?
example.jpは日本語ドメインでxn--xxxxx.jpにピュニコード変換しています。
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.jp
RewriteRule ^(.*) http://example.jp/$1 [R=301,L]
上記記述でwww.example.jpでアクセスしてみましたが
「404 Not Found」になってしまいます。
サーバホスティング会社のサポートに問い合わせたところ
「htaccessのリダイレクトで行けるはず」とのことなのですが。

80 :
>>78
馬鹿のくせに態度でかいなw

81 :
>>53
でぶの素人に見えた。
ごめん。

82 :
>>78
春は、基地外がいっぱい。

83 :
>>78
お前も同じ

84 :
PHPでファイルのアップロードを許可するにはどのように記述すればいいですか?

85 :
>>84
サーバー管理者ねお尋ねください。

86 :
>>84
スレ違い
PHPスレ行ってください

87 :
>>79
リダイレクトとリライトの違いもわからないなんて…
それ以前に正規表現の書き方も間違ってるし。

88 :
今どきwww有り無し間の転送サービスが付随してない鯖なんてあんの

89 :
>>78=>>79

90 :
>>86
リダイレクトじゃなくてリライトですか。
右も左もわからずだったんで助かりました。
ありがと、正規表現の書き方とあわせてもう一度よく調べてみます。
>>88
サポートの返答では「WordPress設置したせい」とのことでした。
別んとこで借りてる鯖はWP設置してもwww有り無しどっちも行けるのに?
何か鯖の設定の違いが影響してるんだろか???って感じです。

91 :
ごめんなさいアンカー間違えました。
>>86→訂正>>87

92 :
どんまい♪

93 :
アクセス拒否なのですが、
eaoska******.adsl.ppp.infoweb.ne.jpを弾きたい場合は
どのようにすれば良いのでしょうか?
「******」は「011123」など6桁の数字で、
この部分がどの数字の並びの場合でも省きたいのですが。
下記では駄目でした。よろしくお願いします。
order allow,deny
allow from all
deny from eaoska******.adsl.ppp.infoweb.ne.jp

94 :
>>93
正規表現を勉強しろ

95 :
>>93
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

96 :
>>95
申し訳ないです。
---------------------------------------------------------------
アクセス拒否なのですが、
hoge******.adsl.ppp.example.ne.jpを弾きたい場合は
どのようにすれば良いのでしょうか?
「******」は「123456」など6桁の数字で、
この部分がどの数字の並びの場合でも省きたいのですが。
adsl.ppp.example.ne.jp全体では無く、
hoge部分も一致する場合のみ弾きたいけど、
hogeと******が連続していて、間に「.」等が無く困っています。
よろしくお願いします。

97 :
>>96
(1) examlple.ne.jp と
(2) example.jp は
全く異なるドメインであり、
(1)はRFCで許諾されていないため使ってはいけません
また、ここで答えが貰えてその通りにされても、
別件をdenyする時に再度ご苦労されるように思えます
>>94の正規表現だけでなく、
TLD(トップレベルドメイン)についても勉強されてから、
質問されてはいかがでしょう?
正規表現道場については以下のスレを見てください
http://pc11.2ch.net/test/read.cgi/php/1168450843/

98 :
「など」と書かれていたので、特に気にせずに使ったけど、
そんなルールがあったんですね、了解。
また質問の件は別スレで答えて頂けたのでOKです!
ありがとね。

99 :
>>72
RedirectMatch 301 http://xxx.hoge.com/zzz.html http://www.hoge.com/xxx/zzz.html
でいいのではないか

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
23: Web制作者が愚痴るスレ 10クレーム目 (65)
24: 【無料】cbistってどうよ【アクセスアップ】 (72)
25: ネットショップ開業したい(^-^) (137)
26: 【リースは5年】イーシーエム【HPリース詐欺】参 (575)