5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

.htaccess質問コーナー Part8

1 :Name_Not_Found:2009/02/09(月) 21:33:46 ID:???
.htaccessファイル(「分散設定ファイル」)の書き方・使い方などに関するスレです。
ドキュメント、参考サイトへのリンクなどは >>2-3 辺り。

前スレ
.htaccess質問コーナー Part7
http://pc11.2ch.net/test/read.cgi/hp/1206025115/

2 :Name_Not_Found:2009/02/09(月) 21:34:41 ID:???
【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 :Name_Not_Found:2009/02/09(月) 21:35:37 ID:???
【参考サイト】
・ ミケネコの 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 :1:2009/02/09(月) 21:37:10 ID:???
放置プレイだったので立てました。
需要はあると思うので今までどおりマターリいきましょう。

5 :Name_Not_Found:2009/02/10(火) 09:20:40 ID:???
otu

6 :Name_Not_Found:2009/02/10(火) 18:15:58 ID:mI0iUUXh
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 :Name_Not_Found:2009/02/10(火) 21:22:10 ID:???
まず脳味噌のチェック

8 :Name_Not_Found:2009/02/14(土) 23:27:22 ID:???
初歩的な質問で申し訳ないのですが

ローカル環境にxamppを使いwordpressをインストールしたのですが
webalizerでvisitsの項目を見ると、なぜか12もアクセスがありました。

htdocs内に、.htaccessファイルを作成し
Order deny,allow
Deny from All
Allow from localhost 127.0.0.1
でアクセス制限をし、Mysqlにもpassかけてあります。

これは、不正アクセスされているのでしょうか?
それとも、こういうものなのでしょうか?

9 :Name_Not_Found:2009/02/21(土) 23:48:13 ID:hFbewnhi
すいません、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 :Name_Not_Found:2009/02/22(日) 12:54:43 ID:???
>>8
webalizerでアクセスしてきたIP確認してみた?
なんのためのwebalizerなんだかw

11 :Name_Not_Found:2009/02/22(日) 14:16:18 ID:???
こんな場末のスレで聞いてる時点でアレなんだから相手してやるな

12 :Name_Not_Found:2009/02/22(日) 14:43:09 ID:???
>>10
釣りだよ、釣り。
スルーしろ。

13 :Name_Not_Found:2009/02/24(火) 01:59:50 ID:???
http://www.google.com/
の自動転送なんだけど、何故google.comに行かないで
http://www.google.co.jp/に行くわけ? どうやって分けてるんだろ?

14 :Name_Not_Found:2009/02/24(火) 08:56:50 ID:???
>>13
IPアドレスで見てるか、Accept-Languageで見てるか、UserAgentで見てるか
じゃないかな?

15 :13:2009/02/24(火) 09:47:12 ID:???
はい馬鹿が釣れたw
レベル低すぎw

16 :Name_Not_Found:2009/02/24(火) 13:16:46 ID:???
>>15
このスレ初めて?
肩の力入りすぎだぞ坊やw

17 :Name_Not_Found:2009/02/24(火) 14:00:31 ID:???
>>15
高レベルの回答を頼むw

18 :Name_Not_Found:2009/02/25(水) 10:46:05 ID:X0OSlQHh
質問させてください

ディレクトリが複数の階層に分かれている場合、
例えば以下のようなディレクトリ構造のサイトがある場合、
/
/a/
/a/b/
ルート/に.htaccessを置けば.htaccess内に記載したdeny等の効果が
/a/や/a/b/にも適用されるとの理解で間違いないでしょうか?

上の理解で間違いなければ、
サイト全体に1つの.htaccessの効果を同等に浸透させたければ、
ルート/にだけ、/.htaccessのように置けば、
/a/b/等に/a/b/.htaccessのように設置しなくても問題ないでしょうか?

さくらのレンタルサーバで実験していましたところ、
/.htaccessを置いただけでは/a/b/にdenyの効果が適用されていない
と思える節がありましたのでこの質問のように疑問に感じた次第です

よろしくお願いいたします

19 :Name_Not_Found:2009/02/25(水) 10:53:08 ID:???


20 :Name_Not_Found:2009/02/25(水) 10:55:03 ID:???
>21
高レベルの回答を頼む

21 :Name_Not_Found:2009/02/25(水) 14:02:39 ID:???
>>20
おちんちんびろーん

22 :Name_Not_Found:2009/02/25(水) 14:26:45 ID:???
>>21
AAを略すな

23 :Name_Not_Found:2009/02/26(木) 01:44:43 ID:???
今、以下のような設定で 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 :Name_Not_Found:2009/02/26(木) 02:23:46 ID:c0K2xo0/
>>23
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

25 :Name_Not_Found:2009/02/26(木) 03:00:44 ID:???
>>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 :Name_Not_Found:2009/02/26(木) 14:27:58 ID:???
あるディレクトリd1に.htaccessを置いています。そこでhtaccess1を利用してリダイレクト処理などを行っています。
このとき、d1配下に存在するd2ディレクトリの中にもhtaccess1のリダイレクト処理が適用されるのですが、これを回避するには
どうしたらいいでしょうか?

サーバは自前で融通が利きます。
apacheは2.2系列、OSはFreeBSD7.1R、バーチャルドメインで区切られたドキュメントルート以下のディレクトリで単独の設定を
施すことが可能です。

/d1
|- htaccess1
|- /d2
  |- htaccess2
  |- file21
  |- file22

27 :Name_Not_Found:2009/02/26(木) 14:56:34 ID:???
>>26
d1/.htaccessのリダイレクト処理の部分で、d1/d2を除外するだけのことだろう

28 :Name_Not_Found:2009/02/26(木) 16:48:46 ID:???
>>27
おまえ・・・ そんな事ぁ 26でもわかってるだろ

29 :Name_Not_Found:2009/02/26(木) 17:19:57 ID:???
>>28
わかってないから、26みたいになってるんじゃなかろうかw

30 :Name_Not_Found:2009/02/26(木) 17:43:24 ID:???
で、知ったかぶりの
>31
素敵な回答をどうぞ

31 :Name_Not_Found:2009/02/26(木) 17:47:29 ID:???
除外する記述を知らないんだろ?

>32 どうぞ

32 :Name_Not_Found:2009/02/26(木) 17:48:23 ID:???
そうおっしゃらずに>>30さん、お願いしますよぉ


33 :Name_Not_Found:2009/02/26(木) 18:40:31 ID:???
    ∧_∧    
  ┌ ( `・ω・)     ガガガガガガガッ!!!!!!
  ├ (   ┏ ○┓_ _ _ _从._,
  ├ つ┏┓三((〓((━(。゚。)   ━ 二 三  ━  ━  ━   >32
  └ ≡≡≡ノ  ̄  ̄  ̄  ̄ ⌒Y⌒
    (__(__)


34 :26:2009/02/27(金) 09:03:22 ID:???
いろいろと返事ありがとうございます。
htaccess1のrewriteがちょっと複雑になっているためd2配下のhtaccess2でなんとかできないかな、と思っていました。
もちろん、できないのであれば>>27さんの通りhtaccess1で除外させます。

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

35 :Name_Not_Found:2009/02/27(金) 14:24:20 ID:???
可哀そうで謙虚な 26・・・

36 :Name_Not_Found:2009/02/27(金) 15:05:23 ID:tIAdqPW0
>>26=>>34
このスレ、さかのぼって見れば分かると思うけど、
まともに答えてくれる人はもういないよ

↓か他のスレか他の質問サイトで質問した方がいい

【Apache】mod_rewriteについて語るスレ
http://pc11.2ch.net/test/read.cgi/php/1023791370/

37 :Name_Not_Found:2009/03/03(火) 01:51:16 ID:4ry0O/LS
ちょっとゴメン、ドメインでのアクセス拒否について質問。

example.com.cnというドメインなんですが、

order allow,deny
allow from all
deny from .cn

これではじけるはずじゃないんでしょうか?
ログ見てたらはじけてなくて・・・中国韓国全NO50件大杉?

38 :Name_Not_Found:2009/03/03(火) 09:22:17 ID:???
中国からのIPアドレスが、.cnではないということではないのか?

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

40 :Name_Not_Found:2009/03/03(火) 10:40:42 ID:???
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 :Name_Not_Found:2009/03/03(火) 14:29:45 ID:???
>>37
かの国の検索エンジンのクローラーのIPアドレスを逆引きしても、
.cnにはならなかった気がする
なので、ホスト名ではなくて、IPアドレスではじくしかないんじゃ
なかろうか

42 :Name_Not_Found:2009/03/03(火) 16:44:41 ID:???
http://www.hakusan.tsg.ne.jp/tjkawa/lib/krfilter/index.jsp
昔どこかで三国フィルターとかって名前であったと思ったけど、どこいっちゃったかな。

43 :Name_Not_Found:2009/03/03(火) 16:50:41 ID:???
これ?
ttp://www.dayomon.net/fw/

44 :Name_Not_Found:2009/03/04(水) 18:21:05 ID:H+ujtyet
Options +MultiViews
を使ってページを表示させていたのですがレンタルサーバーを
移ってから500内部サーバーエラーと出て表示されなくなりました。
どのような原因が考えられるのでしょうか?

PHPバージョン 5.2.8
アパッチバージョン 2.2.11 (Unix)

45 :Name_Not_Found:2009/03/04(水) 19:36:31 ID:???
>>44

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

47 :Name_Not_Found:2009/03/06(金) 22:13:47 ID:???
よしよし、今日も馬鹿がいるな

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

49 :48:2009/03/07(土) 02:49:59 ID:???
すいません。
wordpressスレで聞いてきます。

50 :Name_Not_Found:2009/03/09(月) 17:21:39 ID:???
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 :Name_Not_Found:2009/03/09(月) 18:06:42 ID:???


52 :Name_Not_Found:2009/03/11(水) 10:43:24 ID:ui7BURUt
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 :Name_Not_Found:2009/03/12(木) 21:58:11 ID:bQCO7qzC
ずぶの素人ですが、.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 :53:2009/03/12(木) 22:00:04 ID:bQCO7qzC
↑httpをつけてしまいました。すみません。。

55 :Name_Not_Found:2009/03/13(金) 18:10:33 ID:???
http://example.com/aaa.html というページのみを独立させて
http://aaa.com/ というサイトにした場合、
どのように書けばhttp://example.com/aaa.htmlにアクセスした人をhttp://aaa.com/に飛ばせますか

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

aaa.comのような所有者のあるドメインを勝手に例示用として使ってはいけません

57 :Name_Not_Found:2009/03/13(金) 22:38:03 ID:???
>>48
http://sample.com/も存在するドメインですね。

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

58 :Name_Not_Found:2009/03/13(金) 22:39:21 ID:???
>>56
それは分かりましたので、答えを教えてください。

59 :sage:2009/03/14(土) 23:32:25 ID:lG5Orh+V
aaa.com/bbb
aaa.com/ccc
という2つのディレクトリがあったとして、aaa.com/bbb内にのみ検索除けのための.htaccessを設置したら、aaa.com/cccのみ検索に引っかかるという認識でよいでしょうか?

60 :Name_Not_Found:2009/03/15(日) 00:30:57 ID:fQTxxMUM
>>59
sageは名前欄に入れるのではなく、
E-mail欄に入れなければ効果はありません

61 :Name_Not_Found:2009/03/18(水) 23:27:41 ID:BurOxeFa
検索かけてもないんですが、随分と放置していたサイトに自分でもちろん
書いて設定したのですが、下記の意味がわかりません。
どういう意味でしょうか?

<Files ~ "^\.">
Allow from all
</Files>

<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>

分かる方いましたら教えて下さい。


62 :Name_Not_Found:2009/03/19(木) 01:36:34 ID:???
>検索かけてもないんですが
まずは自分で何かをすることを覚えよう。
その上で分からない部分を質問するのです。



63 :98:2009/03/24(火) 16:08:47 ID:qR3WbWo2
htaccessで
LAN内を許可
外部からの場合はベーシック認証
する方法を教えてください。

64 :Name_Not_Found:2009/03/25(水) 15:58:06 ID:???
もうこのスレはダメだろ
質問しても無意味

65 :Name_Not_Found:2009/03/25(水) 16:44:44 ID:???
web板もブログ板?も質問してもろくな答えなんてでないっしょ。



66 :Name_Not_Found:2009/03/25(水) 20:40:12 ID:0S8w1Kw5
ブログ板は民度が低くまともな回答が得にくい
Web制作板はスレによってはまともな人がいて助かる時がある
WebProg板へ行けば欲しい答が手に入りやすい
以上

67 :中山:2009/03/29(日) 00:29:51 ID:CcTlUm8h
.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 :Name_Not_Found:2009/03/30(月) 14:00:00 ID:???
>>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 :Name_Not_Found:2009/04/02(木) 00:28:57 ID:CbB8+JjQ
限りなく初心者で悪いんだが質問

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

70 :Name_Not_Found:2009/04/02(木) 04:07:34 ID:q1H3p548
>>69
そんな事は無い

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

71 :Name_Not_Found:2009/04/02(木) 04:13:32 ID:???
×いじられなく
○いじれなく

72 :Name_Not_Found:2009/04/05(日) 01:34:38 ID:SbXshvwz
http://xxx.hoge.com/zzz.html を開いたときに、自動的に
http://www.hoge.com/xxx/zzz.html へ飛ばす(ブラウザのアドレス欄もこのURLになる)ようにする方法を
教えてください。

サブドメインxxx配下のリソースを、丸ごと同じxxxという名前のディレクトリ配下に引越しさせたいんです。


73 :Name_Not_Found:2009/04/05(日) 02:47:47 ID:???
test

74 :Name_Not_Found:2009/04/05(日) 09:43:10 ID:???
>>70
サンクス

自分で>>69読み直すと、確かに紛らわしい文だったな
すまんね

75 :Name_Not_Found:2009/04/06(月) 18:43:05 ID:MWSATr4G
教えて下さい。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 :Name_Not_Found:2009/04/06(月) 21:26:36 ID:???
質問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 :Name_Not_Found:2009/04/06(月) 21:55:21 ID:???
テンプレも読まず質問しないように

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

78 :Name_Not_Found:2009/04/06(月) 22:32:00 ID:HMzCVOIs
>>77
答える知能がないカスは黙って消えろ
二度とでしゃばんな

79 :Name_Not_Found:2009/04/06(月) 22:43:50 ID:eRdBSM7c
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 :Name_Not_Found:2009/04/06(月) 23:10:24 ID:???
>>78
馬鹿のくせに態度でかいなw

81 :Name_Not_Found:2009/04/07(火) 03:18:59 ID:???
>>53
でぶの素人に見えた。





ごめん。

82 :Name_Not_Found:2009/04/07(火) 03:37:51 ID:???
>>78
春は、基地外がいっぱい。

83 :Name_Not_Found:2009/04/07(火) 17:43:12 ID:???
>>78
お前も同じ

84 :Name_Not_Found:2009/04/08(水) 06:52:36 ID:???
PHPでファイルのアップロードを許可するにはどのように記述すればいいですか?

85 :Name_Not_Found:2009/04/08(水) 08:42:47 ID:???
>>84
サーバー管理者ねお尋ねください。

86 :Name_Not_Found:2009/04/08(水) 08:47:24 ID:???
>>84
スレ違い

PHPスレ行ってください

87 :Name_Not_Found:2009/04/08(水) 10:15:09 ID:???
>>79
リダイレクトとリライトの違いもわからないなんて…
それ以前に正規表現の書き方も間違ってるし。

88 :Name_Not_Found:2009/04/08(水) 12:20:00 ID:???
今どきwww有り無し間の転送サービスが付随してない鯖なんてあんの

89 :Name_Not_Found:2009/04/08(水) 14:25:17 ID:???
>>78=>>79

90 :79:2009/04/08(水) 15:43:04 ID:???
>>86
リダイレクトじゃなくてリライトですか。
右も左もわからずだったんで助かりました。
ありがと、正規表現の書き方とあわせてもう一度よく調べてみます。

>>88
サポートの返答では「WordPress設置したせい」とのことでした。
別んとこで借りてる鯖はWP設置してもwww有り無しどっちも行けるのに?
何か鯖の設定の違いが影響してるんだろか???って感じです。

91 :79:2009/04/08(水) 15:47:45 ID:???
ごめんなさいアンカー間違えました。
>>86→訂正>>87

92 :Name_Not_Found:2009/04/09(木) 05:39:18 ID:???
どんまい♪

93 :Name_Not_Found:2009/04/14(火) 23:05:28 ID:???
アクセス拒否なのですが、
eaoska******.adsl.ppp.infoweb.ne.jpを弾きたい場合は
どのようにすれば良いのでしょうか?

「******」は「011123」など6桁の数字で、
この部分がどの数字の並びの場合でも省きたいのですが。
下記では駄目でした。よろしくお願いします。

order allow,deny
allow from all
deny from eaoska******.adsl.ppp.infoweb.ne.jp

94 :Name_Not_Found:2009/04/14(火) 23:13:28 ID:???
>>93
正規表現を勉強しろ

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

96 :93:2009/04/14(火) 23:49:23 ID:???
>>95
申し訳ないです。
---------------------------------------------------------------
アクセス拒否なのですが、
hoge******.adsl.ppp.example.ne.jpを弾きたい場合は
どのようにすれば良いのでしょうか?

「******」は「123456」など6桁の数字で、
この部分がどの数字の並びの場合でも省きたいのですが。

adsl.ppp.example.ne.jp全体では無く、
hoge部分も一致する場合のみ弾きたいけど、
hogeと******が連続していて、間に「.」等が無く困っています。
よろしくお願いします。

97 :Name_Not_Found:2009/04/15(水) 00:45:53 ID:???
>>96
(1) examlple.ne.jp と
(2) example.jp は
全く異なるドメインであり、
(1)はRFCで許諾されていないため使ってはいけません

また、ここで答えが貰えてその通りにされても、
別件をdenyする時に再度ご苦労されるように思えます

>>94の正規表現だけでなく、
TLD(トップレベルドメイン)についても勉強されてから、
質問されてはいかがでしょう?

正規表現道場については以下のスレを見てください
http://pc11.2ch.net/test/read.cgi/php/1168450843/

98 :93:2009/04/15(水) 01:09:56 ID:???
「など」と書かれていたので、特に気にせずに使ったけど、
そんなルールがあったんですね、了解。
また質問の件は別スレで答えて頂けたのでOKです!
ありがとね。

99 :Name_Not_Found:2009/04/15(水) 01:43:31 ID:???
>>72
RedirectMatch 301 http://xxx.hoge.com/zzz.html http://www.hoge.com/xxx/zzz.html
でいいのではないか

100 :Name_Not_Found:2009/04/15(水) 01:51:15 ID:???
20レスほどあぼーんされて
何も見えないがまたキチガイでも湧いてるのか?

101 :Name_Not_Found:2009/04/15(水) 02:20:22 ID:???
>>100があぼーんされて
何も見えないがまたキチガイでも湧いてるのか?

102 :Name_Not_Found:2009/04/15(水) 07:10:31 ID:???
>>99-100
>>3

103 :Name_Not_Found:2009/04/15(水) 13:42:52 ID:???
>>96
.htaccessでは残念ながら不可能

104 :Name_Not_Found:2009/04/18(土) 06:22:45 ID:???
新潟OCNは光とADSLでホストが一部違うのですが、


p4108-ipbf406niigatani.niigata.ocn.ne.jp

ADSL
p4308-ipad426niigatani.niigata.ocn.ne.jp

このうち光の新潟OCNだけを遮断したい場合は
deny from ipbf\d+niigatani.niigata.ocn.ne.jp で遮断出来ますでしょうか?



105 :Name_Not_Found:2009/04/18(土) 16:01:24 ID:???
携帯サイトをやっています。
.htaccessを使って携帯かどうかをIPで調べPCなら別のページを表示させることには成功したんですが
これだとGoogleとかのロボットからのアクセスまでも弾いてしまいます。
ロボットによってはユーザーエイジェントは公開しているけどIPアドレスまでは公開していないので
今使っている.htaccessにユーザーエイジェントでの判別も付け加えたいのですが
どのようにして付け加えればいいのでしょうか?

106 :Name_Not_Found:2009/04/18(土) 16:07:45 ID:???
今、.htaccessファイルに書かれているのはこんな感じです。


order deny,allow
deny from all

allow from  100.100.100.0/24
allow from  200.100.100.0/24

ErrorDocument 403 PC用のURL

こんな感じで書いてます。
例えばここにグーグルロボットのUA Googlebotを追加しようとしたらどのように付け足せばいいのでしょうか?

107 :Name_Not_Found:2009/04/18(土) 18:06:06 ID:???
>>104
自分のホスト名で試せば分かるけど、それでは遮断出来ない。

108 :Name_Not_Found:2009/04/19(日) 01:41:16 ID:???
>>104
.htaccessでは\dとか使えなかったと思う

SetEnvIf Remote_Host "ipbf[0-9]{2,4}niigatani\.niigata\.ocn\.ne\.jp$" shutout
deny from env=shutout

だとどうだろ
{2,4}のところは桁数の変動に合わせて書き換えて

109 :Name_Not_Found:2009/04/19(日) 17:38:13 ID:???
入.......

110 :Name_Not_Found:2009/04/20(月) 04:32:53 ID:???
http://shinshu.fm/MHz/08.55/images/2a4elvX0.jpg

111 :Name_Not_Found:2009/04/20(月) 17:48:19 ID:???
(σ・∀・)σ111ゲッツ

112 :Name_Not_Found:2009/04/23(木) 11:15:21 ID:???
http://www.example.com/hoge/ 以下の html ファイルを
http://hoge.example.com/ 以下へ引っ越ししたので

<Files *.html>
Redirect permanent /hoge http://hoge.example.com
</Files>

としました。
ブラウザのアドレス欄に
http://www.example.com/hoge/fuga.html
と入力すると
http://hoge.example.com/fuga.html
へ転送されたので目的は達成しているのですが、

http://www.example.com/hoge/
と入力したときの転送先を
現状: http://hoge.example.com/index.html
希望: http://hoge.example.com/
としたかったので、

RedirectMatch permanent ^/hoge/?$ http://hoge.example.com/

の1文を追加しました。
これで希望通り動作しているようですが、問題はないでしょうか?

また、他に適切な記述法がありましたら教えてください。


113 :Name_Not_Found:2009/04/24(金) 01:26:22 ID:???
ttp://www.example.com/hoge/index.html
は、どうする

114 :Name_Not_Found:2009/04/24(金) 07:21:46 ID:???
存在しないページにアクセスすると 403 エラーになるサーバーで,これ
を 404 を返すようにするにはどうしたらいいでしょうか?
404 エラー風の 403 エラーページでは不可です。

115 :Name_Not_Found:2009/04/24(金) 07:25:44 ID:???
>>114
調べた結果こう試したが上手くいかない
というのなら分かりますが、
最初から問題にして答を導き出そうとするのはいかがなものかと思いますが

116 :Name_Not_Found:2009/04/24(金) 07:44:12 ID:???
.htaccess に何と書けばいいのか全くわからないので,試しようがないの
です。

117 :112:2009/04/24(金) 09:49:01 ID:???
>>113
レスありがとう。それは
http://hoge.example.com/index.html
への転送で構いません。

118 :Name_Not_Found:2009/04/24(金) 22:50:41 ID:???
特定ページAへの直リンクを任意ページに転送する方法ってありますかね?
ページAの入ってるディレクトリには他にもファイルがあるんですが、出来れば他に移動せずに済む方法があると助かります。

119 :Name_Not_Found:2009/04/24(金) 23:21:44 ID:???
>>118
お断りします

120 :Name_Not_Found:2009/04/25(土) 00:20:02 ID:???
>>118
ログ読めば書いてあるよ

121 :Name_Not_Found:2009/05/03(日) 13:26:02 ID:0DjhlLFj
PC専用サイトと携帯専用サイトを分けており、PCならPCのみ、携帯なら携帯のみでアクセス出来るよう振り分けを行っています。
ここ数日なのですが、携帯専用の方にエラーログが残るようになってしまいました。
エラーページにアクセス解析を設置していて、弾かれているのはau(ezweb)からアクセスしている方のようです。自分もauを使っているので.htaccessを設置する際、きちんと実験も行い、携帯からしかアクセス出来ないことを確認しています。
.htaccessのIP帯はこまめに更新しているので、記述漏れがあるとも思えません。
なぜエラーが出るのか不思議です。

その方がいわゆる「携帯なりすまし」をしている可能性があるのでしょうか?



122 :Name_Not_Found:2009/05/03(日) 16:14:36 ID:???
>>121
この文章だけで回答できる人がいたら、それは超天才ですねw

123 :Name_Not_Found:2009/05/03(日) 17:26:21 ID:???
>>121
.htaccessで制御しているのは、
・UA
・IPアドレス
以上の2つだけという理解で間違いないですか?

であれば、可能性は以下の3つのような事では?
・auのUA、または使用IPアドレスのレンジが違う(新機種の登場によって新UAや新IPアドレスが登場した)
・あなたの想像するような事か別の現象
・.htaccessの書き損じ

最後に、あなたが当然のように知っている情報でも、他人にとっては全く分からない前提を理解してください
.htaccessには何をどのように記載しているのか、具体的に制御したい通信の種類は何か、
.htaccessを設置しているサーバ、通信経路、その他が障害になっている可能性だってあるかもしれません

ここ以外の場所でも言える事ですが、自分本位な質問はしないよう注意しましょう

124 :Name_Not_Found:2009/05/03(日) 18:32:28 ID:???
>>121
>PC専用サイトと携帯専用サイトを分けており、
この書き方じゃ、
http://pc.example.com/
http://mobile.example.com/
に分けてるのか、
http://www.example.com/pc/
http://www.example.com/mobile/
に分けてるのかわからん


125 :Name_Not_Found:2009/05/09(土) 09:49:47 ID:???
>>121
何を以てauからのアクセスと判断したんだ? IPアドレスじゃないんだよね?
知りたいのはその判断基準が正しいかどうかじゃないの?

126 :Name_Not_Found:2009/05/22(金) 13:33:06 ID:???
order allow,deny
allow from all
deny from .cn

という感じで.cnのアクセスを禁止しているのですが、掲示板に.cnからのスパム投稿があったりします
自分のIPを追加したりしてアクセスできなくなっているのは確認できるのですが、原因がわかりません
.htaccessは一番上のフォルダにだけ設置しています

127 :Name_Not_Found:2009/05/22(金) 14:36:57 ID:???
>>126
・送信元にhost名(host.example.cn等)が無く、
IPアドレスだけの場合は.cnだけでは意味が無い
・逆引きしたIPアドレスが本来は.cnでなければならないはずが、
DNSのキャッシュ等に誤りや不整合がある場合等に.cnが正常に検知できない

結論
.cnだけでアクセス制御できるという短絡的な考え方は捨て、
IPアドレスや他の要素(language等)も合わせ制御すべきです

128 :Name_Not_Found:2009/05/22(金) 16:36:26 ID:???
SetEnvIf Accept-Language "^[^(ja)]+$" non_japanese
で日本語ブラウザ以外のアクセスは禁止しています。
Firefoxで日本語の言語を消去してアクセスすると403エラーで無限ループします。

オリジナルのErrorDocument 403で表示させているんですが これを解除すると無限ループはなくなります。
オリジナルの403には文章だけでURLの自動転送等は記載していないのですが 何が原因かわかりません。

.htaccessには他に特に記述はしていない状態です。

129 :Name_Not_Found:2009/05/22(金) 16:48:34 ID:???
追記

403のhtmlは別フォルダに配置し、その中に無記述の.htaccessを設置してもダメでした

130 :Name_Not_Found:2009/05/22(金) 16:55:22 ID:???
>>128
Accept-Languageの意味わかってる?


131 :Name_Not_Found:2009/05/22(金) 17:23:00 ID:???
>>130
日本語のブラウザじゃないのでが見れない→403も見れないをループしてるということでしょうか?
403のhtmlがあるフォルダは無記述の.htaccessを設置して
日本語のブラウザで見れないを解除されてるんじゃないかと思ったのですが。

132 :Name_Not_Found:2009/05/22(金) 17:26:41 ID:???
すいません無記述では無く
order allow,deny
allow from all
を記述したらうまくいきました。

お騒がせしました罵声を浴びせてください。

133 :Name_Not_Found:2009/05/22(金) 18:42:07 ID:???

           \ ナニヤッテンダー ?

\ バカヤロー ?



                            \ ウィ ?

134 :Name_Not_Found:2009/06/03(水) 02:39:24 ID:xzvAw7tr
現在RewriteCondでexample.jp、
RewriteRuleでexample.comにしています。

この設定をそのままにして
http[s]://example.jp
でアクセスした場合にhttp://example.comに飛ばさない方法はありますでしょうか?

通常のアクセスの場合は.comに飛ばし、SSLを使う場合は.jpで表示したいのです。
.comでSSLは使えないので、どうにかして上記のように設定したいのですが。

135 :Name_Not_Found:2009/06/03(水) 07:37:20 ID:???
CondでHTTPSがOnかどうかもチェックしてみるとかね。

136 :Name_Not_Found:2009/06/03(水) 19:00:47 ID:???
>>135
返答ありがとうございます。
とりあえず下のように試してみましたが、成功しませんでした。
質問した内容とは少しずれますが、結果は同じそうなので試してみました。

RewriteEngine on

RewriteCond %{REQUEST_URI} .*/foo.html$
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.jp%{REQUEST_URI} [R,L]

RewriteCond %{REQUEST_URI} !(.*/foo.html$)
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]

RewriteCond %{HTTP_HOST} ^example\.jp
RewriteRule (.*) http://example.com/$1 [R=301,L]

通常は.comで表示、foo.htmlだけhttp[s]://example.jpのSSLという形になると思ったのですが
foo.htmlにアクセスすると無限ループとなってしまいます。
とりあえず.htaccessには上記以外記入はしていないのですが、どう修正すれば良いかわかりますでしょうか。
一番下の2行を削除しても無限ループとなってしまいます。

137 :Name_Not_Found:2009/06/04(木) 09:39:46 ID:???
RewriteCond %{SERVER_PORT} !^443$


138 :Name_Not_Found:2009/06/04(木) 10:55:40 ID:???
>>136
とりあえずhttpsではないときにHTTPSがoffなんて都合のよい値になることはないから!^on$

>>137
httpsのサービスが443で行われているとは限らない。

139 :Name_Not_Found:2009/06/04(木) 13:38:52 ID:???
httpは80/tcp、httpsは443/tcp
なーんて固定観念持ってしまってる人多いよね

140 :Name_Not_Found:2009/06/13(土) 11:57:34 ID:???
質問失礼いたします。
初心者につき意味不明なところもあるかもしれませんがご容赦ください。
■css宣言を入れる
■国内、国外の検索ロボを弾く
■国内、国外の特定のリファラを弾く
■特定の国を弾く(今回は言語で弾く方法を選択しました)
をやりたいと思い、

AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 特定の国の言語 Lilith

order Allow,Deny
Allow from all
Deny from env=shutout
Deny from env=Lilith 

という.htaacessを作成しましたが、fire foxでアクセスすると問答無用で403になります。
言語の部分を削るとアクセスできるようなので、問題は言語部分か?と思ってるのですが

SetEnvIf Accept-Language ja Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

だけだとアクセスできるようで、何が原因なのかよくわかりません。
特に書き方にこだわっているわけではないので、
上の4つを満たす書き方が他にあるのなら教えて頂きたいです。
知恵をお貸しいただけると幸いです。

141 :Name_Not_Found:2009/06/13(土) 12:07:39 ID:???
AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 特定の国の言語 shutout

order Allow,Deny
Allow from all
Deny from env=shutout

ではダメなの?

142 :Name_Not_Found:2009/06/13(土) 12:08:12 ID:???
>>140
使っているサーバ側の設定によると思いますが、
正規表現を使わなければならない可能性はありませんか?

リファラ部分の一例
× http://example.com/
http://example\.com/

正規表現については該当スレッドで調べてみてください
例えばここ↓
http://pc11.2ch.net/test/read.cgi/php/1168450843/

最後にどーでもいい話ですが、
ファイアフォックスは商品名なので、正式には "Firefox" です
"fire fox" や "FireFox" のようには記載しませんので、
仕事で同名称を記載する事があるようでしたらご注意のほど

143 :140:2009/06/13(土) 12:29:23 ID:???
レスありがとうございます。

>>141
参考にさせていただいた.htaccessサイト様がLilithだったので
それしかダメなのかと思ってました。
shutoutも使えるのですね。勉強になります。
そして早速、Lilith→shutoutに変えてみましたが状態は変わらないようです…。

>>142
表記を簡略化しすぎてしまってすいませんでした。
実際には SetEnvIf Referer "^http://www\.xxxxx\.com" shutout
な感じになっております。
実は今までは、上の.htaacessから言語が無いものを使っておりました。
この度言語でも弾きたいと思いDeny from env=Lilithを追加したらこのザマですorz
Firefoxについての表記方法ご指摘ありがとうございました。
うっかり恥かくところでした。

144 :140:2009/06/13(土) 12:48:01 ID:???
140です。連投申し訳ありません。
色々いじってみた結果、なんとなく原因が見えました。
どうやらSetEnvIf Accept-Language 特定の国の言語 shutoutのようです。
特定の国の中に米国もあり、enを入れていたのですがこれがダメみたいです。
IEではアクセスできたことを考えると、もしかしてFirefoxはデフォルトでenが
受け入れ設定になっているとかなのでしょうか?
もしそうだとすると、言語で弾く以外の方法を考えた方が良さそうな気がします。
>>140の条件4つを満たす何か良い書き方ありましたら教えていただけると助かります。
色々聞いてばかりですいません。

145 :140:2009/06/13(土) 13:40:00 ID:???
たびたびしつこくてすいません140です。
自己解決?しそうな予感なのですが色々不安なので確認お願いします。

AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 許可する国 Lilith

order Allow,Deny
Allow from env=Lilith
Deny from env=shutout

素人の浅知恵で上記のようにしてみた所、IEでもFirefosでも動いたようなのですが、
order Allow,Denyの後がAllow from allでなくても文法的に問題ないのでしょうか。
あちこちのサイト様を見てもこういう書き方が載っていなくて少し不安です。

146 :Name_Not_Found:2009/06/13(土) 14:03:48 ID:???
その書き方で大丈夫なはず、自分もそのやり方でやってる
リファレンスでは大抵Allow(またはDeny) from allが記載されてるけど
必ず書かなきゃいけないわけじゃないよ

ちなみにFirefoxは標準で英語が設定されてる
(ツール→オプション→コンテンツの「言語」で確認)
英語は他の日本語ブラウザでも標準設定されてるものは多いから
許可する言語で制御するのが正解だと思う、自力解決オメ>>140

147 :Name_Not_Found:2009/06/13(土) 16:09:35 ID:???
>>145
Accept-Language で "ja" のみを Allow とするのでしたら、
大多数の MACユーザーがデフォルトで使う Safari の古いバージョン、
これも Safari系になりますが最近シェアの伸びた Google Chrome、
そして一部の携帯端末用ウェブブラウザなどでは、
使用言語に "en" しか入っていない場合があるため注意が必要です

わたしの場合ですが、以上の理由などから Accept-Language は Deny とし、
英語なら "en" を除いた "en-US" など、該当する全てを登録し弾いています

最後に余談ですが、日本向けに提供されるブラウザの場合、
たとえば Firefox なら "en" と "en-us" が初期言語設定に採用されています

ですが、Firefox の英語版は少し違っていて、インストールすると分かる通り、
"en-us" ではなく "en-US (us部分が大文字)" が採用されているため、
"en-US" を Deny すれば英語圏の大多数を弾けることになります

148 :Name_Not_Found:2009/06/13(土) 17:00:22 ID:???
>>146>>147
ありがとうございます。
書き方あってましたか!何だか嬉しいです。
やはりFirefoxは英語が標準設定なのですね。
147さんの海外版Firefoxがen-USを採用という情報、
恐らく自分ひとりでは一生知り得なかったと思います。
大変参考になりました。
ところで大文字小文字で認識が異なるなら、
大文字設定にした場合、IEでもきちんと弾けるのでしょうか。

149 :Name_Not_Found:2009/06/13(土) 17:28:36 ID:???
>>148
Microsot製の日本国内向け純正 IE だけに限ってですが、
比較的新しいバージョンでは "en" は初期設定で採用されていません

今後、同じような常用に遭遇した際にご自身で解決するため、
PC やウェブブラウザがアクセスするたびに吐き出す環境情報について、
詳しくなられることをおすすめします

参考: 環境変数チェッカー
http://www.cybersyndrome.net/evc.html

IE で言語設定を変更しながら、
上のリンク先にアクセスして検証すれば分かる通りです

.htaccess は以下の 2点についておさえておくだけで、
・書き方の基本
・上記のようなアクセス元の吐き出す情報
自分自身でいくらでも応用してアクセス制御できるようになります

150 :140=148:2009/06/13(土) 22:44:42 ID:???
>>149
ありがとうございます。
チェッカーのアドレス、ブクマいたしました。
色々と勉強して使いこなせるようになりたいと思います。
この度はいろいろありがとうございました。ROMに戻ります。

151 :Name_Not_Found:2009/06/26(金) 19:49:05 ID:???
アホーの画像検索ボットのアクセスらしいのですが、

***.**.image.search.mud.yahoo.net(**は毎回ちがう任意のアルファベットと数字)

からのアクセスを弾く場合、.htaccessにどう記述すればいいのでしょうか?
また、このボットはロボテキを読むのでしょうか?(読む場合は記述方法を教えて下さい)
どなたかお分かりになる方がいれば、ご教授願えればと思います

152 :Name_Not_Found:2009/06/26(金) 21:37:22 ID:???
>>151
> また、このボットはロボテキを読むのでしょうか?(読む場合は記述方法を教えて下さい)

これについては.htaccessの仕事ではないのでスレ違いです

Yahoo!検索かhtml関連のスレで質問してください

153 :Name_Not_Found:2009/06/26(金) 21:42:05 ID:???
>>151
order deny,allow
deny from all
allow from おまいのIP

で完璧だろう

154 :Name_Not_Found:2009/07/04(土) 10:47:37 ID:???

http://www.example.jp/~hoge/へのアクセスを
http://hoge.example.jp/に飛ばしたいのですがうまくいきません。

Redirect permanent /~hoge/ http://hoge.example.jp/

と書いてみてhttp://www.example.jp/~hoge/index0.htmlにアクセスしても
http://www.example.jp/index0.htmlに飛んでしまい404になってしまいます。
どう書いたらhttp://hoge.example.jp/index0.htmlにうまく飛ばせるのでしょうか。


それと現在アクセス制限をしていて

Order Allow,Deny
Allow from all
allow from env=wellcome
deny from env=shutout
以下禁止UA・ホスト・IP

としているのですがこれに

<Files robots.txt>
order deny,allow
allow from all
</Files>

を書き足すと打ち消されてしまいますか?
その場合どう書き直したらいいのでしょうか。

155 :154:2009/07/04(土) 10:57:44 ID:???
>>154のhogeは同一ドメインのバーチャルホストです。

156 :Name_Not_Found:2009/07/05(日) 17:53:06 ID:???
どっかにRedirectに影響が出るようなRewriteRuleが残ってるのかも?
そしてrobots.txtの<Filesを書き足すとまずディレクトリ全体のアクセス制限の設定が適用されて
さらにrobots.txtへのアクセスの時は<Filesの中に書いたアクセス制限を適用しなおされることになるから
robots.txt以外には何の影響も出ない。

157 :154:2009/07/06(月) 00:57:16 ID:???
>>156
ありがとうございます。
RewriteRuleというとmod_rewriteのですよね?
借りているサーバーではmod_rewriteは使えない(可能だけど申請してない)し、
その既述を.htaccessにしていないです。
.htaccessを Redirect permanent /~hoge/ http://hoge.example.jp/ (改行)
だけにしてみても同じ結果でした。
robots.txtについては安心しました。ありがとうございました。

158 :Name_Not_Found:2009/07/14(火) 04:59:33 ID:???
htaccessファイルの1行あたりの長さの制限て255バイトでいいの?
最近は1024バイトになったとかじゃない?

159 :Name_Not_Found:2009/07/14(火) 08:52:11 ID:ZYSgreRP
以下のような書式で、ユーザーエージェントが「Mozilla/5.0」としか
返してこないものだけ弾きたいのですがどのようにexampleの部分に
記述すればよいのでしょうか?

たとえば
Mozilla/5.0 →弾く
Mozilla/5.0 (Windows; U; Windows NT 5.1・・・・ →こういうのは弾かない
こんな感じです。


書式:
SetEnvIf User-Agent "example" deny_ua

order allow,deny
allow from all
deny from env=deny_ua

160 :Name_Not_Found:2009/07/14(火) 11:00:46 ID:???
>>159
^Mozilla¥/5¥.0$

161 :159:2009/07/14(火) 11:17:41 ID:???
>>160
ありがとうございます。
早速記述してみます。

162 :Name_Not_Found:2009/07/14(火) 15:23:46 ID:???
>>157
Redirect permanentやRedirect 301はブラウザにキャッシュされるので
キャッシュをクリアした上でRedirect tempやRedirect 302で
もう一度試してもらうか、hoge.example.jp側がラリーを続けるような
設定になってないかとか、www.example.jpが*.example.jpを
すべて自分であると認識するように設定されていて
hoge.example.jpへはジャンプさせられないとか
そんな感じかも。

>>158
ApacheではMAX_STRING_LENのマクロで定義された数字のバイト数を上限として
1行を読み取るみたいですが、それがコンフィグファイルを読む部分では
HUGE_STRING_LENと定義され、HUGE_STRING_LENは8192となっているので
1行で8192バイトまでいけるっぽいです。
ほかにも
Allow from 192.0.2.0 192.0.2.1 192.0.2.2 ...
と続けることができるディレクティブもAP_MAX_ARGCという64と定義されているマクロで
64個までの制限があるっぽいです。

163 :Name_Not_Found:2009/07/14(火) 19:51:58 ID:SVYjDHqa
order allow,deny
allow from all
deny from 任意
と、任意のホストやIPについてアクセス制限しているのですが
どうもとあるところ(.server.lu)からのアクセスだけ制限できていません。
htaccessを指定してあってもすり抜けてくることもあるということでしょうか?

164 :Name_Not_Found:2009/07/14(火) 20:49:05 ID:???
>>163
設定ミスだろ

165 :Name_Not_Found:2009/07/14(火) 21:18:19 ID:SVYjDHqa
同じように自分のホストを設定すると403になるのでミスなのかよくわかりませんが
*.server.luというホストの場合
deny from .server.lu
で良いはずですよね?

166 :Name_Not_Found:2009/07/14(火) 21:20:14 ID:???
>>165
server.luが持ってるIPアドレスを調べて、IPアドレスで制限したほうが早くね?

167 :Name_Not_Found:2009/07/14(火) 22:17:06 ID:???
>>162
ありがとう。

168 :Name_Not_Found:2009/07/14(火) 22:25:53 ID:???
>>165
*.server.luを正引きしてIPアドレスが一致しない場合はホスト名では制限できない。

169 :163:2009/07/15(水) 14:14:09 ID:NVDhvbvz
わかりました、やってみます。
ありがとうございました。

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

171 :Name_Not_Found:2009/07/19(日) 16:08:55 ID:odpIJSL+
http://www.yahoo.co.jp/http://www.yahoo.co.jp/index.htmlに統一したいのですが記述が解りません。
拡張子無しの記述は解るのですが…拡張子有りに固定は一般的でないようなので調べても見つかりません。
色々、試してみましたが無理でした。
宜しくお願いします。

172 :Name_Not_Found:2009/07/19(日) 16:29:09 ID:???
>>171
>>170
テンプレも読まずに質問するのはいかがなものかと思いますが

173 :Name_Not_Found:2009/07/19(日) 18:22:19 ID:???
>>172
クレクレ団だからしかたあるまい

174 :Name_Not_Found:2009/07/22(水) 19:07:45 ID:???
>>171
/に使われるものをindex.htmlだけに限定するということなら
DirectoryIndex index.html
/へ来た人を/index.html移動させるなら
RedirectMatch 301 ^/$ /index.html
あたりかな?

175 :Name_Not_Found:2009/07/23(木) 22:56:16 ID:???
質問です。

htaccessを使ったBasic認証時に入力されたユーザー名を
別のシステム(ファイルのダウンロードカウンターなんですが)に渡して
どのユーザーがどのファイルをダウロードしたか、見たいな事を実現したいのですが
こんなこと可能なんでしょうか?

176 :Name_Not_Found:2009/07/23(木) 23:19:44 ID:???
>>175
apacheのログには、ユーザー名が記録されてるでしょ


177 :Name_Not_Found:2009/07/23(木) 23:23:43 ID:???
>>176
ありがとうございます。

なるほど!では何とかそこから持ってくればできなくはないってことですね。
難しそうですが、調べてみます。
助かりました。

178 :Name_Not_Found:2009/07/26(日) 10:47:17 ID:ndKL/66x
mXXXX.giga-dns.comからのアクセスを拒否したくて、

Order Allow,Deny
Allow from all
Deny from mXXXX.giga-dns.com

と記述してるのに、mXXXX.giga-dns.comからのアクセスが続いて困ってます。
この記述に間違いがあるのでしょうか。

179 :Name_Not_Found:2009/07/26(日) 11:58:23 ID:???
>>178
質問する前にまず、
テンプレ(>>1-3)に目を通してから質問しましょう

他のスレでもどこでも、ルールを確認してから投稿するよう心がけてください

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

180 :Name_Not_Found:2009/07/27(月) 02:00:17 ID:???
>>178
逆引きしたホスト名を正引きして元のIPアドレスに戻らないときは
ホスト名によるアクセス制限は使えない。
それを書いた.htaccessの別の部分の<Filesや下の階層の.htaccessなどで
別のアクセス制限をしているときもそのアクセス制限で上書きされてしまって
効かない。

181 :Name_Not_Found:2009/07/30(木) 23:55:09 ID:toJ6z8Uo
example.com/ → example.com/abc/
example.com/admin/ → example.com/abc/admin
↑のようにrewriteしたいのですが404になってしまいます。

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /abc$1 [L]

このように記述しているのですが、悪い部分をご指摘いただきたい。

182 :Name_Not_Found:2009/07/31(金) 00:14:34 ID:???
/が抜けてました。。orz
RewriteRule ^(.*)$ /abc/$1 [L]

183 :Name_Not_Found:2009/07/31(金) 00:17:47 ID:???
>>182
アクセスログに転送しようとしている先の
URL が残っているはずなので、
それを見ればどこに問題があるか分かると思いますよ

184 :Name_Not_Found:2009/07/31(金) 23:15:25 ID:???
>>181
おそらく/abcへのアクセスも/abc/abcへ、/abc/abcへのアクセスも/abc/abc/abcへと変換してそうなので
RewriteCond %{REQUEST_URI} !^/abc
みたいなCondでせき止めておく必要があると思う。

185 :Name_Not_Found:2009/08/02(日) 21:55:07 ID:???
allow(deny) from allは場合によっては書かなくて良いと聞いたのですがどのような場合ですか?

186 :Name_Not_Found:2009/08/03(月) 03:03:58 ID:???
Apache HTTP Serverの場合はOrder allow,denyにDeny from all、
Order deny,allowにAllow from allと同じ意味が含まれているので
基本的には書く必要はまったくない。
設定ファイルを読みやすくする目的でわざわざOrderを逆にして
Allow from allやDeny from allを書いていることがほとんど。

187 :Name_Not_Found:2009/08/03(月) 16:45:29 ID:???
>>186
ありがとう

188 :Name_Not_Found:2009/08/03(月) 23:50:31 ID:???
FLV ファイルの直リンクを拒否したいと思っているのですが
思うように設定ができません。

プレーヤーは JW FLV Media Player 4.5 を使っています。
ログを見てると swf ファイルから FLV ファイルを読み込んでいるようです。

リファラを見ると、swf には埋め込んだ HTML ファイルのリファラが、
FLV ファイルのリファラは何も記載されていませんでした。

一度、以下の設定を行ってみました。

SetEnvIf Referer "^http://www\.hogehoge\.com" ref_ok
SetEnvIf Referer "^$" ref_ok
order deny,allow
deny from all
allow from env=ref_ok

→ swf ファイルへの直リンクが禁止になるので、
 直リンクされても再生されず、一見成功したかに見えましたが
 FLVファイルだけ直リンクにした場合、再生されてしまいました。

プレーヤーにはこだわりはないので、
別のプレーヤーなら出来るというのがあれば
乗り換えることは可能です。

何かいい方法はありませんでしょうか。

189 :Name_Not_Found:2009/08/04(火) 01:21:08 ID:???
(´・ω・`)しらんがな

190 :Name_Not_Found:2009/08/04(火) 11:51:14 ID:???
質問。特定の検索ワード "]" を含む客を弾きたくて、

SetEnvIf Referer "]" kick
SetEnvIf Referer "%5D" kick
Order Allow,Deny
Allow from all
Deny from env=kick

としても機能しないんだがどうしたらいいんだろうか

191 :Name_Not_Found:2009/08/04(火) 15:28:33 ID:???
>>190
"](右大括弧、大括弧閉じる)"は正規表現の特殊文字だから…

サルにもわかる正規表現入門
http://www.mnet.ne.jp/~nakama/

上のリンク先を読んでも分からない事があれば、
下記のスレとかで調べてみては?

正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/

ルールやテンプレは無さそうだけど、
質問したくなったらスレ内のログくらいは確認してから質問してあげてください

192 :Name_Not_Found:2009/08/04(火) 18:02:14 ID:???
RewriteCond %{HTTP_REFERER} %5D [NC,OR]
のほうでやったら機能したわ。サンクス

193 :Name_Not_Found:2009/08/05(水) 23:35:36 ID:RY24/4zD
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /aa/bb/
RewriteCond %{LA-F:REQUEST_FILENAME} \.htm$
RewriteRule ^(.*)$ $1l [R]
</IfModule>

という記述はどういう意味でしょうか?
自分で調べてみた範囲では、転送の設定っぽい?ということはわかりましたが、
何が起こっているのかよくわかりません。

現状、ルートディレクトリ以下にあるフォルダの中身へのリンクが
/aa/bb/フォルダ名/ファイル名.html のようになっていて、
ローカルで見ると全てリンク切れなのですが、
その原因はこの設定では?と思っているのですが…。

194 :Name_Not_Found:2009/08/06(木) 07:30:19 ID:???
/aa/bb/〜.htm としてアクセスされたときに /aa/bb/〜.html へリダイレクトさせる設定で
〜.htm へのハイパーリンクを修正することなく 〜.html という名前のファイルへ
移動できるようにしているんでしょう。

195 :193:2009/08/06(木) 07:48:06 ID:Hggn3Cns
>>194
ありがとうございます。
では、存在しない/aa/bb/〜へのリンクを生成するためというわけではないのですね。

上に書いたように、FTPで見る限り/aa/bb/というフォルダは無く、
ルートにindex.htmlがあり、その直下にフォルダがあってリンク先はそれぞれそのフォルダ内にあるのですが
リンクの記述は/aa/bb/〜.htmlのように書かれているので、ローカルではリンク切れになるのですが
Web上では正常に稼動しているので不思議に思っています。

196 :Name_Not_Found:2009/08/10(月) 15:49:53 ID:???
それの他にも/aa/bb/絡みの設定(Redirect, RedirectMatch, Rewrite*)があるかも。
.htaccessではなくサーバーそのものの設定ファイルの中とか。

197 :Name_Not_Found:2009/08/12(水) 21:37:51 ID:iCFOFgtJ
先輩方に質問です
現在の設定にAを追加したいんですが、ご教授して頂けないでしょうか?
@とAを個別にせっているのは上手くいきましたが、合体させると上手くいきません。。。Orz


@現在の設定-----------------------------------------

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} !DoCoMo [NC]
RewriteCond %{HTTP_USER_AGENT} !KDDI [NC]
RewriteCond %{HTTP_USER_AGENT} !Up.Browser [NC]
RewriteCond %{HTTP_USER_AGENT} !Softbank [NC]
RewriteCond %{HTTP_USER_AGENT} !Vodafone [NC]
RewriteCond %{HTTP_USER_AGENT} !J-PHONE [NC]
RewriteCond %{HTTP_USER_AGENT} !DDIPOCKET [NC]
RewriteCond %{HTTP_USER_AGENT} !Nokia [NC]
RewriteCond %{HTTP_USER_AGENT} !MOT- [NC]
RewriteCond %{HTTP_USER_AGENT} !e-mobile [NC]
RewriteCond %{HTTP_USER_AGENT} !emobile [NC]
RewriteCond %{HTTP_USER_AGENT} !L-mode [NC]

RewriteRule ^(.*)$ http://転送先.com/$1 [R,L]
------------------------------------------

A追加して設定
255.100.***.*** 〜 255.150.***.*** をyahoo.co.jpに転送(アク禁)

198 :Name_Not_Found:2009/08/13(木) 13:36:58 ID:???
@のCondとRuleの手前か@のRuleの[R,L]を[R]に変えてその下に
RewriteCond %{REMOTE_ADDR} ^255\.1[0-5][0-9]\.
RewriteRule .* http://yahoo.co.jp/ [R]
とか。

199 :Name_Not_Found:2009/08/23(日) 16:00:26 ID:???
Zend Frameworkのマニュアルに
RewriteRule ^(.*)$ - [NC,L]

という記述があるのですが、移動先の - の部分は何を表しているのでしょうか

200 :Name_Not_Found:2009/08/23(日) 19:49:49 ID:???
ルールがマッチしても書き換えない。

書き換えないのにパターンに()が付いていたり^.*$にマッチさせるのにNCだったりと
ちょっと冗長な部分が気になるけど。

201 :Name_Not_Found:2009/08/24(月) 12:30:50 ID:???
>>200
ありがとうございます。括弧はこちら側のミスです。

あと以下のようにルールが2つあるのですが、どうして2つ必要なのでしょうか?
RewriteRule ^.*$ - [L]
RewriteRule ^.*$ index.php [L]


202 :Name_Not_Found:2009/08/24(月) 23:34:33 ID:???
その2つのRewriteRuleだけなら下のRuleは必要ない。
おそらく上のRuleと組になるRewriteCondがいくつかあって、そのCondを満たしたときは上のRuleで終了
満たさなかったときは上のRuleは適用せず下のRuleを適用して終了という感じになってるはず。

203 :Name_Not_Found:2009/09/03(木) 11:31:06 ID:HxXiTjnV
301でサイト移動をする場合に関数に色々な値があるのをそれぞれリダイレクトさせたい場合は
一挙に書くにはどうすればいいでしょうか?


1つ1つ書くと下記のようなのを1つにしたいです。

Redirect 301 /index.php?a=1 "http://www.sample.jp/index?a=1"
Redirect 301 /index.php?a=2 "http://www.sample.jp/index?a=2"
Redirect 301 /index.php?a=3 "http://www.sample.jp/index?a=3"
 ・
 ・
 ・
Redirect 301 /index.php?a=a1 "http://www.sample.jp/index?a=a1"
Redirect 301 /index.php?a=b2 "http://www.sample.jp/index?a=b2"
Redirect 301 /index.php?a=c3 "http://www.sample.jp/index?a=c3"
 ・
 ・
 ・

204 :Name_Not_Found:2009/09/03(木) 11:32:45 ID:???
>>203
スレ違い

正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/

205 :Name_Not_Found:2009/09/03(木) 21:49:25 ID:???
>>203
Redirect 301 /index.php http://www.example.jp/index
ではあかんの? クエリ部分の細かい指定するならmod_rewriteじゃね?

> Redirect 301 /index.php?a=1 "http://www.example.jp/index?a=1"
ところでこの設定ちゃんと効いてる?

206 :Name_Not_Found:2009/09/03(木) 21:56:46 ID:???
>>205
http://pc11.2ch.net/test/read.cgi/php/1168450843/550
http://pc11.2ch.net/test/read.cgi/php/1023791370/386

207 :Name_Not_Found:2009/09/05(土) 18:27:27 ID:KO9HqeyY
.htaccessで特定のファイルにアクセスできなくするというのは
----------------------------------
<Files ~ "\.(dat|log|csv)$">
deny from all
</Files>
----------------------------------
このような表記で出来るようなのですが
----------------------------------
<Files ~ "^\.ht">
deny from all
</Files>
----------------------------------
こちらのように.htから始まるファイルへのアクセスを拒否するという
設定と重複して表記するのはどのように書くのでしょうか。

208 :Name_Not_Found:2009/09/06(日) 14:27:21 ID:???
そのまま2つ続けて書いておけばいい。

209 :Name_Not_Found:2009/09/15(火) 15:35:43 ID:CYXv8MMD
皆さん質問させてください。よろしくお願いします。

http://○○.jp/△△.cgi?id=××というリンクから飛んでくるアクセスを
http://○○.jp/に飛ばしたいんですが、どうしたらいいですか?

.htaccessとかで設定できるのでしょうか?
設定できるようであれば、設定方法を教えてください。

210 :Name_Not_Found:2009/09/15(火) 15:40:36 ID:???
>>209
ここらへん参考にどうぞ
ttp://mikeneko.creator.club.ne.jp/~lab/web/htaccess/redirect.html

211 :Name_Not_Found:2009/09/15(火) 15:41:21 ID:CYXv8MMD
>>209です 連投すいません。

以前サイトで逆アクセスランキングを設置していて、○○.jp/△△.cgi?id=××
というURLを発行してリンクをもらっていたのですが、ランキングを撤廃したため
リンク切れとクローラーに認識されてしまうのです。
そこで、○○.jp/にリダイレクトできれば・・・と考えて質問させていただきました。

あらためてよろしくお願いいたします。

212 :Name_Not_Found:2009/09/15(火) 18:40:39 ID:???
その/△△.cgiへのアクセスすべてを/へ移動させるだけなら
Redirect permanent /△△.cgi http://○○.jp/
でよさそう。

213 :Name_Not_Found:2009/09/18(金) 00:50:41 ID:???
RewriteCond %{HTTP_USER_AGENT} DoCoMo [OR]
RewriteRule ^$ http:/xxx.jp/mobile/index.html [R]

とauとsoftbankつずけて書いていたのですが
ウェブブラウザでも携帯サイトを見るようになりました。

ブラウザはhttp:/xxx.jp/にいくようにするにはどうしたらよいでしょうか?

214 :Name_Not_Found:2009/09/18(金) 01:14:28 ID:???
>>213
テンプレを読んでから質問お願いします

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

215 :Name_Not_Found:2009/09/19(土) 00:20:18 ID:???
>>213
そのCondとRuleの間に携帯電話以外の余計なCondとかRuleがあったりしないかな?

216 :Name_Not_Found:2009/09/19(土) 15:12:52 ID:???
>>215
どうも解決しました

UP.Browser用を消したらいけました
ありがとうございました。


217 :Name_Not_Found:2009/10/02(金) 09:09:36 ID:???
.htaccessでIP単位でのサイト振り分け方法を教えてください。

サブネットマスクも含めてIPによるサイト振り分けをしたいんです。


123.456.789.0/22はサイトAへ
987.654.321.0/22はサイトBへ
それ以外はサイトCへ

というような仕様を.htaccessでしたいんですが。
どなたか教えてください。

218 :Name_Not_Found:2009/10/02(金) 09:37:04 ID:???
>>217
嫌です

219 :Name_Not_Found:2009/10/02(金) 09:46:15 ID:???
>>217
例示には、Private IP address として予約されている、
10.0.0.8/8 などを使うとよいと思いますよ

本題ですが、Rewrite Rule を使ってはいかがですか?
検索すればゴロゴロ出てきますが一例としては次のような感じでしょうか
----
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^10\.0\.
RewriteRule ^.*$ http://site-A.example.com/ [R,L]

RewriteCond %{REMOTE_ADDR} ^10\.128\.
RewriteRule ^.*$ http://site-B.example.com/ [R,L]
----

上記以外は、site-C へ通る(Redirect されない)といった具合です

以上の方法の注意点ですが、
Subnet mask は理解されず、
Network address は前方参照かつ正規表現で理解されるはずなので、
必要に応じて ^10\.[0-5][0-9]\. のように指定し忘れないようにですね

間違っていたらすみません
LAN 環境でテストすればすぐ分かるはずですから、試してみてください
検討を祈ります

220 :Name_Not_Found:2009/10/02(金) 09:49:43 ID:???
>>219
>検討を祈ります


221 :219:2009/10/02(金) 10:30:29 ID:???
健闘を祈りますですね
すみません
誤字です
忘れてください
恥ずかしいですw

と駄レスを書いてみるテスト

222 :Name_Not_Found:2009/10/02(金) 10:42:35 ID:???
>>221
多分ね、217みたいなひとは、ヒントくらいじゃ何もしなくて、
丸ごと回答を貰えないとまた質問してくると思うんだ


と駄レスを書いてみるテストその2

223 :Name_Not_Found:2009/10/02(金) 11:53:05 ID:???
と駄レスを書いてみるテストその3、ダー!

1,2,3ときたら、言いたくなるよね?ね?ダメ?w

224 :Name_Not_Found:2009/10/05(月) 17:01:03 ID:???
初心者質問スレより誘導されて来ました。
質問失礼します。


ロボテキについて調べたのですが、
全て「上位ディレクトリに置くこと」としか書かれていません。
たとえば
http://google.com/ではなく
http://google.com/abc/
http://google.com/def/
「def」以下のみロボテキを入れたい場合、
defフォルダ内にロボテキを入れれば可能なのでしょうか?
それともそんなことは不可能ですか?

変な質問で申し訳ありませんが、
.htaccessと合わせて考えたら混乱してきたので、
よろしければ教えてください。


225 :Name_Not_Found:2009/10/05(月) 20:23:49 ID:???
>>224
テンプレをまず読んでから質問をお願いします
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
×google.com
○example.com


本題ですが、robot.txt はウェブサイトのトップ(ルートディレクトリ)に置いた場合にのみ意味があります
○example.com/robot.txt
×example.com/abc/robot.txt

詳しくは各々の検索エンジンの仕様についてのページをご覧ください
 例) Yahoo! の場合
http://info.search.yahoo.co.jp/archives/002885.php

検索エンジンが任意のウェブサイトのルートディレクトリに置かれた robot.txt を認識・理解し、
robot.txt に書かれたルールに従ってウェブサイト内の各ページを探索する流れは、
上のリンク先に書かれてある通りですが、ざっくりと書けば次のようになります:
----
1) (ウェブサイトのルートディレクトリにある) robot.txt を読み探索ルールを理解した上でサイト内を探索

ルートに robot.txt が見つからなかった場合、
2) ウェブサイトのルートからリンクを辿ってサイト内の各ページを探索
----

226 :Name_Not_Found:2009/10/05(月) 20:32:31 ID:???
>>224
ちなみに robot.txt は .htaccess とは何ら関係が無いので、
スレ違いです

次回からは、検索エンジンに関する以下のようなスレで質問してください

[Google・Yahoo!等]■ロボット型検索エンジン44■
http://pc11.2ch.net/test/read.cgi/hp/1241450290/

227 :Name_Not_Found:2009/10/05(月) 21:12:40 ID:???
>>225,226
テンプレを見逃していて申し訳ありませんでした。
それでも丁寧に教えてくださって助かりました。
本当にありがとうございます。
理解できました。
恥ずかしながら、どうやら.htaccessと同じ解釈をしていたらしいです。

次回からは該当スレに質問します。
ありがとうございました。

228 :Name_Not_Found:2009/10/06(火) 09:54:52 ID:???
以下のように拡張子なしのURLにアクセスがあった場合に
拡張子ありのURLに301リダイレクトさせたいと考えています。

?http://www.example.net/qa
        ↓
?http://www.example.net/qa.html?

.htaccessにて、以下のように記述してみたところ
無限ループが起きてしまいました。

RewriteCond %{THE_REQUEST} ^.*/qa
RewriteRule ^(.*)qa(.*)$ ?http://www.example.net/qa.html? [R=301,L]

RewriteRule の ^(.*)qa(.*)$ がおかしいかと思うのですが、
ここを ^(.*)qa$ にしても動作しないようです。

どのように記述したらよろしいでしょうか。よろしくお願いします。

229 :Name_Not_Found:2009/10/07(水) 11:16:06 ID:???
.htaccessに文法エラーがあると動かないんだけど
文法エラーがあったら無視して動作するとかの設定って
httpd.confにどうやって書けばいいの?

230 :Name_Not_Found:2009/10/07(水) 11:54:46 ID:???
>>229
>>1
ここは、.htaccessファイル(「分散設定ファイル」)の
書き方・使い方などに関するスレです

httpd.conf については、
Apache 関連のスレで質問してくだちゃい
http://find.2ch.net/?STR=Apache

231 :228:2009/10/07(水) 17:15:01 ID:???
>>228はそもそも無理なことなんでしょうか…。

232 :Name_Not_Found:2009/10/07(水) 17:32:17 ID:???
>>231
正規表現の書き方で自信がない時に役立つスレ
http://find.2ch.net/?STR=%C0%B5%B5%AC%C9%BD%B8%BD&TYPE=TITLE

233 :Name_Not_Found:2009/10/08(木) 10:33:55 ID:duCCYSue
特定のIPアドレスからの接続を、特定のhtmlに飛ばす方法ってご存知ありませんか。
xreaで.htaccessを置いたのですが、特定IP、仮に[222.222.222.222]からの
アクセスを特定のHTMLに飛ばす設定を仕込んだんですが
----------------
order allow,deny
allow from all
deny from 222.222.222.222 <こいつは転送させる
ErrorDocument 403 /test.html <飛ばし先
----------------
としました。

しかし、指定してないIP、仮に[444.444.444.444]でアクセスしたら
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@xrea.com and inform them of the time the error occurred,
and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.

とエラーが表示されてしまっています。
なぜでしょうか うーん

234 :Name_Not_Found:2009/10/08(木) 11:27:19 ID:???
>>233
マルチポストはやめましょう
ErrorDocumentディレクティブについて再勉強

235 :Name_Not_Found:2009/10/23(金) 13:14:03 ID:oGZCXuhe
特定のリファラからの特定のファイルへのアクセスのみリダイレクトさせる設定はどうすればいいのでしょうか?


どなたかご回答よろしくお願いします

236 :Name_Not_Found:2009/10/23(金) 13:28:59 ID:???
>>235
ここまでやってみたのですが上手く行きませんでした
どこか間違っているのでしょうか?

まずはやってみて、
壁にぶち当たったら上のように質問されてはいかがでしょうか?

237 :Name_Not_Found:2009/10/23(金) 13:49:34 ID:oGZCXuhe
>>236
個別のやり方は分かったのですが、どうしても組み合わせる方法が分かりません

↓試してみた方法です

SetEnvIf Referer "sample.net" Ref1

RedirectMatch permanent [2-9]\.html$ http://google.jp from env=Ref1

ご指導の程よろしくお願いします

238 :Name_Not_Found:2009/10/23(金) 19:22:40 ID:???
>>237
しょぼ!

239 :Name_Not_Found:2009/10/23(金) 22:13:22 ID:???
>>237
質問したい時はテンプレ>>1-3を読んでから

240 :Name_Not_Found:2009/11/16(月) 18:08:47 ID:???
サーバ側で.htaccessの機能に制限があり、AddTypeでのファイル拡張子を書き換える記述が
できないとのことなんですが、htmlのままPHPを動かすことはできないってことでしょうか?
メニューをインクルードしたいだけなんですが…
AddHandlerを使う記述もいろいろ試しましたがだめでした

241 :Name_Not_Found:2009/11/16(月) 21:38:38 ID:???
>>240
urlの書き換えで、xxxx.htmlをxxxx.phpにむけたらいいじゃん

242 :Name_Not_Found:2009/11/16(月) 21:45:34 ID:???
>>240
メニューをインクルードしたいなら、
HTMLにPHP埋め込めばいいだけじゃない

.htaccessで解決しようとする視点はあまり良くないような気がする

スレ違いっぽい気がするから
↓で
【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
http://pc11.2ch.net/test/read.cgi/php/1252590753/

243 :240:2009/11/17(火) 09:26:44 ID:???
レスありがとうございました
>>240
拡張子を.htmlのままにしたかったので、AddType application/x-httpd-php .htm .html

代わるような記述を探していました
そちらのスレでも聞いてみます

244 :Name_Not_Found:2009/11/17(火) 10:02:36 ID:???
>>243
だから、
RewriteRule (.*)¥.html $1.php
みたいにすれば、拡張子はhtmlのままで、phpで動かせるんじゃないかと。

245 :240:2009/11/17(火) 10:40:13 ID:???
>>244
「mod_rewriteのファイル拡張子を書き換える記述は利用できない」
とのことらしいので、だめっぽいです
ぶっちゃけお名前.comの共用サーバーなんですが…

盛大に勘違いしていたらすみません

246 :Name_Not_Found:2009/11/17(火) 18:26:42 ID:yS0GXDry
AddHandlerディレクティブが駄目という時点でサーバの設定ファイルのディレクトリコンテキストのみでしか使えない
AllowOverrideディレクティブでFileInfoに対しての上書きが許可されていないということを予測し、
同じくFileInfoに対しての上書きが許可されていないと使えないRewriteRuleなどのディレクティブは
代替できる手段にはなり得ることはほとんどないというところまで導けないと回答者なんかにはなれないw

>>245
ぶっちゃけなくてもphpを*.php以外で使う手段は用意されてないでしょう。

247 :Name_Not_Found:2009/11/17(火) 18:57:54 ID:???
>>246
自称上級者登場w

248 :240:2009/11/18(水) 09:09:52 ID:???
>>246
諦めがつきました…ありがとうございます
何度もすみませんでした

249 :Name_Not_Found:2009/11/20(金) 03:51:02 ID:???
.htaccessでIP拒否したいのですが
無料ブログに、他HPからひっぱってきて使いたいのですが
無料ブログではiframeが使えないので
objectでひっぱってくるのは無理ですか?

250 :Name_Not_Found:2009/11/20(金) 08:31:21 ID:???
>>249
.htaccessとは関係ない内容ですので、お引き取りください。

251 :Name_Not_Found:2009/11/21(土) 06:35:01 ID:???
このスレって厨房が多いから注意ですよ

252 :Name_Not_Found:2009/11/23(月) 22:45:30 ID:???
RewriteRule についてアドバイスをいただけないでしょうか。

○ ディレクトリの構成:
 http://sample.jp/aaa/test.php
 http://sample.jp/aaa/.htaccess

○ やりたいこと:
 http://sample.jp/aaa/[任意の文字列]
 にアクセスがあった場合
 http://sample.jp/aaa/test.php?str=[任意の文字列]

○ 失敗したhtaccess:
---
RewriteEngine on

RewriteRule ^(.*)$ test.php?str=$1
---
単純な文字列だとうまくいくのですが、[任意の文字列]に / などが入ると、
「ディレクトリが見つけられない」と判断されるのか403エラーが出てしまいます。

イメージとしては、インターネットアーカイブで表示した際のURLのように、
http://sample.jp/aaa/http://www.sample.com/test/
このようなURLが指定されても、引数strに「http://www.sample.com/test/」を渡してtest.phpを表示させたいのです。

お詳しい方、どうか教えてください。

253 :Name_Not_Found:2009/11/23(月) 23:03:23 ID:???
テンプレを読んでから質問しましょう

254 :Name_Not_Found:2009/11/24(火) 02:25:20 ID:???


255 :Name_Not_Found:2009/12/18(金) 20:15:26 ID:???
.htaccessってCGI掲示板のアクセス禁止できないんだね!?
PHPだと問題無いのに!

256 :Name_Not_Found:2009/12/18(金) 21:21:46 ID:???
>>255
できるよ
cgi-binディレクトリが、Allowoverrideされてないだけでは?

257 :Name_Not_Found:2009/12/18(金) 21:21:48 ID:???
CGI はスクリプトの総称であり、
CGI を作るためにある言語に PHP や Perl があります

ですから、PHP は CGI を生み出すための一つの手段と言えるでしょう

こんな事も分からず>>255のような訳の分からないレスをしているのですから、
.htaccess とは全く関係の無い事が問題の原因という可能性も考えましょう

258 :Name_Not_Found:2009/12/18(金) 22:51:39 ID:???
http://www.big.or.jp/~talk/t-club/soft/mini_r6/index.cgi

ここのタイプのCGI掲示板なんだけど、よくながめて見ます

259 :Name_Not_Found:2009/12/18(金) 23:30:14 ID:???
Allowoverrideさせかたが解りません

260 :Name_Not_Found:2009/12/19(土) 11:16:32 ID:???
>>257
PHPはCGIじゃなくてApacheのモジュールとして動作させることが多いです
そしてCGIはCなどのコンパイルが必要な言語でも書けるもので、
スクリプトの総称ではありません

適当な事を言うのはやめましょう

261 :Name_Not_Found:2009/12/19(土) 12:08:06 ID:???
>>259
apacheのhttpd.confで設定できる

262 :Name_Not_Found:2009/12/22(火) 13:29:11 ID:???
>>261
自鯖じゃ無くても出来るわけ?
それで拡張子をconfにして放り込むの?
チンプンカンプン

263 :Name_Not_Found:2009/12/31(木) 12:05:27 ID:n7wCIal7
自鯖でサーバ管理用のURLを用意したいんですが、以下のことってできますかね?

・ttp://hogehoge.comの運用をしている。
・ツールの関係でttp://hogehoge.com:ポート指定で管理画面がでる。

やりたいこと
・ttp://***.***.***.***:ポート番号のみでアクセスできるようにし、
ttp://hogehoge.com:ポート番号ではアクセスできないようにしたい。

264 :Name_Not_Found:2009/12/31(木) 12:17:31 ID:???
>>263
テンプレをまず読んでから質問しましょう

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

hogehoge.comは第三者が所有しているドメイン名です
所有者に無断で例示に使わないよう、ここだけでなく他所でもご注意を

265 :Name_Not_Found:2009/12/31(木) 12:30:45 ID:???
http://example.com:80/ とwwwのデフォルトのポート80にアクセスさせる場合は
URLの:80の部分をせっせと削るブラウザがあるから.htaccessでは対処できない。

ということでサーバー丸ごとの設定ができる環境ならIPベースのバーチャルホストを
同一IPアドレスの異なるポートで設定、あるいは異なるポートをリッスンする別のサーバーを起動し、
さらに http://example.com:49152/http://192.0.2.1:49152/ 等で別のドキュメントルートを
使いたいならネームバーチャルホストの設定もする。
方法はこのスレの管轄外。

266 :Name_Not_Found:2009/12/31(木) 12:34:01 ID:???
>>264
hogehoge.comはhogehoge.comらしい運用をされてないみたいだから
勝手に使われた方が都合が良いんじゃね?w

267 :Name_Not_Found:2009/12/31(木) 13:13:55 ID:???
>>264
ドメイン名、大変失礼しました。以後気をつけます。
>>265
アドバイスに感謝です。rootはもっているので、IPベースで異なるポートの設定を
試してみようと思います。ありがとうございました。

268 :シベリアよりのお手紙:2010/01/07(木) 18:43:05 ID:qX8+izDr
よろしくお願いします
ttp://wavlac.net/oinari-uploader/src/oinari0221.txt

269 :Name_Not_Found:2010/01/11(月) 22:53:17 ID:wO4DB4vn
適切なスレが見つからなかったので、こちらで質問させて下さい。

現在携帯サイトを作っていて、特定のページからのアクセスのみ許可したいのですが何か手法はありますでしょうか。。

リファラーでの処理はドコモは拒否されてしまいます。。

よろしくお願い致します。

270 :Name_Not_Found:2010/01/11(月) 22:57:52 ID:???
>>269
ドコモは、新しいブラウザーでは、リファラを吐く
auとSBは、かなりの機種がリファラを吐く
それらに限定すればおk

271 :Name_Not_Found:2010/01/12(火) 00:02:32 ID:VE0T1oOF
現行機種限定ではきついです・・

ありがとうございました。

272 :Name_Not_Found:2010/01/16(土) 13:43:21 ID:3X6l2P4o
basic認証においてIDとパスワードを盗聴された場合にそなえたいのですが
どのようなガードをしておけばいいでしょうか?

273 :Name_Not_Found:2010/01/16(土) 15:28:29 ID:???
>>272
basic認証をやめる

文字列を入力するような盗聴の可能性の高い認証をやめ、
証明書等を使った認証に切り替える

basic認証なんて子供の玩具みたいなものですから、
もしお金の絡むビジネスシーンで使っているのでしたら、
早急に変更を検討された方が個人的には良いと思います

274 :Name_Not_Found:2010/01/16(土) 16:51:54 ID:???
>>272
IPアドレスで制限する
不特定多数が対象なら厳しいけど


275 :Name_Not_Found:2010/01/16(土) 18:45:40 ID:???
basic認証の盗聴って具体的にどういうふうにやられるの?

276 :Name_Not_Found:2010/01/16(土) 18:49:26 ID:???
そういう事は公の場で聞かない教えないヒントであっても与えない
素人クラッカーの卵が情報を見て実際に不正アクセス等したら誰が責任を取るのかと

277 :Name_Not_Found:2010/01/17(日) 11:11:19 ID:a2h8xD19
アクセス許可は国内のみです
国内でも画像の直リンクは弾きたいのですが
以下の指定ではうまくいかないようです
どこがまちがっているのでしょうか?

order allow,deny

allow from(国内IP)
deny from(弾くIP)

SetEnvIf Host "example\.com" ref_ng
SetEnvif Referer "^example\.com" !ref_ng
SetEnvif Referer "^$" !ref_ng

<Files ~ "\.(gif|jpe?g|png)$">
deny from env=ref_ng
</Files>

278 :Name_Not_Found:2010/01/17(日) 12:03:40 ID:???
人生が間違ってる

279 :Name_Not_Found:2010/01/17(日) 12:07:39 ID:???
>>277
さくら鯖のFAQによく似たのが載ってた

SetEnvIf Host "example\.com" ref_ng
SetEnvif Referer "^example\.com" !ref_ng
SetEnvif Referer "^$" !ref_ng

order allow,deny
allow from(国内IP)
<Files ~ "\.(gif|jpe?g|png)$">
deny from env=ref_ng
</Files>
deny from(弾くIP)

280 :277:2010/01/18(月) 17:33:26 ID:???
>>279
ありがとうございます
さくらサーバなのでそちらを参考に記入しています
順序を入れ替えてみましたが出来ないんです・・・
他の記述が影響しているんでしょうか
もう少し調べてみます

281 :Name_Not_Found:2010/01/27(水) 10:52:35 ID:???
img srcで実際ない画像を指定している場合、not_found.jpg等
固定で用意している画像を出力する設定を.htaccess等で行う
ことは可能でしょうか。

もしできる場合、ご教示いただけますと助かります。
よろしくお願いします。

282 :Name_Not_Found:2010/01/27(水) 10:57:39 ID:???
>>281
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*¥.jpg$ 画像へのURL
とかじゃないかと...
適当だけどね

283 :Name_Not_Found:2010/01/27(水) 21:11:17 ID:???
あらかじめ特定のクッキーを相手に食べさせている前提で、
その特定のクッキーを食べたPCからのアクセスは
指定の場所へ飛ばすということはできますか?


284 :Name_Not_Found:2010/01/28(木) 00:44:40 ID:???
>>282
ありがとうございます。

WordPressの設定が予め書かれていたので、それに
  RewriteRule \.(jpg|png|gif)$ /image_not_found.gif [NC,L]
と追記してみたところ、500エラーになってしまいました。
初歩的な質問ではございますが、ご教示いただけますと幸いです。
下記がその箇所です。

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule \.(jpg|png|gif)$ /image_not_found.gif [NC,L]
  RewriteRule . /index.php [L]
</IfModule>


285 :Name_Not_Found:2010/01/28(木) 11:31:08 ID:???
日本語のディレクトリのリダイレクトが動作しません。
http://www.*********.com/サイトマップ/

http://www.*********.com/sitemaps/
にリダイレクトしたいです。

Redirect permanent /サイトマップ/ http://www.*********.com/sitemaps/

Redirect permanent /%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97/ http://www.*********.com/sitemaps/
両方試しましたが、うまくいきませんでした。
何か方法はありませんか?

286 :Name_Not_Found:2010/02/13(土) 11:35:30 ID:???
レンタルサーバの@Pageって.htaccessを編集できない?

287 :Name_Not_Found:2010/02/13(土) 13:54:47 ID:???
>>286
スレ違い
@Pageを使っているような人しか分からない

↓で@Pageのスレを見つけるか立てて聞いてください

レンタル鯖
http://pc11.2ch.net/hosting/

288 :Name_Not_Found:2010/02/15(月) 09:01:27 ID:BMb/mUm5
普通にブラウザでアクセスされた場合と<img src=〜でアクセスされた場合で
振り分け可能でしょうか?

289 :Name_Not_Found:2010/02/15(月) 11:10:21 ID:???
>>288
??
<img src=〜
は、Webブラウザーが解釈・実行しているわけだが...

290 :Name_Not_Found:2010/02/16(火) 19:52:39 ID:???
file/ ディレクトリ内のすべてのファイル(.txt や.zip や 拡張子なしのファイルなどなど)をブラウザで表示させることなく
ダウンロードさせたいのですがどのように記述すればよろしいでしょうか?

291 :Name_Not_Found:2010/02/20(土) 18:05:09 ID:???
よくわからんが俺ならバッチファイルでftp

292 :Name_Not_Found:2010/02/21(日) 08:05:05 ID:???
>>290
file/.htaccessへ
ForceType application/octet-stream
とか。

293 :Name_Not_Found:2010/02/24(水) 18:39:30 ID:???
>>292
遅くなりました。ありがとうごさいますー

294 :Name_Not_Found:2010/02/28(日) 23:34:19 ID:???
ほとほと困り果ててまして、間違いをご教授頂けるとありがたいです。
.htaccess許可サーバ使用で、単純に特定ホストだけ拒否したいんですが、
なぜか設定後に接続出来ているみたいなんです。
一体どこを間違ってるやら。試しに自IPでやった時は拒否できたんですが。

order allow,deny
allow from all
deny from souka.saitama.ocn.ne.jp

295 :Name_Not_Found:2010/02/28(日) 23:56:18 ID:???
order allow,deny
allow from all
deny from .souka.saitama.ocn.ne.jp

296 :Name_Not_Found:2010/03/01(月) 00:12:38 ID:???
>>295
ありがとうございます。まさか.一個とはスレ汚し失礼しました。
あと、重ね重ね初歩で申し訳ないと思いつつ、
もう一つだけお願い出来れば幸いなんですが。

例えば上記で弾きたいのが
a(任意の四桁数字)-aaaa(任意の三桁数字)sample.sample.aaa.ne.jpって場合でも、
それでいけるんでしょうか。或いは数字部分の指定が必要でしょうか。

297 :Name_Not_Found:2010/03/16(火) 19:36:31 ID:???
できるかのかどうか教えてください。

htaccessでコピペやドラッグ&ドロップの禁止とかかけられますか?

298 :Name_Not_Found:2010/03/16(火) 20:42:09 ID:???
>>297
できるわけねーだろww

299 :Name_Not_Found:2010/03/24(水) 21:42:54 ID:???
RewriteEngine On
RewriteRule ^register\/(.+)$ http://example.com/dev/register.php$1 [L]

/devにこれをおきます。

http://example.com/dev/register/?location=xxxxx
にアクセスすると404になります。なぜでしょうか?


300 :Name_Not_Found:2010/03/24(水) 23:27:05 ID:???
>>299
?がないからじゃね?

301 :Name_Not_Found:2010/03/24(水) 23:29:18 ID:???
>>299
ありがとうございます。
http://example.com/dev/register/?location=xxxxx
のように、?以下を取り出して$1に入れたいのですが、無理なのでしょうか?

302 :Name_Not_Found:2010/03/24(水) 23:36:16 ID:???
>>301
だから、
http://example.com/dev/register.php$1
ってやってるからだろ

303 :Name_Not_Found:2010/03/25(木) 15:05:53 ID:???
?以下を取り出すにはRewriteCondでQUERY_STRINGとマッチさせて%1などに入れる。

304 :Name_Not_Found:2010/03/26(金) 01:14:51 ID:aSB/HPBG
ファイルが有無でRewrite先を変えたいンですけど、出来ますでしょうか

http://******/hoge/a/123456.jpg にリクエストが有った際
http://******/hoge/b/123456.jpg が、
1:あったら、 http://******/hoge/b/123456.jpを表示
2:なかったら http://******/hoge/a/123456.jpg をそのまま表示

という動作をmod_rewrite で行いたいのですが可能でしょうか?
見よう見まねで下記を http://******/hoge/ の.htaccessに書いたのですが
〜/b/123456.jpg がない場合にループ?におちいるようで実現できません。


RewriteEngine On
RewriteBase /hoge/
#取り合えず b/を見に行く
RewriteRule ^a/(.*).(jpg|gif|png)$ b/$1.$2 [L]

#b/に無かったら aを表示
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^b/(.*).(jpg|gif|png)$ a/$1.$2 [L]

305 :Name_Not_Found:2010/03/26(金) 02:31:43 ID:???
ひとつめの[L]いらないんじゃないかな

306 :304:2010/03/26(金) 04:14:52 ID:???
ヽ(^◇^*)/

出来ました! 
そうか![L]や[R]にすると、2度目のリクエストでもう一度、新たに実行しちゃうんですね。

感謝です! ハマりまくって18時間です。これで寝れます
ペコm(_ _;m)三(m;_ _)mペコ 
本当にありがとうございます!


307 :305:2010/03/26(金) 07:45:04 ID:???
実際にトライしないで答えちゃったけど、解決したならなにより。

思うに、クライアント側から直接

http://******/hoge/b/123456.jpg

をリクエストされることがないのであれば、本来は1番目の
RewriteRuleは[C]でチェーンする(その規則にマッチした
場合のみ次の規則に進む)ほうがよいのかもね。

RewriteCondは無指定でも次規則にチェーンするので、
条件節で書くと

if ( $url matches RewriteRule1) {
$url = RewriteRule1( $url )
if ( $url matches RewriteCond ) {
$url = RewriteRule2( $url )
}
}

ってな流れの処理になり、2番目のRewriteRuleが
実行されるのは、1番目のRewriteRuleが実行された
時のみになる…はず。チェーン本格的に使ったことが
ないので、実際こうなるかわからんけど。

308 :304:2010/03/26(金) 10:21:37 ID:???
おはようございます。
[C]を使っても無事動きました!
[C]を使うほうが処理がまとまってイイですね。
重ね重ね、ありがとうございます。

眠い......o(~o~;) 
mod_rewrite の和訳本、誰か出して欲しいなー
http://www.amazon.co.jp/exec/obidos/ASIN/1590595610/

309 :Name_Not_Found:2010/03/26(金) 14:06:55 ID:???
ドキュメントの和訳はあった方がよさそうだが、
本を出すまでもないと思う。

310 :Name_Not_Found:2010/03/28(日) 16:03:36 ID:???
携帯サイトを運営しているのですが
public_html内の複数のサイトで、そのサイトの数だけ
htaccessを入れてIP制限しているのですが
IPアドレスが変更になる度に全て置き換えるのは手間なので
IPアドレスだけ別ファイルで管理してphpのincludeみたいな感じでする方法ありますか?

311 :Name_Not_Found:2010/03/28(日) 17:30:08 ID:???
>>310
ありません

>>304
>>3
【例示用ドメインについて】

質問/回答時の例として使うドメインは、例示用として用意されている、
example.com, example.net, example.org, example.jp などを使いましょう。

example.*に好きなサブドメインをつけて説明するのは可。
例: hoge.example.com

312 :Name_Not_Found:2010/03/28(日) 18:17:45 ID:???
>>310
.htaccessでIncludeディレクティブは使えないけど、
.htaccessファイルをシンボリックリンクなどを使って
ファイルシステム上でリンクしてしまうのはあり。

313 :Name_Not_Found:2010/03/29(月) 01:04:17 ID:???
>>311
>>312
僕には難しそうなのでhost名で許可して様子見てみます
ありがとうございました。


314 :Name_Not_Found:2010/03/29(月) 16:16:31 ID:???
>>312
ちょっとスレ違いでスマソだが、シンボリックリンクを使えば、例えば別々の
.htaccessで制限したディレクトリ(例:\aaa\ と \bbb\)でファイルを共有
する事は可能ですか?

\aaa\hoge.html を \bbb\hoge.html と指定しても同じファイルにアクセス
出来ると有りがたいですが。

勿論、\bbb\top.htmlから a href="hoge.html" で相対ハイパーリンクした
場合もオケでないと困るのですが。

ただレンタルサーバーで実現したいので、その制限に「ln」コマンド利用が
引っかかると駄目?でしょうけど。因みにサクラのライトです。

315 :Name_Not_Found:2010/03/30(火) 00:36:43 ID:???
>>314
シンボリックリンクをたどるかどうかは
Options FollowSymLinks
Options SymLinksIfOwnerMatch
などが必要になるからスレ違いでもなかったり。
Optionsディレクティブを.htaccessで使うにはサーバがAllowOverrideディレクティブで
Optionsの上書きを許可する設定であることが必要。
\bbb\top.htmlから.\hoge.htmlへハイパーリンクで移動すると
\bbb\hoge.htmlへアクセスし、シンボリックリンク\bbb\hoge.htmlが指している
\aaa\hoge.htmlの内容を返すという動作になる。
シンボリックリンクはlnコマンドでなくてもsymlinkシステムコールを使える言語で
書かれたCGIで作るとかもあり。

316 :Name_Not_Found:2010/03/31(水) 20:58:57 ID:???
1.htaccessで特定のディレクトリ(contactとmail)を自動的にhttpからhttpsへ
2.その他のディレクトリはhttpのまま
上記の処理を行いたいです。
1は対応できたのですが、2のhttps://www.hogehoge.com/contact/からその他ディレクトリへ
アクセスした際にhttp://www.hogehoge.com/〜と
自動的にhttpにする処理で行き詰っております。
ご教授いただければ幸いです。

<Files *>
RewriteEngine on

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^https://www.hogehoge.com/(.*)$ http://www.hogehoge.com/$1

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/contact/(.*)
https://www.hogehoge.com/contact/ [R]

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/mail/(.*)
https://www.hogehoge.com/mail/ [R]
</Files>



317 :316:2010/03/31(水) 21:00:18 ID:???
はじめまして。質問させて下さい。
すみません、316です。
書き込みの途中で送信してしまいました。


318 :Name_Not_Found:2010/03/31(水) 21:11:17 ID:???
>>316
RewriteRuleの前項には、https://なんてはいらん


319 :305:2010/03/31(水) 22:05:10 ID:???
>>318
> RewriteRuleの前項には、https://なんてはいらん

ですね。

320 :Name_Not_Found:2010/04/01(木) 02:31:16 ID:???
>>315
おお、サンクス

じつわIPアドレス制限で携帯のみアクセス可能なディレクトリに、xhtmlなwebを
作ってますが、これに裏口みたいにPCで接続可能なディレクトリを造ろうと考え
てる次第です。

サクラのライトでレンタルサーバーお初なド素人状態なので、全然構想が進まな
い訳ですが、裏口はまず利用プロバイダのホストURLで制限し、更にVBScriptで
MACアドレスを取得し、cgiで判定する?方法を考えてます。

当然ながらブラウザはIEのみ対象になりますが。

http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200711/07110020.txt

多分、その際にcgiも関与せざるを得ないかな〜、くらいにしか分からず、まだまだ
調査や勉強が必要ですがcgiでもシンボリックリンクを使えそうな話は有り難かった
です。(cgiはちょっと齧った程度で、スクリプトは全然作った事が無いですし。)

あ、勿論MACアドレスの偽装が簡単に可能なのは知ってますし、PCに固定IPアドレス
を使うのが一番良いのも分かってます。(結局、コストと完璧さのせめぎ合いな訳で。)

321 :Name_Not_Found:2010/04/01(木) 15:11:53 ID:???
>>320
ディレクトリを作るならそのディレクトリにも.htaccessを置いて、
IPアドレスでもUser-Agentでも使って携帯電話でのアクセスを
できないようにして、ついでにBasic認証でもかけておくかな?
.htaccessスレ的な答えとしてw

322 :Name_Not_Found:2010/04/01(木) 16:18:34 ID:???
>>321
Basic認証は携帯専用ディレクトリにもかけてるので、PC用裏口ディレクトリ
にも当然かけるつもりです。

ただIDやpassを別管理したくないから、.htpasswdもシンボリックリンク出来る
と嬉しいですが。

あと裏口ディレクトリの.htaccessには、利用プロバイダのホストURLで制限を
かけるつもりなので、それで携帯電話のアクセスは出来ない筈です。

ただ.htaccessと、cgi又はVBスクリプトでの判定で、ホストURLの二重管理が
必要そうなのがやや心配ですが。

.htaccessに例えば下記の様にMACアドレスをコメントで記述して、それを判定処理で
読み出して使う様にすればよいかな?と思ってますが。

allow from .adsl.ppp.infoweb.ne.jp # MAC=00:11:22:33:44:55

判定処理ではホストURL&MACアドレスのペアで判定しないと、MACアドレスの
偽装だけで簡単にクラック出来てしまうので。

323 :Name_Not_Found:2010/04/01(木) 17:55:53 ID:???
.htpasswdことAuthUserFileはシンボリックリンクなんかしなくても
同じファイルをどこでも使用できる。
Require valid-userなんてどこかの型にはまった使い方をせず
AuthGroupFileと組み合わせてRequire group pcgroupみたいな使い方をすれば
ユーザー名とパスワードのファイルは1つ用意するだけでいろいろと分けて使える。
.htaccessのコメントを表す#の前には空白文字しか許されない。
MACアドレスが偽装されることを考慮するならMACアドレスを
認証に使うこと自体がもう駄目であるような気がする。

324 :316:2010/04/01(木) 22:36:00 ID:???
>>318-319
ご返答ありがとうございます。
RewriteRuleの前項を/home/〜にすると
http〜のアクセスをhttp〜へ転送する処理になり
自動転送がループしてエラーが出ます。
/home/〜 の記述法でhttpsを指定することが出来るのでしょうか?

<Files *>
RewriteEngine on

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/(.*)$ http://www.hogehoge.com/$1

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/contact/(.*)
https://www.hogehoge.com/contact/ [R]

RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/mail/(.*)
https://www.hogehoge.com/mail/ [R]
</Files>



325 :Name_Not_Found:2010/04/01(木) 22:52:17 ID:???
>>324
>RewriteRule ^/home/hogehoge-com/public_html/(.*)$
          ↑
  これは、サーバーのディスク上のファイルパスだろ?
  ここには、httpでアクセスした時のドキュメントルートからだ

ググれば、このくらいのことはすぐ出てくるだろう

326 :m:2010/04/01(木) 23:18:44 ID:???
[R]のときとそうでないときとか,
右項と左項とかで参照するパスが変わるのが
直感的でない,というのはありますね…。

327 :Name_Not_Found:2010/04/02(金) 00:19:50 ID:???
>>324
httpへ戻すRuleのCondが!^80$じゃないと駄目っしょ?

328 :Name_Not_Found:2010/04/02(金) 17:21:34 ID:???
>>323
イロイロと情報有難う御座います。

htpasswdは共有出来るんですね。もしかしたら可能かとは思ってましたが、
ハッキリ分かって助かります。

ただ共有するとPCでIDやpassを探るtoolを使われ捲りそうだから、セキュ
リティを考えると携帯用とPC用は別々にすべきかも知れませんが。

htaccessのコメントにMACアドレスを追加する件は、同じホストURLに複数
のユーザーが居るパターンも考えられるので、別の行にしようと思います。

allow from .adsl.ppp.infoweb.ne.jp
#00:11:22:33:44:55
#00:66:77:88:99:11

ただcgiとかで.htaccessファイルを見れるかどうかの条件や手段は未だ
分かりかねますが。

MACアドレスの偽装に関しては、IDやpassほどには探るtoolが充実して
ないのでは?と思ってる次第で、まあそれなり程度のガードくらいで
考えてます。

329 :Name_Not_Found:2010/04/06(火) 09:52:31 ID:???
パスワードで保護された領域下で
特定のディレクトリのみ直リンクできるようにするにはどうすればよいのでしょうか?

test
├ .htaccess
├ .htpasswd
├ test.html
└ pngフォルダ →このフォルダだけ直リンクOKにしたいのです
  ├ 5963.png
  └ 4649.png

330 :Name_Not_Found:2010/04/06(火) 13:29:43 ID:???
329質問は認証かからない位置に置いて対応することにしました。

331 :Name_Not_Found:2010/04/08(木) 03:20:20 ID:???
質問です。サーバーはさくらを使用。
<Files ~ "¥.(log|dat|csv|txt)$">
deny from all
</Files>
を記載し、内容、パーミッションなどは同じでファイル名だけが異なるファイルが二つあります。
なぜかある特定のディレクトリ・特定のファイル名の時だけdenyされません。
× www.sample.com/a/abcd.csv(これだけダウンロードになる)
○ www.sample.com/a/abcd_.csv
○ www.sample.com/a/_abcd.csv
○ www.sample.com/a/abc.csv

またサブドメインを抜いてのアクセス、別ディレクトリでのアクセスは正しくdenyされます。
○ sample.com/a/abcd.csv
○ www.sample.com/b/abcd.csv

他のファイルではこのような現象が起きないため、
なぜこの2ファイルが特定の条件でダウンロードになるのか頭を悩ませています。
ご助言がありましたらお願いいたします。

332 :331:2010/04/08(木) 03:22:43 ID:???
すみません、example.comとすべきところを寝ぼけてsampleとしてしまいました。
ご用捨ください。

333 :Name_Not_Found:2010/04/08(木) 22:56:15 ID:???
>>328
user:pass のファイルは共有しても分割してもユーザー名とパスワードが一致したときに扉は開きます。
分割する利点としてはファイルを直接持っていかれたときの被害の大きさかな?
<Files を使ってパスワードのファイルは持っていかれないようにしましょう。
名前を.htpasswdにするのはデフォルトで.htaccessへアクセスできないようにするために
ファイル名が .ht* のパターンに一致するものすべてがアクセス禁止にされているからです。
パスワードを探るツールなんて現場に合わせて即興するものです。
MACアドレスをどう送るかは知らないけど、最初の3バイトはメーカーごとの
割り当てを見れば範囲は絞れるから30秒で焼き切れる南京錠を
追加した程度の安心感しか得られないような気がして心配ですw

334 :Name_Not_Found:2010/04/08(木) 22:59:56 ID:???
>>331
とりあえずブラウザのキャッシュを削除して様子を見てみましょう。
他にサーバー側の設定でなぜかディレクトリを限定してmimetypeが
ダウンロードになるようなものに設定されているかもしれないので
.htaccessで上書きしてみましょう。

335 :331:2010/04/10(土) 01:16:34 ID:???
>>334
ありがとうございます。
助言通りにしばらくしてやってみたら、たしかに403になりました。
まさかキャッシュだったとはorz
お蔭様ですっきりしました。もっと精進します。

336 :Name_Not_Found:2010/04/10(土) 16:14:07 ID:???
>>333
情報ドモです。

まあMACアドレスを使うのは、WindowsよりLinuxの方がウイルスに強いかな?
くらいの感覚ですね。

ID&passwordは既に利用してるから、よりマシになればオケ程度のレベルです。

337 :Name_Not_Found:2010/04/17(土) 19:28:35 ID:???
>>336
MACアドレスって、偽装もなにも直近のルータの奴が見えるだけだと
思ってたんだけど、違うんだっけ?
もしかして、アクセス元の方で特別なアプリを動かすって話?

338 :Name_Not_Found:2010/04/17(土) 20:19:48 ID:???
クライアントのNICに割り振られているMACを抽出して
スクリプトに検知させて挙動のトリガーに使うってことでしょ

339 :Name_Not_Found:2010/04/18(日) 00:03:27 ID:???
全体のファイルについて
Order allow,deny
でアクセス制限をすると同時に
Filesで特定のファイルだけ同じようにアクセス制限する場合
どちらが優先になるという規則はあるんでしょうか?

340 :Name_Not_Found:2010/04/18(日) 16:48:21 ID:???
>>337
>>320

341 :Name_Not_Found:2010/04/18(日) 22:18:48 ID:???
>>339
ある。
.htaccessの地の部分を読んだあと<Filesで特定のファイル名に限定した部分を読む。

342 :Name_Not_Found:2010/04/18(日) 22:40:10 ID:???
>>341
ご回答ありがとうございます。

343 :339:2010/04/19(月) 22:18:25 ID:???
いざやってみたところ500エラーが出てしまいました。

order allow,deny
allow from all
〜以下 deny from で好ましくないホストを列挙

その後に
<Files example.log>
order allow,deny
deny from all
<Files>
を入れています。

その他には最初の方に
ErrorDocument等を入れています。

見れなくなってしまう原因がわからず困っておりまして
どなたかわかる方いますでしょうか?

344 :Name_Not_Found:2010/04/19(月) 22:32:29 ID:???
×<Files>
○</Files>

345 :339:2010/04/19(月) 22:44:50 ID:???
>>344
ありがとうございます。エラー出なくなりました。
ですが、Filesで指定したファイルに直接アクセスしても
普通に見れてしまいます・・・

346 :Name_Not_Found:2010/04/19(月) 23:13:40 ID:???
×見れてしまう
○見られてしまう
○見えてしまう

347 :Name_Not_Found:2010/04/21(水) 18:26:33 ID:???
order deny,allow
deny from .tw
と記述しているのですが、
忍アクセス解析を見ると海外(.tw)からのアクセスがあります。
試しにdeny from .jpと記述すると自分が弾かれるので
アップロードの方法が間違っている事はないと思うのですが、
助言をよろしくお願いいたします。

348 :Name_Not_Found:2010/04/21(水) 19:25:22 ID:???
>>347の先頭2行の記述以外には全く記述間違いがない
という前提で答えると、
twなど、トップレベルドメインだけで該当国からのアクセスを弾く事は不可能です

名前解決され必ずtwのドメインを含むHost名でアクセスがある
という保証がインターネットには無いため、
該当国からのアクセスをdenyしたい場合はNetwork address rangeで
deny設定する必要があります

349 :Name_Not_Found:2010/04/21(水) 20:12:39 ID:???
>>348
検討違いだったら申し訳ないのですが、
ホストが***.adsl.dynamic.seed.net.twという方からアクセスがある状態です。

350 :Name_Not_Found:2010/04/21(水) 20:37:42 ID:???
twと一見名前解決されているように見えて、
他セッションで名前解決されていなければすり抜ける

それと>>347の先頭2行の記述以外には全く記述間違いがない
という前提で>>348を答えている事はご理解を

351 :Name_Not_Found:2010/04/22(木) 00:14:57 ID:???
アクセス解析はAllow, Denyディレクティブにドメインを設定したときのような
逆引きで得られたホスト名から再びIPアドレスを引いてそれが元のIPアドレスと
一致するかどうかの確認をしてないことが多いから間違ったホスト名が列挙される。
そこから得られたドメインからのアクセスを拒否しても間違っているからすり抜けられる。

352 :Name_Not_Found:2010/04/22(木) 10:51:58 ID:???
特定のユーザエージェントで、かつ特定言語の場合のみ弾きたいのですが
and条件はどの様に記述するのでしょうか…

SetEnvIf User-Agent "hogehoge" deny_ua
SetEnvIf Accept-Language en deny_ua
order allow,deny
allow from all
deny from env=deny_ua

と書いたらエラーになってしまいました

353 :Name_Not_Found:2010/04/22(木) 12:17:03 ID:y5pTZcOX
これまで例文どおりに適当に使ってましたが
どうしてもOrderを使う意味が分からず
質問させてください。
例えば下の3つは同じく全拒否になると思うのですが
Orderはどういうときに使うのでしょうか?

例1
Order allow,deny
deny from all

例2
Order deny,allow
deny from all

例3
deny from all


354 :Name_Not_Found:2010/04/22(木) 14:07:05 ID:???
>>352
必ず真になる条件を用意して
SetEnvIf Request_URI .? allow_ua
偽にしたい条件で偽にする。
SetEnvIf User-Agent "hogehoge" !allow_ua
SetEnvIf Accept-Language en !allow_ua
そして否定側で使う
order allow,deny
allow from env=allow_ua

>>353
Order allow,denyはデフォルトでDeny from allであり、Order deny,allowは
デフォルトでAllow from allである。
例1はOrderで既にDeny from allと同じ状態になっているから
Deny from allは全てのアクセスを拒否する判定が入る分冗長である。
例2はOrderがAllow from allと同じ状態になって全てのアクセスを許可しているところを
Deny from allで全てのアクセスを拒否するようにしている。
例3はOrderがどちらになっていても(デフォルトはDeny,Allow)
明示的に全てのアクセスを拒否する。

355 :353:2010/04/22(木) 14:25:59 ID:???
>>354
詳しくありがとうございます。
すっきりしました!

deny fromとallow fromの各行を書く順番って
関係ないんですね。
勘違いしてました。恥ずかしい・・・

356 :Name_Not_Found:2010/04/22(木) 14:40:40 ID:???
>>354
上段、or条件になって>>352の望む動作にならないような
and条件はmod_rewrite使えば簡単だけど使える鯖が限られるしな

357 :Name_Not_Found:2010/04/22(木) 16:22:46 ID:???
>>356
>>354はアレだったw

>>352
SetEnvIfとAllowとDenyだけでandも作り出せたはずだけど、
作ったのはもう4〜5年前だから思い出せない。

358 :Name_Not_Found:2010/04/22(木) 21:20:56 ID:???
>>352の、ツッコミだけじゃなんなので少し考えてみた

SetEnvIf Request_URI .? allow_ua
SetEnvIf User-Agent "hogehoge" !allow_ua
SetEnvIf User-Agent "hogehoge" allow_ua2
SetEnvIf Accept-Language en !allow_ua2
order allow,deny
allow from env=allow_ua
allow from env=allow_ua2

こんな感じでどうだろう
hogehogeの行が続いて見た感じ気持悪いけど

359 :Name_Not_Found:2010/04/22(木) 23:11:37 ID:???
>>358は惜しいけどallow_ua or allow_ua2でやっぱりダメかな?
で、思い出したものを書いてみると、
SetEnvIf Request_URI .? allow_ua
SetEnvIf User-Agent "hogehoge" !allow_ua
SetEnvIf Accept-Language en deny_ua
order allow,deny
allow from env=allow_ua
deny from env=deny_ua
こんな感じだったかな?
AllowとDenyの両方を消費してしまうこととそれなのに
2つ以上の条件に拡張していけない状態になってて
ボツにしたから忘れていたと。

360 :Name_Not_Found:2010/04/23(金) 00:01:46 ID:???
allow_uaでhogehoge以外の全てのUA許可
allow_ua2で言語enを除くhogehogeを許可なので
hogehogeかつenだけが拒否される…はず
動作確認はしてないけど

3つ以上の条件になると面倒臭いだろうな
mod_rewrite万歳

361 :Name_Not_Found:2010/04/23(金) 22:41:15 ID:???
一応>>358でシンプルにいけるのか。
これ以上andで条件を増やそうとするとやっぱりアレだけどw

362 :Name_Not_Found:2010/05/22(土) 00:56:55 ID:???
質問です。

http://example.com/
にアクセスがあった場合に

http://example.com/wiki/
に飛ばすにはどうしたらいいでしょうか?

試したのはこれです
RewriteEngine On
RewriteCond %{THE_REQUEST} ^/$
RewriteRule ^*$ /wiki/index.php [L]

アドバイスお願いします > <

/.htaccess には既にmediawiki用のコードあります。
RewriteEngine On
RewriteRule ^wiki/(.*)$ /wiki/index.php?title=$1 [PT,L,QSA]
RewriteRule ^wiki/*$ /wiki/index.php [L,QSA]



363 :Name_Not_Found:2010/05/22(土) 03:27:22 ID:lPbdy4Fm
質問させて下さい。

<meta http-equiv="Content-Script-Type" content="text/javascript" />
を.htaccessに記述するには、どうすればいいのでしょうか?

また、これとは別件なのですが、.htaccessの文法をチェックしてくれるソフトやサイトはあるのでしょうか?

よろしくお願いします。

364 :Name_Not_Found:2010/05/22(土) 14:41:42 ID:???
難しく考えすぎ

Redirect permanent http://example.com/ http://example.com/wiki/

だけでも飛ぶ

RewriteEngine on
RewriteRule ^/(.*) /wiki/$1 [R=301,L]

365 :Name_Not_Found:2010/05/22(土) 20:19:47 ID:???
>>364
ありがとうございます!

366 :Name_Not_Found:2010/05/24(月) 20:18:35 ID:???
神様お願いします。
現在携帯からPCのアドレスにアクセスをした場合redirect
させているのですがこれをRewriteMapを使ってやりたいのですが無理ですか?
RewriteMapでtxtかなんかにDoCoMoとか記述するだけで
RewriteCond %{HTTP_USER_AGENT}を使わないで出来たらいいなと。
スレチならすみません。でもホントアドバイス欲しいです。。

今はこんな感じです。
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^KDDI [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Up.Browser [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^vodafone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^SoftBank [NC]
RewriteRule ^/$ http://example.com/mobile/ [R,L]

367 :Name_Not_Found:2010/05/24(月) 23:14:30 ID:???
まとめて書いても良い訳だが

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank)
RewriteRule ^$ http://example.com/mobile/ [R]

368 :Name_Not_Found:2010/05/25(火) 11:14:17 ID:???
>>363
mod_headersが有効になってるサーバなら
Header set Content-Script-Type text/javascript
で同じ意味になりそうだけど、そもそもそれを書く意味ってあるの?w

.htaccessの文法チェックはサーバが500 Internal Server Errorを返すかどうかで判断する。
そのチェック用のApacheをPCにインストールする。

369 :Name_Not_Found:2010/05/25(火) 11:19:40 ID:???
>>364
/から/wikiみたいに中に入る場合は難しく考えないとループしちゃうんじゃないか?
RedirectMatch 301 ^/$ /wiki
とか。

370 :Name_Not_Found:2010/05/25(火) 11:23:17 ID:???
>>366
RewriteMapは.htaccessでは使えないし、更新した時もサーバを再起動して
反映させないといけなかった気がしたから、まずはそのあたりから。

371 :Name_Not_Found:2010/05/25(火) 18:39:43 ID:???
>>367,370
どうもありがとう。
携帯のキャリアはMapじゃないほうが楽かね・・
%{HTTP_USER_AGENT}のサーバ変数がMap使うとやっかいになりそう。


372 :Name_Not_Found:2010/05/26(水) 18:23:56 ID:???
mod_rewriteに関する質問です。
http://example.com/app/にアクセスした際、実際はhttp://example.com/app/app.cgi/が呼ばれるようにしたいと思い、以下のように.htaccessに記述しました。

RewriteEngine on
RewriteBase /app/
RewriteCond %{REQUEST_URI} !app\.cgi
RewriteRule ^(.*)$ app.cgi/$1 [L]

しかし、これではhttp://example.com/app/app.cgiにアクセスした際、http://example.com/app/app.cgi/app.cgiが呼ばれるのではなくURLと同じhttp://example.com/app/app.cgiが呼ばれることになってしまいます。
http://example.com/app/app.cgi/app.cgiが呼ばれるようにしたいのですがどうすればよいのでしょうか。

373 :Name_Not_Found:2010/05/26(水) 22:51:46 ID:???
>http://example.com/app/にアクセスした際、実際はhttp://example.com/app/app.cgi/が呼ばれるようにしたいと思い

>URLと同じhttp://example.com/app/app.cgiが呼ばれることになってしまいます。
??
意味不明だなぁ

374 :372:2010/05/27(木) 06:05:18 ID:???
分かりづらくて申し訳ございません。
>>372の設定は
REQUEST_URIの/app/以下の文字列を無条件にapp.cgi/に加えて呼び出すと言うものですが、これだけでは無限ループしてしまうので
RewriteCond %{REQUEST_URI} !app\.cgi
と、REQUEST_URIにapp.cgiが含まれていた際は置き換えないようにしたのです。
しかし、ブラウザからhttp://example.com/app/app.cgiに直接アクセスした際はREQUEST_URIにapp.cgiが含まれているのでRewriteRuleが適用されずに困っているのです。
どうかよろしくお願い致します。

375 :Name_Not_Found:2010/05/27(木) 18:14:58 ID:???
そういうのはリライトして空間をねじ曲げるより
Actionとか使った方が楽なのかもしれない。

376 :372:2010/05/29(土) 22:42:27 ID:???
>>375
分かりました。別の方向で検討してみることにします。

みなさんどうもありがとうございました。

377 :Name_Not_Found:2010/06/01(火) 00:26:26 ID:bSW9gTQg
現在、掲示板で日本のIPだけ許可してるんですが
ウザイ宣伝書き込みが増えたので、そのリモートホスト(IPはわかりません)も同時に規制したいのですが、そのような事は出来ますでしょうか?

IPがわかればそれに越した事はないのですがorz

378 :Name_Not_Found:2010/06/01(火) 01:07:07 ID:???
ウザイ宣伝書き込みには必ずURLが含まれるので、禁止ワードにhttpを入れておくと良い
たまにh抜きで書くヤツもいるからttpも入れておくと良いかもしれない

379 :Name_Not_Found:2010/06/01(火) 02:52:38 ID:kxwMT1kR
たまにYouTubeにリンクとかもしてるんで、URLはNGワードにしたく無いんですよねぇ
htaccessって許可と不許可を同居出来ないのでしょうか?

380 :Name_Not_Found:2010/06/01(火) 02:57:43 ID:???
テンプレに記されてるサイトくらい熟読してから質問しろカス

381 :Name_Not_Found:2010/06/01(火) 03:12:03 ID:kxwMT1kR
そんな言い方ってないじゃないですか。
別に私はあなたの友達でもなんでもないんですよ。
失礼だと口のきき方をわきまえたまえよ。

382 :Name_Not_Found:2010/06/01(火) 05:22:40 ID:???
何言ってんだこの屑は。
友人でもない人に教えを請うているのに礼節もルールも守れないのか。
質問自体くだらなすぎるし死ねばいいと思うよw

383 :Name_Not_Found:2010/06/01(火) 09:13:10 ID:C578R70+
ID:kxwMT1kR

384 :Name_Not_Found:2010/06/01(火) 09:45:19 ID:???
吉野家に入って、「俺はハンバーガーが食いたいんだ!」とわめいてるようなもんだな。


385 :Name_Not_Found:2010/06/01(火) 13:50:28 ID:???
すみません。
似たような質問かもしれないですが、htaccessを使ってあるIPを許可しつつ、あるIPを拒否するって事をするにはどうすれば良いのでしょうか。
テンプレのサイトを見ましたが、そのやり方についての条項がないっぽいので。。。

386 :Name_Not_Found:2010/06/01(火) 15:08:54 ID:???
掲示板の機能でIPでの書き込み規制くらいできるだろ

書き込みをID制にして個別に許可を与えるとか

387 :Name_Not_Found:2010/06/01(火) 15:41:24 ID:???
掲示板がIP規制対応していないので、htaccessでなんとかならんですか?

388 :Name_Not_Found:2010/06/01(火) 15:43:12 ID:???
同じ奴だろこいつw

389 :Name_Not_Found:2010/06/01(火) 15:49:28 ID:???
そんなことも出来ないカスは死ねばいいと思うよ

390 :Name_Not_Found:2010/06/01(火) 15:50:00 ID:???
>>387
対応してる掲示板を使え
フリーCGIのでも対応してるのは多いからサーバー借りて導入しろ

391 :Name_Not_Found:2010/06/02(水) 19:46:17 ID:???
糞レスは無視して.htaccessでやるなら、たぶん今はこうなってるだろうから
Order deny,allow
Deny from all
Allow from .jp
こうする
Order allow,deny
Allow from .jp
Deny from spam.example.ne.jp

392 :Name_Not_Found:2010/06/23(水) 02:51:10 ID:???
質問です。
現在 example.com/ にアクセスがあったら全て
example.com/blog/ に飛ばすようにしています。
#Redirect permanent /index.html http://example.com/blog/index.html

今回WordPressを設置したので
example.com/wordpress/ にアクセスした時だけWPを表示させたいのです。
そこでこのようにしたのですが
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.*)$ /blog/index.html [R=301,L]

試したら403 Forbiddenになってしまいblog/に飛ばなくなってしまいました。
どうしたらいいのでしょうか

393 :Name_Not_Found:2010/06/23(水) 19:48:04 ID:???
>>392
そのRewriteCond 2つはたぶん必要ない。
そして
RewriteCond %{REQUEST_URI} !^/wordpress/
みたいなRewriteCondが必要だと思う。

394 :Name_Not_Found:2010/06/23(水) 20:17:07 ID:???
あるディレクトリに .htaccess で BASIC 認証かけて、そのサブディレクトリには
認証させないことってできる?
.htacess は上書き可能ってことだけど、「認証しない」って明示的な設定が
見つからないので。


395 :Name_Not_Found:2010/06/24(木) 02:54:04 ID:???
>>393
ありがとうございました!

396 :Name_Not_Found:2010/06/24(木) 18:31:16 ID:???
>>394
Satisfy Any としてユーザー認証とホストのアクセス制限の
どちらかを通過すればアクセス可能という状態にはできる。

397 :Name_Not_Found:2010/06/26(土) 04:49:47 ID:???
>>396
ををを、これは完璧な解決策。ありがとう!


398 :Name_Not_Found:2010/06/26(土) 14:36:50 ID:???
ド素人です。
検索や過去ログ確認しましたが解決しないので質問させていただきます。

携帯からのアクセスを全て同じディレクトリに転送したいのですがうまくいきません。
ルートに以下の.htaccessを設置しました。

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
Options -Indexes
ErrorDocument 404 http://www.sample.com/not_found.html
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "DoCoMo" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "J-PHONE" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "KDDI" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "UP.Browser" [NC]

RewriteRule ^$ http://www.sample.com/m/

その他m/ディレクトリの.htaccessに
RewriteEngine off

と記述しました。
ドメインへのアクセスはm/index.htmlを表示するのですが
それ以外のPC用の.htmlファイルへのアクセスが転送されずにPC用のファイルを
そのまま表示します。
皆さんにとっては初歩的な質問かと思いますが、よろしくお願いします。






399 :398:2010/06/26(土) 14:40:09 ID:???
PC用のindex.htmlへのアクセスも転送されません

400 :Name_Not_Found:2010/06/26(土) 17:32:16 ID:???
>>398
基本的な設定は>>367の通り

基本的な動作が確認できたら他のを付け足していくと良い


401 :Name_Not_Found:2010/06/26(土) 17:55:19 ID:???
すみません
コピペしていろいろ試しましたがやっぱダメです。
ドメインへのアクセスのみ転送されます。
kagoyaなんですがサーバーの設定かなんかですかね?

402 :398:2010/07/05(月) 01:43:08 ID:???
kagoyaに問い合わせてみた。
↓を試してみてくれといわれてやってみたが
何も変わらなかった。

RewriteRule !m/* http://www.sample/m/ [R]

なんか根本的な間違いがあるような気がしてきた。

403 :Name_Not_Found:2010/07/07(水) 17:23:36 ID:???
リライトは前後のルールからの影響も受けられるから
他のルールが原因で適用したいルールが避けられてるかも。

404 :Name_Not_Found:2010/07/13(火) 21:30:42 ID:???
http://example.com/〜.cgi/~user/をhttp://example.com/でCGIを開くようにするにはModRewriteをどう書けばよいのでしょうか?
ご教示ください。

405 :Name_Not_Found:2010/07/13(火) 21:49:05 ID:???
>>404
もうすこしちゃんと書け


406 :Name_Not_Found:2010/07/13(火) 22:13:49 ID:???
>>405
CGIをhttp://sub.example.com/などサブドメインで運用したいって言ったら
http://example.com/ で CGI が開くように ModRewrite を設定しろと言われました。

使ってるCGIはこれです ttp://adiary.org/



407 :Name_Not_Found:2010/07/31(土) 16:09:44 ID:???
一部のIPだけを制限し一部のUA以外を許可する場合はどのように書けばいいのでしょうか

408 :Name_Not_Found:2010/07/31(土) 21:26:14 ID:???
一部のUA以外を許可する場合……ということは、ああやればいい

136 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)