.htaccess質問コーナー Part8

このエントリーをはてなブックマークに追加
1Name_Not_Found
.htaccessファイル(「分散設定ファイル」)の書き方・使い方などに関するスレです。
ドキュメント、参考サイトへのリンクなどは >>2-3 辺り。

前スレ
.htaccess質問コーナー Part7
http://pc11.2ch.net/test/read.cgi/hp/1206025115/
2Name_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
3Name_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)
41:2009/02/09(月) 21:37:10 ID:???
放置プレイだったので立てました。
需要はあると思うので今までどおりマターリいきましょう。
5Name_Not_Found:2009/02/10(火) 09:20:40 ID:???
otu
6Name_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です。
チェックすべき点等ご教示願います。
7Name_Not_Found:2009/02/10(火) 21:22:10 ID:???
まず脳味噌のチェック
8Name_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かけてあります。

これは、不正アクセスされているのでしょうか?
それとも、こういうものなのでしょうか?
9Name_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/の記述が間違っているのだと思いますが、
どのように訂正すれば良いのかわかりません。
どなたかわかるからいましたら是非ご教示ください、お願いいたします。
10Name_Not_Found:2009/02/22(日) 12:54:43 ID:???
>>8
webalizerでアクセスしてきたIP確認してみた?
なんのためのwebalizerなんだかw
11Name_Not_Found:2009/02/22(日) 14:16:18 ID:???
こんな場末のスレで聞いてる時点でアレなんだから相手してやるな
12Name_Not_Found:2009/02/22(日) 14:43:09 ID:???
>>10
釣りだよ、釣り。
スルーしろ。
13Name_Not_Found:2009/02/24(火) 01:59:50 ID:???
http://www.google.com/
の自動転送なんだけど、何故google.comに行かないで
http://www.google.co.jp/に行くわけ? どうやって分けてるんだろ?
14Name_Not_Found:2009/02/24(火) 08:56:50 ID:???
>>13
IPアドレスで見てるか、Accept-Languageで見てるか、UserAgentで見てるか
じゃないかな?
1513:2009/02/24(火) 09:47:12 ID:???
はい馬鹿が釣れたw
レベル低すぎw
16Name_Not_Found:2009/02/24(火) 13:16:46 ID:???
>>15
このスレ初めて?
肩の力入りすぎだぞ坊やw
17Name_Not_Found:2009/02/24(火) 14:00:31 ID:???
>>15
高レベルの回答を頼むw
18Name_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の効果が適用されていない
と思える節がありましたのでこの質問のように疑問に感じた次第です

よろしくお願いいたします
19Name_Not_Found:2009/02/25(水) 10:53:08 ID:???
20Name_Not_Found:2009/02/25(水) 10:55:03 ID:???
>21
高レベルの回答を頼む
21Name_Not_Found:2009/02/25(水) 14:02:39 ID:???
>>20
おちんちんびろーん
22Name_Not_Found:2009/02/25(水) 14:26:45 ID:???
>>21
AAを略すな
23Name_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>

24Name_Not_Found:2009/02/26(木) 02:23:46 ID:c0K2xo0/
>>23
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
25Name_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>
26Name_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
27Name_Not_Found:2009/02/26(木) 14:56:34 ID:???
>>26
d1/.htaccessのリダイレクト処理の部分で、d1/d2を除外するだけのことだろう
28Name_Not_Found:2009/02/26(木) 16:48:46 ID:???
>>27
おまえ・・・ そんな事ぁ 26でもわかってるだろ
29Name_Not_Found:2009/02/26(木) 17:19:57 ID:???
>>28
わかってないから、26みたいになってるんじゃなかろうかw
30Name_Not_Found:2009/02/26(木) 17:43:24 ID:???
で、知ったかぶりの
>31
素敵な回答をどうぞ
31Name_Not_Found:2009/02/26(木) 17:47:29 ID:???
除外する記述を知らないんだろ?

>32 どうぞ
32Name_Not_Found:2009/02/26(木) 17:48:23 ID:???
そうおっしゃらずに>>30さん、お願いしますよぉ
33Name_Not_Found:2009/02/26(木) 18:40:31 ID:???
    ∧_∧    
  ┌ ( `・ω・)     ガガガガガガガッ!!!!!!
  ├ (   ┏ ○┓_ _ _ _从._,
  ├ つ┏┓三((〓((━(。゚。)   ━ 二 三  ━  ━  ━   >32
  └ ≡≡≡ノ  ̄  ̄  ̄  ̄ ⌒Y⌒
    (__(__)
3426:2009/02/27(金) 09:03:22 ID:???
いろいろと返事ありがとうございます。
htaccess1のrewriteがちょっと複雑になっているためd2配下のhtaccess2でなんとかできないかな、と思っていました。
もちろん、できないのであれば>>27さんの通りhtaccess1で除外させます。

後出し条件になってしまいますが、d1とd2のアクセス比は10000:1ぐらいです、後出しごめんなさい。
ですからd2で除外できるのであれば、そのほうがうちのようなunk鯖に優しいかなと思っていました。
そしてrewrite周りのミスでどこか見れなくなった、とかを避ける意味もあります。rewriteうまくかけないですし><。
35Name_Not_Found:2009/02/27(金) 14:24:20 ID:???
可哀そうで謙虚な 26・・・
36Name_Not_Found:2009/02/27(金) 15:05:23 ID:tIAdqPW0
>>26=>>34
このスレ、さかのぼって見れば分かると思うけど、
まともに答えてくれる人はもういないよ

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

【Apache】mod_rewriteについて語るスレ
http://pc11.2ch.net/test/read.cgi/php/1023791370/
37Name_Not_Found:2009/03/03(火) 01:51:16 ID:4ry0O/LS
ちょっとゴメン、ドメインでのアクセス拒否について質問。

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

order allow,deny
allow from all
deny from .cn

これではじけるはずじゃないんでしょうか?
ログ見てたらはじけてなくて・・・中国韓国全NO50件大杉?
38Name_Not_Found:2009/03/03(火) 09:22:17 ID:???
中国からのIPアドレスが、.cnではないということではないのか?
39Name_Not_Found:2009/03/03(火) 10:26:49 ID:???
38 名前:Name_Not_Found[sage] 投稿日:2009/03/03(火) 09:22:17 ID:???
中国からのIPアドレスが、.cnではないということではないのか?
40Name_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ではないということではないのか?
41Name_Not_Found:2009/03/03(火) 14:29:45 ID:???
>>37
かの国の検索エンジンのクローラーのIPアドレスを逆引きしても、
.cnにはならなかった気がする
なので、ホスト名ではなくて、IPアドレスではじくしかないんじゃ
なかろうか
42Name_Not_Found:2009/03/03(火) 16:44:41 ID:???
http://www.hakusan.tsg.ne.jp/tjkawa/lib/krfilter/index.jsp
昔どこかで三国フィルターとかって名前であったと思ったけど、どこいっちゃったかな。
43Name_Not_Found:2009/03/03(火) 16:50:41 ID:???
44Name_Not_Found:2009/03/04(水) 18:21:05 ID:H+ujtyet
Options +MultiViews
を使ってページを表示させていたのですがレンタルサーバーを
移ってから500内部サーバーエラーと出て表示されなくなりました。
どのような原因が考えられるのでしょうか?

PHPバージョン 5.2.8
アパッチバージョン 2.2.11 (Unix)
45Name_Not_Found:2009/03/04(水) 19:36:31 ID:???
46Name_Not_Found:2009/03/05(木) 06:09:50 ID:???
>>41
いや、ドメイン名として.com.cnとなってるわけだから
ドメイン名がcnではないわけではない。
スパマーとして名高い数字四桁.com.cnのことなんだけどね。
NICにIP範囲出してくれるページあるが、それでごっそりCN入れても
日本国内の住人が弾かれることってないんだろか。
47Name_Not_Found:2009/03/06(金) 22:13:47 ID:???
よしよし、今日も馬鹿がいるな
48Name_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/にリダイレクトされる状態です
だれか助けてください。お願いします。
4948:2009/03/07(土) 02:49:59 ID:???
すいません。
wordpressスレで聞いてきます。
50Name_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の可変のようです。
よろしくお願いいたします。
51Name_Not_Found:2009/03/09(月) 18:06:42 ID:???
52Name_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 などとサーバーの絶対パスが後ろについてしまいます。
53Name_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で別のプログラムを作る必要があるのでしょうか?
5453:2009/03/12(木) 22:00:04 ID:bQCO7qzC
↑httpをつけてしまいました。すみません。。
55Name_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/に飛ばせますか
56Name_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のような所有者のあるドメインを勝手に例示用として使ってはいけません
57Name_Not_Found:2009/03/13(金) 22:38:03 ID:???
>>48
http://sample.com/も存在するドメインですね

>>56
それは分かりましたので、答えを教えてください。
58Name_Not_Found:2009/03/13(金) 22:39:21 ID:???
>>56
それは分かりましたので、答えを教えてください。
59sage:2009/03/14(土) 23:32:25 ID:lG5Orh+V
aaa.com/bbb
aaa.com/ccc
という2つのディレクトリがあったとして、aaa.com/bbb内にのみ検索除けのための.htaccessを設置したら、aaa.com/cccのみ検索に引っかかるという認識でよいでしょうか?
60Name_Not_Found:2009/03/15(日) 00:30:57 ID:fQTxxMUM
>>59
sageは名前欄に入れるのではなく、
E-mail欄に入れなければ効果はありません
61Name_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>

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

6398:2009/03/24(火) 16:08:47 ID:qR3WbWo2
htaccessで
LAN内を許可
外部からの場合はベーシック認証
する方法を教えてください。
64Name_Not_Found:2009/03/25(水) 15:58:06 ID:???
もうこのスレはダメだろ
質問しても無意味
65Name_Not_Found:2009/03/25(水) 16:44:44 ID:???
web板もブログ板?も質問してもろくな答えなんてでないっしょ。

66Name_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]

ご教授よろしくおねがいします

これではだめみたいです
68Name_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
まずはここ読んでみるのオヌヌメ
69Name_Not_Found:2009/04/02(木) 00:28:57 ID:CbB8+JjQ
限りなく初心者で悪いんだが質問

FTPでファイルを上げたり変更したりできるのはわかったんだが、.で始まる設定ファイルって消去したらサーバ機以外からいじれなくなるんだよね??
70Name_Not_Found:2009/04/02(木) 04:07:34 ID:q1H3p548
>>69
そんな事は無い

×いじれなく
○いじられなく
71Name_Not_Found:2009/04/02(木) 04:13:32 ID:???
×いじられなく
○いじれなく
72Name_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という名前のディレクトリ配下に引越しさせたいんです。
73Name_Not_Found:2009/04/05(日) 02:47:47 ID:???
test
74Name_Not_Found:2009/04/05(日) 09:43:10 ID:???
>>70
サンクス

自分で>>69読み直すと、確かに紛らわしい文だったな
すまんね
75Name_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の記入がおかしいのでしょうか。
どこがおかしいのか教えて頂けないでしょうか。
76Name_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ごと弾きたいんだけど
「特定文字列が含まれていれば」の条件の正規表現はどう記述するのですか?
77Name_Not_Found:2009/04/06(月) 21:55:21 ID:???
テンプレも読まず質問しないように

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
78Name_Not_Found:2009/04/06(月) 22:32:00 ID:HMzCVOIs
>>77
答える知能がないカスは黙って消えろ
二度とでしゃばんな
79Name_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のリダイレクトで行けるはず」とのことなのですが。
80Name_Not_Found:2009/04/06(月) 23:10:24 ID:???
>>78
馬鹿のくせに態度でかいなw
81Name_Not_Found:2009/04/07(火) 03:18:59 ID:???
>>53
でぶの素人に見えた。





ごめん。
82Name_Not_Found:2009/04/07(火) 03:37:51 ID:???
>>78
春は、基地外がいっぱい。
83Name_Not_Found:2009/04/07(火) 17:43:12 ID:???
>>78
お前も同じ
84Name_Not_Found:2009/04/08(水) 06:52:36 ID:???
PHPでファイルのアップロードを許可するにはどのように記述すればいいですか?
85Name_Not_Found:2009/04/08(水) 08:42:47 ID:???
>>84
サーバー管理者ねお尋ねください。
86Name_Not_Found:2009/04/08(水) 08:47:24 ID:???
>>84
スレ違い

PHPスレ行ってください
87Name_Not_Found:2009/04/08(水) 10:15:09 ID:???
>>79
リダイレクトとリライトの違いもわからないなんて…
それ以前に正規表現の書き方も間違ってるし。
88Name_Not_Found:2009/04/08(水) 12:20:00 ID:???
今どきwww有り無し間の転送サービスが付随してない鯖なんてあんの
89Name_Not_Found:2009/04/08(水) 14:25:17 ID:???
9079:2009/04/08(水) 15:43:04 ID:???
>>86
リダイレクトじゃなくてリライトですか。
右も左もわからずだったんで助かりました。
ありがと、正規表現の書き方とあわせてもう一度よく調べてみます。

>>88
サポートの返答では「WordPress設置したせい」とのことでした。
別んとこで借りてる鯖はWP設置してもwww有り無しどっちも行けるのに?
何か鯖の設定の違いが影響してるんだろか???って感じです。
9179:2009/04/08(水) 15:47:45 ID:???
ごめんなさいアンカー間違えました。
>>86→訂正>>87
92Name_Not_Found:2009/04/09(木) 05:39:18 ID:???
どんまい♪
93Name_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
94Name_Not_Found:2009/04/14(火) 23:13:28 ID:???
>>93
正規表現を勉強しろ
95Name_Not_Found:2009/04/14(火) 23:39:19 ID:???
>>93
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
9693:2009/04/14(火) 23:49:23 ID:???
>>95
申し訳ないです。
---------------------------------------------------------------
アクセス拒否なのですが、
hoge******.adsl.ppp.example.ne.jpを弾きたい場合は
どのようにすれば良いのでしょうか?

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

adsl.ppp.example.ne.jp全体では無く、
hoge部分も一致する場合のみ弾きたいけど、
hogeと******が連続していて、間に「.」等が無く困っています。
よろしくお願いします。
97Name_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/
9893:2009/04/15(水) 01:09:56 ID:???
「など」と書かれていたので、特に気にせずに使ったけど、
そんなルールがあったんですね、了解。
また質問の件は別スレで答えて頂けたのでOKです!
ありがとね。
99Name_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
でいいのではないか
100Name_Not_Found:2009/04/15(水) 01:51:15 ID:???
20レスほどあぼーんされて
何も見えないがまたキチガイでも湧いてるのか?
101Name_Not_Found:2009/04/15(水) 02:20:22 ID:???
>>100があぼーんされて
何も見えないがまたキチガイでも湧いてるのか?
102Name_Not_Found:2009/04/15(水) 07:10:31 ID:???
103Name_Not_Found:2009/04/15(水) 13:42:52 ID:???
>>96
.htaccessでは残念ながら不可能
104Name_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 で遮断出来ますでしょうか?

105Name_Not_Found:2009/04/18(土) 16:01:24 ID:???
携帯サイトをやっています。
.htaccessを使って携帯かどうかをIPで調べPCなら別のページを表示させることには成功したんですが
これだとGoogleとかのロボットからのアクセスまでも弾いてしまいます。
ロボットによってはユーザーエイジェントは公開しているけどIPアドレスまでは公開していないので
今使っている.htaccessにユーザーエイジェントでの判別も付け加えたいのですが
どのようにして付け加えればいいのでしょうか?
106Name_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を追加しようとしたらどのように付け足せばいいのでしょうか?
107Name_Not_Found:2009/04/18(土) 18:06:06 ID:???
>>104
自分のホスト名で試せば分かるけど、それでは遮断出来ない。
108Name_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}のところは桁数の変動に合わせて書き換えて
109Name_Not_Found:2009/04/19(日) 17:38:13 ID:???
入.......
110Name_Not_Found:2009/04/20(月) 04:32:53 ID:???
111Name_Not_Found:2009/04/20(月) 17:48:19 ID:???
(σ・∀・)σ111ゲッツ
112Name_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文を追加しました。
これで希望通り動作しているようですが、問題はないでしょうか?

また、他に適切な記述法がありましたら教えてください。
113Name_Not_Found:2009/04/24(金) 01:26:22 ID:???
114Name_Not_Found:2009/04/24(金) 07:21:46 ID:???
存在しないページにアクセスすると 403 エラーになるサーバーで,これ
を 404 を返すようにするにはどうしたらいいでしょうか?
404 エラー風の 403 エラーページでは不可です。
115Name_Not_Found:2009/04/24(金) 07:25:44 ID:???
>>114
調べた結果こう試したが上手くいかない
というのなら分かりますが、
最初から問題にして答を導き出そうとするのはいかがなものかと思いますが
116Name_Not_Found:2009/04/24(金) 07:44:12 ID:???
.htaccess に何と書けばいいのか全くわからないので,試しようがないの
です。
117112:2009/04/24(金) 09:49:01 ID:???
>>113
レスありがとう。それは
http://hoge.example.com/index.html
への転送で構いません。
118Name_Not_Found:2009/04/24(金) 22:50:41 ID:???
特定ページAへの直リンクを任意ページに転送する方法ってありますかね?
ページAの入ってるディレクトリには他にもファイルがあるんですが、出来れば他に移動せずに済む方法があると助かります。
119Name_Not_Found:2009/04/24(金) 23:21:44 ID:???
>>118
お断りします
120Name_Not_Found:2009/04/25(土) 00:20:02 ID:???
>>118
ログ読めば書いてあるよ
121Name_Not_Found:2009/05/03(日) 13:26:02 ID:0DjhlLFj
PC専用サイトと携帯専用サイトを分けており、PCならPCのみ、携帯なら携帯のみでアクセス出来るよう振り分けを行っています。
ここ数日なのですが、携帯専用の方にエラーログが残るようになってしまいました。
エラーページにアクセス解析を設置していて、弾かれているのはau(ezweb)からアクセスしている方のようです。自分もauを使っているので.htaccessを設置する際、きちんと実験も行い、携帯からしかアクセス出来ないことを確認しています。
.htaccessのIP帯はこまめに更新しているので、記述漏れがあるとも思えません。
なぜエラーが出るのか不思議です。

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

122Name_Not_Found:2009/05/03(日) 16:14:36 ID:???
>>121
この文章だけで回答できる人がいたら、それは超天才ですねw
123Name_Not_Found:2009/05/03(日) 17:26:21 ID:???
>>121
.htaccessで制御しているのは、
・UA
・IPアドレス
以上の2つだけという理解で間違いないですか?

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

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

ここ以外の場所でも言える事ですが、自分本位な質問はしないよう注意しましょう
124Name_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/
に分けてるのかわからん
125Name_Not_Found:2009/05/09(土) 09:49:47 ID:???
>>121
何を以てauからのアクセスと判断したんだ? IPアドレスじゃないんだよね?
知りたいのはその判断基準が正しいかどうかじゃないの?
126Name_Not_Found:2009/05/22(金) 13:33:06 ID:???
order allow,deny
allow from all
deny from .cn

という感じで.cnのアクセスを禁止しているのですが、掲示板に.cnからのスパム投稿があったりします
自分のIPを追加したりしてアクセスできなくなっているのは確認できるのですが、原因がわかりません
.htaccessは一番上のフォルダにだけ設置しています
127Name_Not_Found:2009/05/22(金) 14:36:57 ID:???
>>126
・送信元にhost名(host.example.cn等)が無く、
IPアドレスだけの場合は.cnだけでは意味が無い
・逆引きしたIPアドレスが本来は.cnでなければならないはずが、
DNSのキャッシュ等に誤りや不整合がある場合等に.cnが正常に検知できない

結論
.cnだけでアクセス制御できるという短絡的な考え方は捨て、
IPアドレスや他の要素(language等)も合わせ制御すべきです
128Name_Not_Found:2009/05/22(金) 16:36:26 ID:???
SetEnvIf Accept-Language "^[^(ja)]+$" non_japanese
で日本語ブラウザ以外のアクセスは禁止しています。
Firefoxで日本語の言語を消去してアクセスすると403エラーで無限ループします。

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

.htaccessには他に特に記述はしていない状態です。
129Name_Not_Found:2009/05/22(金) 16:48:34 ID:???
追記

403のhtmlは別フォルダに配置し、その中に無記述の.htaccessを設置してもダメでした
130Name_Not_Found:2009/05/22(金) 16:55:22 ID:???
>>128
Accept-Languageの意味わかってる?
131Name_Not_Found:2009/05/22(金) 17:23:00 ID:???
>>130
日本語のブラウザじゃないのでが見れない→403も見れないをループしてるということでしょうか?
403のhtmlがあるフォルダは無記述の.htaccessを設置して
日本語のブラウザで見れないを解除されてるんじゃないかと思ったのですが。
132Name_Not_Found:2009/05/22(金) 17:26:41 ID:???
すいません無記述では無く
order allow,deny
allow from all
を記述したらうまくいきました。

お騒がせしました罵声を浴びせてください。
133Name_Not_Found:2009/05/22(金) 18:42:07 ID:???

           \ ナニヤッテンダー ?

\ バカヤロー ?



                            \ ウィ ?
134Name_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は使えないので、どうにかして上記のように設定したいのですが。
135Name_Not_Found:2009/06/03(水) 07:37:20 ID:???
CondでHTTPSがOnかどうかもチェックしてみるとかね。
136Name_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行を削除しても無限ループとなってしまいます。
137Name_Not_Found:2009/06/04(木) 09:39:46 ID:???
RewriteCond %{SERVER_PORT} !^443$
138Name_Not_Found:2009/06/04(木) 10:55:40 ID:???
>>136
とりあえずhttpsではないときにHTTPSがoffなんて都合のよい値になることはないから!^on$

>>137
httpsのサービスが443で行われているとは限らない。
139Name_Not_Found:2009/06/04(木) 13:38:52 ID:???
httpは80/tcp、httpsは443/tcp
なーんて固定観念持ってしまってる人多いよね
140Name_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つを満たす書き方が他にあるのなら教えて頂きたいです。
知恵をお貸しいただけると幸いです。
141Name_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

ではダメなの?
142Name_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" のようには記載しませんので、
仕事で同名称を記載する事があるようでしたらご注意のほど
143140: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についての表記方法ご指摘ありがとうございました。
うっかり恥かくところでした。
144140:2009/06/13(土) 12:48:01 ID:???
140です。連投申し訳ありません。
色々いじってみた結果、なんとなく原因が見えました。
どうやらSetEnvIf Accept-Language 特定の国の言語 shutoutのようです。
特定の国の中に米国もあり、enを入れていたのですがこれがダメみたいです。
IEではアクセスできたことを考えると、もしかしてFirefoxはデフォルトでenが
受け入れ設定になっているとかなのでしょうか?
もしそうだとすると、言語で弾く以外の方法を考えた方が良さそうな気がします。
>>140の条件4つを満たす何か良い書き方ありましたら教えていただけると助かります。
色々聞いてばかりですいません。
145140: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でなくても文法的に問題ないのでしょうか。
あちこちのサイト様を見てもこういう書き方が載っていなくて少し不安です。
146Name_Not_Found:2009/06/13(土) 14:03:48 ID:???
その書き方で大丈夫なはず、自分もそのやり方でやってる
リファレンスでは大抵Allow(またはDeny) from allが記載されてるけど
必ず書かなきゃいけないわけじゃないよ

ちなみにFirefoxは標準で英語が設定されてる
(ツール→オプション→コンテンツの「言語」で確認)
英語は他の日本語ブラウザでも標準設定されてるものは多いから
許可する言語で制御するのが正解だと思う、自力解決オメ>>140
147Name_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 すれば英語圏の大多数を弾けることになります
148Name_Not_Found:2009/06/13(土) 17:00:22 ID:???
>>146>>147
ありがとうございます。
書き方あってましたか!何だか嬉しいです。
やはりFirefoxは英語が標準設定なのですね。
147さんの海外版Firefoxがen-USを採用という情報、
恐らく自分ひとりでは一生知り得なかったと思います。
大変参考になりました。
ところで大文字小文字で認識が異なるなら、
大文字設定にした場合、IEでもきちんと弾けるのでしょうか。
149Name_Not_Found:2009/06/13(土) 17:28:36 ID:???
>>148
Microsot製の日本国内向け純正 IE だけに限ってですが、
比較的新しいバージョンでは "en" は初期設定で採用されていません

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

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

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

.htaccess は以下の 2点についておさえておくだけで、
・書き方の基本
・上記のようなアクセス元の吐き出す情報
自分自身でいくらでも応用してアクセス制御できるようになります
150140=148:2009/06/13(土) 22:44:42 ID:???
>>149
ありがとうございます。
チェッカーのアドレス、ブクマいたしました。
色々と勉強して使いこなせるようになりたいと思います。
この度はいろいろありがとうございました。ROMに戻ります。
151Name_Not_Found:2009/06/26(金) 19:49:05 ID:???
アホーの画像検索ボットのアクセスらしいのですが、

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

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

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

Yahoo!検索かhtml関連のスレで質問してください
153Name_Not_Found:2009/06/26(金) 21:42:05 ID:???
>>151
order deny,allow
deny from all
allow from おまいのIP

で完璧だろう
154Name_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>

を書き足すと打ち消されてしまいますか?
その場合どう書き直したらいいのでしょうか。
155154:2009/07/04(土) 10:57:44 ID:???
>>154のhogeは同一ドメインのバーチャルホストです。
156Name_Not_Found:2009/07/05(日) 17:53:06 ID:???
どっかにRedirectに影響が出るようなRewriteRuleが残ってるのかも?
そしてrobots.txtの<Filesを書き足すとまずディレクトリ全体のアクセス制限の設定が適用されて
さらにrobots.txtへのアクセスの時は<Filesの中に書いたアクセス制限を適用しなおされることになるから
robots.txt以外には何の影響も出ない。
157154:2009/07/06(月) 00:57:16 ID:???
>>156
ありがとうございます。
RewriteRuleというとmod_rewriteのですよね?
借りているサーバーではmod_rewriteは使えない(可能だけど申請してない)し、
その既述を.htaccessにしていないです。
.htaccessを Redirect permanent /~hoge/ http://hoge.example.jp/ (改行)
だけにしてみても同じ結果でした。
robots.txtについては安心しました。ありがとうございました。
158Name_Not_Found:2009/07/14(火) 04:59:33 ID:???
htaccessファイルの1行あたりの長さの制限て255バイトでいいの?
最近は1024バイトになったとかじゃない?
159Name_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
160Name_Not_Found:2009/07/14(火) 11:00:46 ID:???
>>159
^Mozilla¥/5¥.0$
161159:2009/07/14(火) 11:17:41 ID:???
>>160
ありがとうございます。
早速記述してみます。
162Name_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個までの制限があるっぽいです。
163Name_Not_Found:2009/07/14(火) 19:51:58 ID:SVYjDHqa
order allow,deny
allow from all
deny from 任意
と、任意のホストやIPについてアクセス制限しているのですが
どうもとあるところ(.server.lu)からのアクセスだけ制限できていません。
htaccessを指定してあってもすり抜けてくることもあるということでしょうか?
164Name_Not_Found:2009/07/14(火) 20:49:05 ID:???
>>163
設定ミスだろ
165Name_Not_Found:2009/07/14(火) 21:18:19 ID:SVYjDHqa
同じように自分のホストを設定すると403になるのでミスなのかよくわかりませんが
*.server.luというホストの場合
deny from .server.lu
で良いはずですよね?
166Name_Not_Found:2009/07/14(火) 21:20:14 ID:???
>>165
server.luが持ってるIPアドレスを調べて、IPアドレスで制限したほうが早くね?
167Name_Not_Found:2009/07/14(火) 22:17:06 ID:???
>>162
ありがとう。
168Name_Not_Found:2009/07/14(火) 22:25:53 ID:???
>>165
*.server.luを正引きしてIPアドレスが一致しない場合はホスト名では制限できない。
169163:2009/07/15(水) 14:14:09 ID:NVDhvbvz
わかりました、やってみます。
ありがとうございました。
170Name_Not_Found:2009/07/15(水) 14:21:28 ID:???
>>165
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
171Name_Not_Found:2009/07/19(日) 16:08:55 ID:odpIJSL+
http://www.yahoo.co.jp/をhttp://www.yahoo.co.jp/index.htmlに統一したいのですが記述が解りません
拡張子無しの記述は解るのですが…拡張子有りに固定は一般的でないようなので調べても見つかりません。
色々、試してみましたが無理でした。
宜しくお願いします。
172Name_Not_Found:2009/07/19(日) 16:29:09 ID:???
>>171
>>170
テンプレも読まずに質問するのはいかがなものかと思いますが
173Name_Not_Found:2009/07/19(日) 18:22:19 ID:???
>>172
クレクレ団だからしかたあるまい
174Name_Not_Found:2009/07/22(水) 19:07:45 ID:???
>>171
/に使われるものをindex.htmlだけに限定するということなら
DirectoryIndex index.html
/へ来た人を/index.html移動させるなら
RedirectMatch 301 ^/$ /index.html
あたりかな?
175Name_Not_Found:2009/07/23(木) 22:56:16 ID:???
質問です。

htaccessを使ったBasic認証時に入力されたユーザー名を
別のシステム(ファイルのダウンロードカウンターなんですが)に渡して
どのユーザーがどのファイルをダウロードしたか、見たいな事を実現したいのですが
こんなこと可能なんでしょうか?
176Name_Not_Found:2009/07/23(木) 23:19:44 ID:???
>>175
apacheのログには、ユーザー名が記録されてるでしょ
177Name_Not_Found:2009/07/23(木) 23:23:43 ID:???
>>176
ありがとうございます。

なるほど!では何とかそこから持ってくればできなくはないってことですね。
難しそうですが、調べてみます。
助かりました。
178Name_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からのアクセスが続いて困ってます。
この記述に間違いがあるのでしょうか。
179Name_Not_Found:2009/07/26(日) 11:58:23 ID:???
>>178
質問する前にまず、
テンプレ(>>1-3)に目を通してから質問しましょう

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

【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
180Name_Not_Found:2009/07/27(月) 02:00:17 ID:???
>>178
逆引きしたホスト名を正引きして元のIPアドレスに戻らないときは
ホスト名によるアクセス制限は使えない。
それを書いた.htaccessの別の部分の<Filesや下の階層の.htaccessなどで
別のアクセス制限をしているときもそのアクセス制限で上書きされてしまって
効かない。
181Name_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]

このように記述しているのですが、悪い部分をご指摘いただきたい。
182Name_Not_Found:2009/07/31(金) 00:14:34 ID:???
/が抜けてました。。orz
RewriteRule ^(.*)$ /abc/$1 [L]
183Name_Not_Found:2009/07/31(金) 00:17:47 ID:???
>>182
アクセスログに転送しようとしている先の
URL が残っているはずなので、
それを見ればどこに問題があるか分かると思いますよ
184Name_Not_Found:2009/07/31(金) 23:15:25 ID:???
>>181
おそらく/abcへのアクセスも/abc/abcへ、/abc/abcへのアクセスも/abc/abc/abcへと変換してそうなので
RewriteCond %{REQUEST_URI} !^/abc
みたいなCondでせき止めておく必要があると思う。
185Name_Not_Found:2009/08/02(日) 21:55:07 ID:???
allow(deny) from allは場合によっては書かなくて良いと聞いたのですがどのような場合ですか?
186Name_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を書いていることがほとんど。
187Name_Not_Found:2009/08/03(月) 16:45:29 ID:???
>>186
ありがとう
188Name_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ファイルだけ直リンクにした場合、再生されてしまいました。

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

何かいい方法はありませんでしょうか。
189Name_Not_Found:2009/08/04(火) 01:21:08 ID:???
(´・ω・`)しらんがな
190Name_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

としても機能しないんだがどうしたらいいんだろうか
191Name_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/

ルールやテンプレは無さそうだけど、
質問したくなったらスレ内のログくらいは確認してから質問してあげてください
192Name_Not_Found:2009/08/04(火) 18:02:14 ID:???
RewriteCond %{HTTP_REFERER} %5D [NC,OR]
のほうでやったら機能したわ。サンクス
193Name_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 のようになっていて、
ローカルで見ると全てリンク切れなのですが、
その原因はこの設定では?と思っているのですが…。
194Name_Not_Found:2009/08/06(木) 07:30:19 ID:???
/aa/bb/〜.htm としてアクセスされたときに /aa/bb/〜.html へリダイレクトさせる設定で
〜.htm へのハイパーリンクを修正することなく 〜.html という名前のファイルへ
移動できるようにしているんでしょう。
195193:2009/08/06(木) 07:48:06 ID:Hggn3Cns
>>194
ありがとうございます。
では、存在しない/aa/bb/〜へのリンクを生成するためというわけではないのですね。

上に書いたように、FTPで見る限り/aa/bb/というフォルダは無く、
ルートにindex.htmlがあり、その直下にフォルダがあってリンク先はそれぞれそのフォルダ内にあるのですが
リンクの記述は/aa/bb/〜.htmlのように書かれているので、ローカルではリンク切れになるのですが
Web上では正常に稼動しているので不思議に思っています。
196Name_Not_Found:2009/08/10(月) 15:49:53 ID:???
それの他にも/aa/bb/絡みの設定(Redirect, RedirectMatch, Rewrite*)があるかも。
.htaccessではなくサーバーそのものの設定ファイルの中とか。
197Name_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に転送(アク禁)
198Name_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]
とか。
199Name_Not_Found:2009/08/23(日) 16:00:26 ID:???
Zend Frameworkのマニュアルに
RewriteRule ^(.*)$ - [NC,L]

という記述があるのですが、移動先の - の部分は何を表しているのでしょうか
200Name_Not_Found:2009/08/23(日) 19:49:49 ID:???
ルールがマッチしても書き換えない。

書き換えないのにパターンに()が付いていたり^.*$にマッチさせるのにNCだったりと
ちょっと冗長な部分が気になるけど。
201Name_Not_Found:2009/08/24(月) 12:30:50 ID:???
>>200
ありがとうございます。括弧はこちら側のミスです。

あと以下のようにルールが2つあるのですが、どうして2つ必要なのでしょうか?
RewriteRule ^.*$ - [L]
RewriteRule ^.*$ index.php [L]
202Name_Not_Found:2009/08/24(月) 23:34:33 ID:???
その2つのRewriteRuleだけなら下のRuleは必要ない。
おそらく上のRuleと組になるRewriteCondがいくつかあって、そのCondを満たしたときは上のRuleで終了
満たさなかったときは上のRuleは適用せず下のRuleを適用して終了という感じになってるはず。
203Name_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"
 ・
 ・
 ・
204Name_Not_Found:2009/09/03(木) 11:32:45 ID:???
205Name_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"
ところでこの設定ちゃんと効いてる?
206Name_Not_Found:2009/09/03(木) 21:56:46 ID:???
207Name_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から始まるファイルへのアクセスを拒否するという
設定と重複して表記するのはどのように書くのでしょうか。
208Name_Not_Found:2009/09/06(日) 14:27:21 ID:???
そのまま2つ続けて書いておけばいい。
209Name_Not_Found:2009/09/15(火) 15:35:43 ID:CYXv8MMD
皆さん質問させてください。よろしくお願いします。

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

.htaccessとかで設定できるのでしょうか?
設定できるようであれば、設定方法を教えてください。
210Name_Not_Found:2009/09/15(火) 15:40:36 ID:???
211Name_Not_Found:2009/09/15(火) 15:41:21 ID:CYXv8MMD
>>209です 連投すいません。

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

あらためてよろしくお願いいたします。
212Name_Not_Found:2009/09/15(火) 18:40:39 ID:???
その/△△.cgiへのアクセスすべてを/へ移動させるだけなら
Redirect permanent /△△.cgi http://○○.jp/
でよさそう。
213Name_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/にいくようにするにはどうしたらよいでしょうか
214Name_Not_Found:2009/09/18(金) 01:14:28 ID:???
>>213
テンプレを読んでから質問お願いします

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
215Name_Not_Found:2009/09/19(土) 00:20:18 ID:???
>>213
そのCondとRuleの間に携帯電話以外の余計なCondとかRuleがあったりしないかな?
216Name_Not_Found:2009/09/19(土) 15:12:52 ID:???
>>215
どうも解決しました

UP.Browser用を消したらいけました
ありがとうございました。
217Name_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でしたいんですが。
どなたか教えてください。
218Name_Not_Found:2009/10/02(金) 09:37:04 ID:???
>>217
嫌です
219Name_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 環境でテストすればすぐ分かるはずですから、試してみてください
検討を祈ります
220Name_Not_Found:2009/10/02(金) 09:49:43 ID:???
>>219
>検討を祈ります
221219:2009/10/02(金) 10:30:29 ID:???
健闘を祈りますですね
すみません
誤字です
忘れてください
恥ずかしいですw

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


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

1,2,3ときたら、言いたくなるよね?ね?ダメ?w
224Name_Not_Found:2009/10/05(月) 17:01:03 ID:???
初心者質問スレより誘導されて来ました。
質問失礼します。


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

変な質問で申し訳ありませんが、
.htaccessと合わせて考えたら混乱してきたので、
よろしければ教えてください。
225Name_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) ウェブサイトのルートからリンクを辿ってサイト内の各ページを探索
----
226Name_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/
227Name_Not_Found:2009/10/05(月) 21:12:40 ID:???
>>225,226
テンプレを見逃していて申し訳ありませんでした。
それでも丁寧に教えてくださって助かりました。
本当にありがとうございます。
理解できました。
恥ずかしながら、どうやら.htaccessと同じ解釈をしていたらしいです。

次回からは該当スレに質問します。
ありがとうございました。
228Name_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$ にしても動作しないようです。

どのように記述したらよろしいでしょうか。よろしくお願いします。
229Name_Not_Found:2009/10/07(水) 11:16:06 ID:???
.htaccessに文法エラーがあると動かないんだけど
文法エラーがあったら無視して動作するとかの設定って
httpd.confにどうやって書けばいいの?
230Name_Not_Found:2009/10/07(水) 11:54:46 ID:???
>>229
>>1
ここは、.htaccessファイル(「分散設定ファイル」)の
書き方・使い方などに関するスレです

httpd.conf については、
Apache 関連のスレで質問してくだちゃい
http://find.2ch.net/?STR=Apache
231228:2009/10/07(水) 17:15:01 ID:???
>>228はそもそも無理なことなんでしょうか…。
232Name_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
233Name_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, [email protected] 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.

とエラーが表示されてしまっています。
なぜでしょうか うーん
234Name_Not_Found:2009/10/08(木) 11:27:19 ID:???
>>233
マルチポストはやめましょう
ErrorDocumentディレクティブについて再勉強
235Name_Not_Found:2009/10/23(金) 13:14:03 ID:oGZCXuhe
特定のリファラからの特定のファイルへのアクセスのみリダイレクトさせる設定はどうすればいいのでしょうか?


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

まずはやってみて、
壁にぶち当たったら上のように質問されてはいかがでしょうか?
237Name_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

ご指導の程よろしくお願いします
238Name_Not_Found:2009/10/23(金) 19:22:40 ID:???
>>237
しょぼ!
239Name_Not_Found:2009/10/23(金) 22:13:22 ID:???
>>237
質問したい時はテンプレ>>1-3を読んでから
240Name_Not_Found:2009/11/16(月) 18:08:47 ID:???
サーバ側で.htaccessの機能に制限があり、AddTypeでのファイル拡張子を書き換える記述が
できないとのことなんですが、htmlのままPHPを動かすことはできないってことでしょうか?
メニューをインクルードしたいだけなんですが…
AddHandlerを使う記述もいろいろ試しましたがだめでした
241Name_Not_Found:2009/11/16(月) 21:38:38 ID:???
>>240
urlの書き換えで、xxxx.htmlをxxxx.phpにむけたらいいじゃん
242Name_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/
243240:2009/11/17(火) 09:26:44 ID:???
レスありがとうございました
>>240
拡張子を.htmlのままにしたかったので、AddType application/x-httpd-php .htm .html

代わるような記述を探していました
そちらのスレでも聞いてみます
244Name_Not_Found:2009/11/17(火) 10:02:36 ID:???
>>243
だから、
RewriteRule (.*)¥.html $1.php
みたいにすれば、拡張子はhtmlのままで、phpで動かせるんじゃないかと。
245240:2009/11/17(火) 10:40:13 ID:???
>>244
「mod_rewriteのファイル拡張子を書き換える記述は利用できない」
とのことらしいので、だめっぽいです
ぶっちゃけお名前.comの共用サーバーなんですが…

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

>>245
ぶっちゃけなくてもphpを*.php以外で使う手段は用意されてないでしょう。
247Name_Not_Found:2009/11/17(火) 18:57:54 ID:???
>>246
自称上級者登場w
248240:2009/11/18(水) 09:09:52 ID:???
>>246
諦めがつきました…ありがとうございます
何度もすみませんでした
249Name_Not_Found:2009/11/20(金) 03:51:02 ID:???
.htaccessでIP拒否したいのですが
無料ブログに、他HPからひっぱってきて使いたいのですが
無料ブログではiframeが使えないので
objectでひっぱってくるのは無理ですか?
250Name_Not_Found:2009/11/20(金) 08:31:21 ID:???
>>249
.htaccessとは関係ない内容ですので、お引き取りください。
251Name_Not_Found:2009/11/21(土) 06:35:01 ID:???
このスレって厨房が多いから注意ですよ
252Name_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を表示させたいのです。

お詳しい方、どうか教えてください。
253Name_Not_Found:2009/11/23(月) 23:03:23 ID:???
テンプレを読んでから質問しましょう
254Name_Not_Found:2009/11/24(火) 02:25:20 ID:???
255Name_Not_Found:2009/12/18(金) 20:15:26 ID:???
.htaccessってCGI掲示板のアクセス禁止できないんだね!?
PHPだと問題無いのに!
256Name_Not_Found:2009/12/18(金) 21:21:46 ID:???
>>255
できるよ
cgi-binディレクトリが、Allowoverrideされてないだけでは?
257Name_Not_Found:2009/12/18(金) 21:21:48 ID:???
CGI はスクリプトの総称であり、
CGI を作るためにある言語に PHP や Perl があります

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

こんな事も分からず>>255のような訳の分からないレスをしているのですから、
.htaccess とは全く関係の無い事が問題の原因という可能性も考えましょう
258Name_Not_Found:2009/12/18(金) 22:51:39 ID:???
http://www.big.or.jp/~talk/t-club/soft/mini_r6/index.cgi

ここのタイプのCGI掲示板なんだけど、よくながめて見ます
259Name_Not_Found:2009/12/18(金) 23:30:14 ID:???
Allowoverrideさせかたが解りません
260Name_Not_Found:2009/12/19(土) 11:16:32 ID:???
>>257
PHPはCGIじゃなくてApacheのモジュールとして動作させることが多いです
そしてCGIはCなどのコンパイルが必要な言語でも書けるもので、
スクリプトの総称ではありません

適当な事を言うのはやめましょう
261Name_Not_Found:2009/12/19(土) 12:08:06 ID:???
>>259
apacheのhttpd.confで設定できる
262Name_Not_Found:2009/12/22(火) 13:29:11 ID:???
>>261
自鯖じゃ無くても出来るわけ?
それで拡張子をconfにして放り込むの?
チンプンカンプン
263Name_Not_Found:2009/12/31(木) 12:05:27 ID:n7wCIal7
自鯖でサーバ管理用のURLを用意したいんですが、以下のことってできますかね?

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

やりたいこと
ttp://***.***.***.***:ポート番号のみでアクセスできるようにし
ttp://hogehoge.com:ポート番号ではアクセスできないようにしたい
264Name_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は第三者が所有しているドメイン名です
所有者に無断で例示に使わないよう、ここだけでなく他所でもご注意を
265Name_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/ 等で別のドキュメントルートを
使いたいならネームバーチャルホストの設定もする。
方法はこのスレの管轄外。
266Name_Not_Found:2009/12/31(木) 12:34:01 ID:???
>>264
hogehoge.comはhogehoge.comらしい運用をされてないみたいだから
勝手に使われた方が都合が良いんじゃね?w
267Name_Not_Found:2009/12/31(木) 13:13:55 ID:???
>>264
ドメイン名、大変失礼しました。以後気をつけます。
>>265
アドバイスに感謝です。rootはもっているので、IPベースで異なるポートの設定を
試してみようと思います。ありがとうございました。
268シベリアよりのお手紙:2010/01/07(木) 18:43:05 ID:qX8+izDr
269Name_Not_Found:2010/01/11(月) 22:53:17 ID:wO4DB4vn
適切なスレが見つからなかったので、こちらで質問させて下さい。

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

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

よろしくお願い致します。
270Name_Not_Found:2010/01/11(月) 22:57:52 ID:???
>>269
ドコモは、新しいブラウザーでは、リファラを吐く
auとSBは、かなりの機種がリファラを吐く
それらに限定すればおk
271Name_Not_Found:2010/01/12(火) 00:02:32 ID:VE0T1oOF
現行機種限定ではきついです・・

ありがとうございました。
272Name_Not_Found:2010/01/16(土) 13:43:21 ID:3X6l2P4o
basic認証においてIDとパスワードを盗聴された場合にそなえたいのですが
どのようなガードをしておけばいいでしょうか?
273Name_Not_Found:2010/01/16(土) 15:28:29 ID:???
>>272
basic認証をやめる

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

basic認証なんて子供の玩具みたいなものですから、
もしお金の絡むビジネスシーンで使っているのでしたら、
早急に変更を検討された方が個人的には良いと思います
274Name_Not_Found:2010/01/16(土) 16:51:54 ID:???
>>272
IPアドレスで制限する
不特定多数が対象なら厳しいけど
275Name_Not_Found:2010/01/16(土) 18:45:40 ID:???
basic認証の盗聴って具体的にどういうふうにやられるの?
276Name_Not_Found:2010/01/16(土) 18:49:26 ID:???
そういう事は公の場で聞かない教えないヒントであっても与えない
素人クラッカーの卵が情報を見て実際に不正アクセス等したら誰が責任を取るのかと
277Name_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>
278Name_Not_Found:2010/01/17(日) 12:03:40 ID:???
人生が間違ってる
279Name_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)
280277:2010/01/18(月) 17:33:26 ID:???
>>279
ありがとうございます
さくらサーバなのでそちらを参考に記入しています
順序を入れ替えてみましたが出来ないんです・・・
他の記述が影響しているんでしょうか
もう少し調べてみます
281Name_Not_Found:2010/01/27(水) 10:52:35 ID:???
img srcで実際ない画像を指定している場合、not_found.jpg等
固定で用意している画像を出力する設定を.htaccess等で行う
ことは可能でしょうか。

もしできる場合、ご教示いただけますと助かります。
よろしくお願いします。
282Name_Not_Found:2010/01/27(水) 10:57:39 ID:???
>>281
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*¥.jpg$ 画像へのURL
とかじゃないかと...
適当だけどね
283Name_Not_Found:2010/01/27(水) 21:11:17 ID:???
あらかじめ特定のクッキーを相手に食べさせている前提で、
その特定のクッキーを食べたPCからのアクセスは
指定の場所へ飛ばすということはできますか?
284Name_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>
285Name_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/
両方試しましたが、うまくいきませんでした。
何か方法はありませんか?
286Name_Not_Found:2010/02/13(土) 11:35:30 ID:???
レンタルサーバの@Pageって.htaccessを編集できない?
287Name_Not_Found:2010/02/13(土) 13:54:47 ID:???
>>286
スレ違い
@Pageを使っているような人しか分からない

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

レンタル鯖
http://pc11.2ch.net/hosting/
288Name_Not_Found:2010/02/15(月) 09:01:27 ID:BMb/mUm5
普通にブラウザでアクセスされた場合と<img src=〜でアクセスされた場合で
振り分け可能でしょうか?
289Name_Not_Found:2010/02/15(月) 11:10:21 ID:???
>>288
??
<img src=〜
は、Webブラウザーが解釈・実行しているわけだが...
290Name_Not_Found:2010/02/16(火) 19:52:39 ID:???
file/ ディレクトリ内のすべてのファイル(.txt や.zip や 拡張子なしのファイルなどなど)をブラウザで表示させることなく
ダウンロードさせたいのですがどのように記述すればよろしいでしょうか?
291Name_Not_Found:2010/02/20(土) 18:05:09 ID:???
よくわからんが俺ならバッチファイルでftp
292Name_Not_Found:2010/02/21(日) 08:05:05 ID:???
>>290
file/.htaccessへ
ForceType application/octet-stream
とか。
293Name_Not_Found:2010/02/24(水) 18:39:30 ID:???
>>292
遅くなりました。ありがとうごさいますー
294Name_Not_Found:2010/02/28(日) 23:34:19 ID:???
ほとほと困り果ててまして、間違いをご教授頂けるとありがたいです。
.htaccess許可サーバ使用で、単純に特定ホストだけ拒否したいんですが、
なぜか設定後に接続出来ているみたいなんです。
一体どこを間違ってるやら。試しに自IPでやった時は拒否できたんですが。

order allow,deny
allow from all
deny from souka.saitama.ocn.ne.jp
295Name_Not_Found:2010/02/28(日) 23:56:18 ID:???
order allow,deny
allow from all
deny from .souka.saitama.ocn.ne.jp
296Name_Not_Found:2010/03/01(月) 00:12:38 ID:???
>>295
ありがとうございます。まさか.一個とはスレ汚し失礼しました。
あと、重ね重ね初歩で申し訳ないと思いつつ、
もう一つだけお願い出来れば幸いなんですが。

例えば上記で弾きたいのが
a(任意の四桁数字)-aaaa(任意の三桁数字)sample.sample.aaa.ne.jpって場合でも、
それでいけるんでしょうか。或いは数字部分の指定が必要でしょうか。
297Name_Not_Found:2010/03/16(火) 19:36:31 ID:???
できるかのかどうか教えてください。

htaccessでコピペやドラッグ&ドロップの禁止とかかけられますか?
298Name_Not_Found:2010/03/16(火) 20:42:09 ID:???
>>297
できるわけねーだろww
299Name_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になります。なぜでしょうか?
300Name_Not_Found:2010/03/24(水) 23:27:05 ID:???
>>299
?がないからじゃね?
301Name_Not_Found:2010/03/24(水) 23:29:18 ID:???
>>299
ありがとうございます。
http://example.com/dev/register/?location=xxxxx
のように、?以下を取り出して$1に入れたいのですが、無理なのでしょうか?
302Name_Not_Found:2010/03/24(水) 23:36:16 ID:???
>>301
だから、
http://example.com/dev/register.php$1
ってやってるからだろ
303Name_Not_Found:2010/03/25(木) 15:05:53 ID:???
?以下を取り出すにはRewriteCondでQUERY_STRINGとマッチさせて%1などに入れる。
304Name_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]
305Name_Not_Found:2010/03/26(金) 02:31:43 ID:???
ひとつめの[L]いらないんじゃないかな
306304:2010/03/26(金) 04:14:52 ID:???
ヽ(^◇^*)/

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

感謝です! ハマりまくって18時間です。これで寝れます
ペコm(_ _;m)三(m;_ _)mペコ 
本当にありがとうございます!
307305: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が実行された
時のみになる…はず。チェーン本格的に使ったことが
ないので、実際こうなるかわからんけど。
308304:2010/03/26(金) 10:21:37 ID:???
おはようございます。
[C]を使っても無事動きました!
[C]を使うほうが処理がまとまってイイですね。
重ね重ね、ありがとうございます。

眠い......o(~o~;) 
mod_rewrite の和訳本、誰か出して欲しいなー
http://www.amazon.co.jp/exec/obidos/ASIN/1590595610/
309Name_Not_Found:2010/03/26(金) 14:06:55 ID:???
ドキュメントの和訳はあった方がよさそうだが、
本を出すまでもないと思う。
310Name_Not_Found:2010/03/28(日) 16:03:36 ID:???
携帯サイトを運営しているのですが
public_html内の複数のサイトで、そのサイトの数だけ
htaccessを入れてIP制限しているのですが
IPアドレスが変更になる度に全て置き換えるのは手間なので
IPアドレスだけ別ファイルで管理してphpのincludeみたいな感じでする方法ありますか?
311Name_Not_Found:2010/03/28(日) 17:30:08 ID:???
>>310
ありません

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

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

example.*に好きなサブドメインをつけて説明するのは可。
例: hoge.example.com
312Name_Not_Found:2010/03/28(日) 18:17:45 ID:???
>>310
.htaccessでIncludeディレクティブは使えないけど、
.htaccessファイルをシンボリックリンクなどを使って
ファイルシステム上でリンクしてしまうのはあり。
313Name_Not_Found:2010/03/29(月) 01:04:17 ID:???
>>311
>>312
僕には難しそうなのでhost名で許可して様子見てみます
ありがとうございました。
314Name_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」コマンド利用が
引っかかると駄目?でしょうけど。因みにサクラのライトです。
315Name_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で作るとかもあり。
316Name_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>

317316:2010/03/31(水) 21:00:18 ID:???
はじめまして。質問させて下さい。
すみません、316です。
書き込みの途中で送信してしまいました。
318Name_Not_Found:2010/03/31(水) 21:11:17 ID:???
>>316
RewriteRuleの前項には、https://なんてはいらん
319305:2010/03/31(水) 22:05:10 ID:???
>>318
> RewriteRuleの前項には、https://なんてはいらん

ですね。
320Name_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アドレス
を使うのが一番良いのも分かってます。(結局、コストと完璧さのせめぎ合いな訳で。)
321Name_Not_Found:2010/04/01(木) 15:11:53 ID:???
>>320
ディレクトリを作るならそのディレクトリにも.htaccessを置いて、
IPアドレスでもUser-Agentでも使って携帯電話でのアクセスを
できないようにして、ついでにBasic認証でもかけておくかな?
.htaccessスレ的な答えとしてw
322Name_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アドレスの
偽装だけで簡単にクラック出来てしまうので。
323Name_Not_Found:2010/04/01(木) 17:55:53 ID:???
.htpasswdことAuthUserFileはシンボリックリンクなんかしなくても
同じファイルをどこでも使用できる。
Require valid-userなんてどこかの型にはまった使い方をせず
AuthGroupFileと組み合わせてRequire group pcgroupみたいな使い方をすれば
ユーザー名とパスワードのファイルは1つ用意するだけでいろいろと分けて使える。
.htaccessのコメントを表す#の前には空白文字しか許されない。
MACアドレスが偽装されることを考慮するならMACアドレスを
認証に使うこと自体がもう駄目であるような気がする。
324316: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>

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

ググれば、このくらいのことはすぐ出てくるだろう
326m:2010/04/01(木) 23:18:44 ID:???
[R]のときとそうでないときとか,
右項と左項とかで参照するパスが変わるのが
直感的でない,というのはありますね…。
327Name_Not_Found:2010/04/02(金) 00:19:50 ID:???
>>324
httpへ戻すRuleのCondが!^80$じゃないと駄目っしょ?
328Name_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が充実して
ないのでは?と思ってる次第で、まあそれなり程度のガードくらいで
考えてます。
329Name_Not_Found:2010/04/06(火) 09:52:31 ID:???
パスワードで保護された領域下で
特定のディレクトリのみ直リンクできるようにするにはどうすればよいのでしょうか?

test
├ .htaccess
├ .htpasswd
├ test.html
└ pngフォルダ →このフォルダだけ直リンクOKにしたいのです
  ├ 5963.png
  └ 4649.png
330Name_Not_Found:2010/04/06(火) 13:29:43 ID:???
329質問は認証かからない位置に置いて対応することにしました。
331Name_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ファイルが特定の条件でダウンロードになるのか頭を悩ませています。
ご助言がありましたらお願いいたします。
332331:2010/04/08(木) 03:22:43 ID:???
すみません、example.comとすべきところを寝ぼけてsampleとしてしまいました。
ご用捨ください。
333Name_Not_Found:2010/04/08(木) 22:56:15 ID:???
>>328
user:pass のファイルは共有しても分割してもユーザー名とパスワードが一致したときに扉は開きます。
分割する利点としてはファイルを直接持っていかれたときの被害の大きさかな?
<Files を使ってパスワードのファイルは持っていかれないようにしましょう。
名前を.htpasswdにするのはデフォルトで.htaccessへアクセスできないようにするために
ファイル名が .ht* のパターンに一致するものすべてがアクセス禁止にされているからです。
パスワードを探るツールなんて現場に合わせて即興するものです。
MACアドレスをどう送るかは知らないけど、最初の3バイトはメーカーごとの
割り当てを見れば範囲は絞れるから30秒で焼き切れる南京錠を
追加した程度の安心感しか得られないような気がして心配ですw
334Name_Not_Found:2010/04/08(木) 22:59:56 ID:???
>>331
とりあえずブラウザのキャッシュを削除して様子を見てみましょう。
他にサーバー側の設定でなぜかディレクトリを限定してmimetypeが
ダウンロードになるようなものに設定されているかもしれないので
.htaccessで上書きしてみましょう。
335331:2010/04/10(土) 01:16:34 ID:???
>>334
ありがとうございます。
助言通りにしばらくしてやってみたら、たしかに403になりました。
まさかキャッシュだったとはorz
お蔭様ですっきりしました。もっと精進します。
336Name_Not_Found:2010/04/10(土) 16:14:07 ID:???
>>333
情報ドモです。

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

ID&passwordは既に利用してるから、よりマシになればオケ程度のレベルです。
337Name_Not_Found:2010/04/17(土) 19:28:35 ID:???
>>336
MACアドレスって、偽装もなにも直近のルータの奴が見えるだけだと
思ってたんだけど、違うんだっけ?
もしかして、アクセス元の方で特別なアプリを動かすって話?
338Name_Not_Found:2010/04/17(土) 20:19:48 ID:???
クライアントのNICに割り振られているMACを抽出して
スクリプトに検知させて挙動のトリガーに使うってことでしょ
339Name_Not_Found:2010/04/18(日) 00:03:27 ID:???
全体のファイルについて
Order allow,deny
でアクセス制限をすると同時に
Filesで特定のファイルだけ同じようにアクセス制限する場合
どちらが優先になるという規則はあるんでしょうか?
340Name_Not_Found:2010/04/18(日) 16:48:21 ID:???
341Name_Not_Found:2010/04/18(日) 22:18:48 ID:???
>>339
ある。
.htaccessの地の部分を読んだあと<Filesで特定のファイル名に限定した部分を読む。
342Name_Not_Found:2010/04/18(日) 22:40:10 ID:???
>>341
ご回答ありがとうございます。
343339: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等を入れています。

見れなくなってしまう原因がわからず困っておりまして
どなたかわかる方いますでしょうか?
344Name_Not_Found:2010/04/19(月) 22:32:29 ID:???
×<Files>
○</Files>
345339:2010/04/19(月) 22:44:50 ID:???
>>344
ありがとうございます。エラー出なくなりました。
ですが、Filesで指定したファイルに直接アクセスしても
普通に見れてしまいます・・・
346Name_Not_Found:2010/04/19(月) 23:13:40 ID:???
×見れてしまう
○見られてしまう
○見えてしまう
347Name_Not_Found:2010/04/21(水) 18:26:33 ID:???
order deny,allow
deny from .tw
と記述しているのですが、
忍アクセス解析を見ると海外(.tw)からのアクセスがあります。
試しにdeny from .jpと記述すると自分が弾かれるので
アップロードの方法が間違っている事はないと思うのですが、
助言をよろしくお願いいたします。
348Name_Not_Found:2010/04/21(水) 19:25:22 ID:???
>>347の先頭2行の記述以外には全く記述間違いがない
という前提で答えると、
twなど、トップレベルドメインだけで該当国からのアクセスを弾く事は不可能です

名前解決され必ずtwのドメインを含むHost名でアクセスがある
という保証がインターネットには無いため、
該当国からのアクセスをdenyしたい場合はNetwork address rangeで
deny設定する必要があります
349Name_Not_Found:2010/04/21(水) 20:12:39 ID:???
>>348
検討違いだったら申し訳ないのですが、
ホストが***.adsl.dynamic.seed.net.twという方からアクセスがある状態です。
350Name_Not_Found:2010/04/21(水) 20:37:42 ID:???
twと一見名前解決されているように見えて、
他セッションで名前解決されていなければすり抜ける

それと>>347の先頭2行の記述以外には全く記述間違いがない
という前提で>>348を答えている事はご理解を
351Name_Not_Found:2010/04/22(木) 00:14:57 ID:???
アクセス解析はAllow, Denyディレクティブにドメインを設定したときのような
逆引きで得られたホスト名から再びIPアドレスを引いてそれが元のIPアドレスと
一致するかどうかの確認をしてないことが多いから間違ったホスト名が列挙される。
そこから得られたドメインからのアクセスを拒否しても間違っているからすり抜けられる。
352Name_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

と書いたらエラーになってしまいました
353Name_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
354Name_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)
明示的に全てのアクセスを拒否する。
355353:2010/04/22(木) 14:25:59 ID:???
>>354
詳しくありがとうございます。
すっきりしました!

deny fromとallow fromの各行を書く順番って
関係ないんですね。
勘違いしてました。恥ずかしい・・・
356Name_Not_Found:2010/04/22(木) 14:40:40 ID:???
>>354
上段、or条件になって>>352の望む動作にならないような
and条件はmod_rewrite使えば簡単だけど使える鯖が限られるしな
357Name_Not_Found:2010/04/22(木) 16:22:46 ID:???
>>356
>>354はアレだったw

>>352
SetEnvIfとAllowとDenyだけでandも作り出せたはずだけど、
作ったのはもう4〜5年前だから思い出せない。
358Name_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の行が続いて見た感じ気持悪いけど
359Name_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つ以上の条件に拡張していけない状態になってて
ボツにしたから忘れていたと。
360Name_Not_Found:2010/04/23(金) 00:01:46 ID:???
allow_uaでhogehoge以外の全てのUA許可
allow_ua2で言語enを除くhogehogeを許可なので
hogehogeかつenだけが拒否される…はず
動作確認はしてないけど

3つ以上の条件になると面倒臭いだろうな
mod_rewrite万歳
361Name_Not_Found:2010/04/23(金) 22:41:15 ID:???
一応>>358でシンプルにいけるのか。
これ以上andで条件を増やそうとするとやっぱりアレだけどw
362Name_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]

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

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

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

よろしくお願いします。
364Name_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]
365Name_Not_Found:2010/05/22(土) 20:19:47 ID:???
>>364
ありがとうございます!
366Name_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]
367Name_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]
368Name_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にインストールする。
369Name_Not_Found:2010/05/25(火) 11:19:40 ID:???
>>364
/から/wikiみたいに中に入る場合は難しく考えないとループしちゃうんじゃないか?
RedirectMatch 301 ^/$ /wiki
とか。
370Name_Not_Found:2010/05/25(火) 11:23:17 ID:???
>>366
RewriteMapは.htaccessでは使えないし、更新した時もサーバを再起動して
反映させないといけなかった気がしたから、まずはそのあたりから。
371Name_Not_Found:2010/05/25(火) 18:39:43 ID:???
>>367,370
どうもありがとう。
携帯のキャリアはMapじゃないほうが楽かね・・
%{HTTP_USER_AGENT}のサーバ変数がMap使うとやっかいになりそう。
372Name_Not_Found:2010/05/26(水) 18:23:56 ID:???
373Name_Not_Found:2010/05/26(水) 22:51:46 ID:???
374372: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が適用されずに困っているのです
どうかよろしくお願い致します。
375Name_Not_Found:2010/05/27(木) 18:14:58 ID:???
そういうのはリライトして空間をねじ曲げるより
Actionとか使った方が楽なのかもしれない。
376372:2010/05/29(土) 22:42:27 ID:???
>>375
分かりました。別の方向で検討してみることにします。

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

IPがわかればそれに越した事はないのですがorz
378Name_Not_Found:2010/06/01(火) 01:07:07 ID:???
ウザイ宣伝書き込みには必ずURLが含まれるので、禁止ワードにhttpを入れておくと良い
たまにh抜きで書くヤツもいるからttpも入れておくと良いかもしれない
379Name_Not_Found:2010/06/01(火) 02:52:38 ID:kxwMT1kR
たまにYouTubeにリンクとかもしてるんで、URLはNGワードにしたく無いんですよねぇ
htaccessって許可と不許可を同居出来ないのでしょうか?
380Name_Not_Found:2010/06/01(火) 02:57:43 ID:???
テンプレに記されてるサイトくらい熟読してから質問しろカス
381Name_Not_Found:2010/06/01(火) 03:12:03 ID:kxwMT1kR
そんな言い方ってないじゃないですか。
別に私はあなたの友達でもなんでもないんですよ。
失礼だと口のきき方をわきまえたまえよ。
382Name_Not_Found:2010/06/01(火) 05:22:40 ID:???
何言ってんだこの屑は。
友人でもない人に教えを請うているのに礼節もルールも守れないのか。
質問自体くだらなすぎるし死ねばいいと思うよw
383Name_Not_Found:2010/06/01(火) 09:13:10 ID:C578R70+
ID:kxwMT1kR
384Name_Not_Found:2010/06/01(火) 09:45:19 ID:???
吉野家に入って、「俺はハンバーガーが食いたいんだ!」とわめいてるようなもんだな。
385Name_Not_Found:2010/06/01(火) 13:50:28 ID:???
すみません。
似たような質問かもしれないですが、htaccessを使ってあるIPを許可しつつ、あるIPを拒否するって事をするにはどうすれば良いのでしょうか。
テンプレのサイトを見ましたが、そのやり方についての条項がないっぽいので。。。
386Name_Not_Found:2010/06/01(火) 15:08:54 ID:???
掲示板の機能でIPでの書き込み規制くらいできるだろ

書き込みをID制にして個別に許可を与えるとか
387Name_Not_Found:2010/06/01(火) 15:41:24 ID:???
掲示板がIP規制対応していないので、htaccessでなんとかならんですか?
388Name_Not_Found:2010/06/01(火) 15:43:12 ID:???
同じ奴だろこいつw
389Name_Not_Found:2010/06/01(火) 15:49:28 ID:???
そんなことも出来ないカスは死ねばいいと思うよ
390Name_Not_Found:2010/06/01(火) 15:50:00 ID:???
>>387
対応してる掲示板を使え
フリーCGIのでも対応してるのは多いからサーバー借りて導入しろ
391Name_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
392Name_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/に飛ばなくなってしまいました。
どうしたらいいのでしょうか
393Name_Not_Found:2010/06/23(水) 19:48:04 ID:???
>>392
そのRewriteCond 2つはたぶん必要ない。
そして
RewriteCond %{REQUEST_URI} !^/wordpress/
みたいなRewriteCondが必要だと思う。
394Name_Not_Found:2010/06/23(水) 20:17:07 ID:???
あるディレクトリに .htaccess で BASIC 認証かけて、そのサブディレクトリには
認証させないことってできる?
.htacess は上書き可能ってことだけど、「認証しない」って明示的な設定が
見つからないので。
395Name_Not_Found:2010/06/24(木) 02:54:04 ID:???
>>393
ありがとうございました!
396Name_Not_Found:2010/06/24(木) 18:31:16 ID:???
>>394
Satisfy Any としてユーザー認証とホストのアクセス制限の
どちらかを通過すればアクセス可能という状態にはできる。
397Name_Not_Found:2010/06/26(土) 04:49:47 ID:???
>>396
ををを、これは完璧な解決策。ありがとう!
398Name_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用のファイルを
そのまま表示します。
皆さんにとっては初歩的な質問かと思いますが、よろしくお願いします。




399398:2010/06/26(土) 14:40:09 ID:???
PC用のindex.htmlへのアクセスも転送されません
400Name_Not_Found:2010/06/26(土) 17:32:16 ID:???
>>398
基本的な設定は>>367の通り

基本的な動作が確認できたら他のを付け足していくと良い
401Name_Not_Found:2010/06/26(土) 17:55:19 ID:???
すみません
コピペしていろいろ試しましたがやっぱダメです。
ドメインへのアクセスのみ転送されます。
kagoyaなんですがサーバーの設定かなんかですかね?
402398:2010/07/05(月) 01:43:08 ID:???
kagoyaに問い合わせてみた。
↓を試してみてくれといわれてやってみたが
何も変わらなかった。

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

なんか根本的な間違いがあるような気がしてきた。
403Name_Not_Found:2010/07/07(水) 17:23:36 ID:???
リライトは前後のルールからの影響も受けられるから
他のルールが原因で適用したいルールが避けられてるかも。
404Name_Not_Found:2010/07/13(火) 21:30:42 ID:???
405Name_Not_Found:2010/07/13(火) 21:49:05 ID:???
>>404
もうすこしちゃんと書け
406Name_Not_Found:2010/07/13(火) 22:13:49 ID:???
>>405
CGIをhttp://sub.example.com/などサブドメインで運用したいって言ったら
http://example.com/ で CGI が開くように ModRewrite を設定しろと言われました。

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

407Name_Not_Found:2010/07/31(土) 16:09:44 ID:???
一部のIPだけを制限し一部のUA以外を許可する場合はどのように書けばいいのでしょうか
408Name_Not_Found:2010/07/31(土) 21:26:14 ID:???
一部のUA以外を許可する場合……ということは、ああやればいい
409Name_Not_Found:2010/08/05(木) 23:27:13 ID:OpJSOa4S
WordPressで、単一の記事、例えば「http://hogehoge.com/?p=20」へリンクを貼られた際に、
そのURLの末尾に「#blog」を追加したいと思っています。
「?p=」が含まれているURLの末尾に追加する、ということで、
RewriteRule ^?=(.*)\$ /$1#blog [R=301,L]
で大丈夫でしょうか?
どなたか教えて下さい。よろしくお願いします。
410409:2010/08/05(木) 23:27:56 ID:???
RewriteRule ^?p=(.*)\$ /$1#blog [R=301,L]
でした。すみません。
411Name_Not_Found:2010/08/05(木) 23:37:57 ID:???
deny from abc.def.example.comと
deny from 10.123.45.67というNSLOOKUPをするとそれぞれ対応するドメインとIPアドレスが出る対を規制したのですが、
(つまり、abc.def.example.com = 67.45.123.10.in-addr.arpa という状況)
それでも規制が効かない状況です。
CGI上の制限では規制できるのですが、なるべくトップページも閲覧してほしくないので、
上記のもので規制がかからない場合の原因の候補を教えていただければ幸いです。
412Name_Not_Found:2010/08/13(金) 17:56:38 ID:???
>>409
#〜の部分はHTTPプロトコルとは関係なかったりもするので
付け足してブラウザが正常に動作するかは知らない。

>>411
まず適当なゴミの文字とか間違った設定を書いてみて
500 Internal Server Errorになるかどうかで
.htaccess自体が効いてるかどうか調べるとか。
413Name_Not_Found:2010/08/23(月) 10:34:34 ID:kLhxvm9X
独自ドメインでサブドメインを使いたくて、一番上のディレクトリに
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^sub\.domain\.net$
RewriteCond %{REQUEST_URI} !^/sub
RewriteRule (.*) /sub/$1

と書いていて、sub ディレクトリ内にさらに
RewriteEngine On
RewriteCond %{HTTP_HOST} !sub\.domain\.net$
RewriteRule (.*) http://sub.domain.net/$1 [R=301]

と書いています。
これで、www.domain.net/sub/aaa.html にアクセスすると、
sub.domain.net/aaa.html となります。自分自身はこの動作をさせたいので動作上はこれでいいのですが、
なぜ sub.domain.net/sub/aaa.html にならないのかが不思議で、腑に落ちない感じがします。

正常な動作でしょうか?
414Name_Not_Found:2010/08/23(月) 12:44:04 ID:???
wwwではその2つの.htaccessを読んでるけど、subはsub/の中の1つだけしか読んでないからとか。
415Name_Not_Found:2010/08/23(月) 13:00:41 ID:???
結局問題ないんですかね?
2つが読み込まれるタイミングによって・・・、とかはないですよね?
416Name_Not_Found:2010/08/23(月) 16:21:57 ID:???
ディレクトリを掘り下げていく途中で.htaccessがあれば
その中に書かれた設定を上書きしていくという動作だから
タイミングではなく必ず上のディレクトリの設定が先。
417Name_Not_Found:2010/08/23(月) 16:23:17 ID:???
ということは、いま意図通りに動いていればこのままでいいということですかね。
418Name_Not_Found:2010/08/27(金) 14:23:44 ID:???
動いていればいいんじゃない?
としか答えられないほど最近は.htaccessとかApacheとかを触ってなくてごめんねw
419417:2010/08/27(金) 17:35:52 ID:???
>>418
今のところ問題ないみたいだからこのままにしとくよ。
420Name_Not_Found:2010/08/30(月) 14:20:35 ID:???
考えているうちによくわからなくなったのでアドバイスをお願いします。
index.htmlと同じ階層にmenu.htmlがあり、そこからメインコンテンツや
日記へのリンクがあるサイトです。
特定のIPだけ日記cgiを閲覧させたくなくて、できれば
アク禁されてると気づかれることなく日記へのリンクだけを抜いた
ダミーページに飛ばしたいです。日記以外のコンテンツは見られてもかまいません。
相手は日記のURLに直リンしています。
また、public_html以下にac.jpやed.jpなどを拒否する
別の.htaccessファイルを置いています。

/public_html/cgi-bin/に特定IPを/public_html/ダミーmenu.htmlに転送する
設定にしたとるすると、普通にindex.htmlから入ってきたときに日記にリンクがある
menuになってしまいますよね。そこから日記をクリックしようとして
ダミーmenu.htmlに飛ばされて相手はおかしいと気づいてしまいそうで…
日記直リンから来てもindex.htmlから来ても自然にダミーmenu.htmlに
飛ばすにはどういう設定にすればいいでしょうか。
421Name_Not_Found:2010/08/30(月) 16:12:20 ID:???
>>420
こんなんでだめか?
試してないので上手く動くかわからんけど

RewriteCond %{REMOTE_ADDR} ^aaa¥.bbb¥.ccc¥.ddd$
RewriteRule ^(menu¥.html) /usomenu.html [L]
422Name_Not_Found:2010/08/30(月) 18:52:36 ID:???
>>421
試せよw
423Name_Not_Found:2010/08/30(月) 18:59:28 ID:???
>>422
断る
424Name_Not_Found:2010/09/14(火) 10:25:33 ID:???
あるフォルダ中の条件1に当てはまるファイルはアクセス禁止、
条件2に当てはまるファイルはBASIC認証という風には出来るのでしょうか?
425Name_Not_Found:2010/09/16(木) 13:49:20 ID:???
その条件がクライアント側の条件でないなら
条件ごとにファイル名に特徴を付ければいける。

ただ、ブラウザ側はフォルダごとで認証をするので、
ファイルごとに違うユーザー名やパスワードが必要な状態にすると
ファイルを見るたびに認証をしないといけない状態になるから、
認証が必要なファイルは1つのフォルダにまとめてしまうのがおすすめ。
426Name_Not_Found:2010/10/05(火) 16:41:18 ID:???
質問です。
.htaccessを設置しようとしているサーバーの説明で、
「LimitをAuthConfigのみを許可しているのでその設定で」とありました。
LimitをAuthConfigのみにする、とは具体的にどういう記述をすればいいのでしょうか?
ぐぐってもよく分からず理解できなかったので、どうかよろしくお願い致します。
427Name_Not_Found:2010/10/07(木) 15:18:19 ID:???
AllowOverrideがAuthConfigのみ設定されているってことじゃないかな?
ttp://httpd.apache.org/docs/2.2/mod/core.html#allowoverride
だから普通にBASIC認証の設定が出来ますよという感じ。
Apacheのドキュメントの上書きのところにAuthConfigと書かれている
ディレクティブが使えますよと。
428Name_Not_Found:2010/10/09(土) 18:33:03 ID:???

「さくらサーバ」faqで、(http://faq.sakura.ad.jp/faq/1032/app/servlet/qadoc?000758)

Q 初期ドメインと独自ドメインで、同じホームページが表示されてしまいます。

A “お客さまで追加された独自ドメインにつきましては、
   お客さまにて詳細な設定を行わない限り初期ドメインと同じフォルダを参照します。”

とあり、その“詳細な設定”がわからず苦しんでおります。

非表示にしたいサイト名例:http://hikou-kainisi-tais-aito.sakura.ne.jp/
       ホスト名例:【hikou-kainisi-tais-aito.sakura.ne.jp/】の場合、
.htaccessファイルにはどんな記述をすればいいでしょうか?
429Name_Not_Found:2010/10/11(月) 08:15:25 ID:???
なぜそのfaqページをちゃんと読まないの?
430Name_Not_Found:2010/10/17(日) 05:08:47 ID:???
>>427
>>426です、ありがとうございます!
なんとかなりそうです、助かりました
431Name_Not_Found:2010/10/19(火) 02:01:30 ID:3k6KFZRr
中国と韓国がなかったらネットの世界はもっと平和で美しかっただろうにと思うわ
432Name_Not_Found:2010/10/19(火) 11:19:33 ID:Z/zSJCIy
すいません。。教えて下さい。。

携帯サイトの振分ってありますが、エロブログとかを
パソコン、携帯それぞれで見た時、どちらもURLが
変ってないサイトがたくさんあるんです。つまり振分
というより http://○○○.blog.com/ ってアドレス
は同じなのに、PCサイトと携帯サイトがそれぞれ
ちゃんと表示される・・
※携帯のサイトもURLをちゃんと確認しました。

これってどうやってんのかな。。htaccessかと思い
いろいろ調べてたら、htaccessでもできるけど、
そもそもFC2ブログなんかはhtaccessをさわれない
ようなので、htaccessじゃなさそう。

スレちがいだったらすいません。。
どなとか教えて下さい。。
433Name_Not_Found:2010/10/19(火) 15:25:21 ID:???
fc2の仕様です
434432:2010/10/19(火) 20:06:30 ID:Z/zSJCIy
すいませんです。fc2は仕様ですね。。
携帯用テンプレートに飛んでいるだけでした。
んで、htaccessでためしてるんですが、


home/www/deai/m/フォルダにドメイン指定してあるんですが、
※(h ttp://www.payapaya.com をたたくと、/deai/m/内のindex.htmlを見る)

.htaccessを/m/と並列の/deai/下に設置してます。


h ttp://mokemoke.sakura.ne.jp/deai/ にアクセスすると
.htaccessが発動するのですが、
h ttp://www.payapaya.com/ をたたくと、同じフォルダを
見にいくのに、.htaccessが発動しない・・・

なんでなのか分からなくて頭が割れそうです。。
すいませんどなたか教えて下さい。。




435432:2010/10/19(火) 20:08:50 ID:Z/zSJCIy

↑ごめん/m/は忘れて下さい。

てかグダグダですいません。

つまり独自ドメインでアクセスしたら.htaccessが発動
しないんです・・助けて下さい。

436Name_Not_Found:2010/10/21(木) 16:40:44 ID:E09yUR9H
そういうのはfc2に問い合わせないとどうにもならんだろ。

htaccessが利く対象や範囲も、所詮はサーバーの大元の管理者次第なのだから。
437Name_Not_Found:2010/10/23(土) 13:18:51 ID:???
>>432
他スレでも、質問する時はまずテンプレ>>1-3に目を通してから質問しましょう

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
438Name_Not_Found:2010/10/24(日) 01:22:28 ID:???
どっか別のコミュニティにも>>437のようなことしか言わない奴とかいるよね?w
439Name_Not_Found:2010/10/27(水) 00:50:38 ID:LnFMoFxE
リライトで、送られてくる
%E9%A3%9B%E8%A1%8C%E6%A9%9Fという文字列を、
xE9xA3x9BxE8xA1x8CxE6xA9x9Fのように返還したいのですが
どうやってもできませんでした。

知ってる方教えてください。

RewriteRule ^(.*)%26(.*)$ $1x$2 [N]
RewriteRule ^(.*)%(.*)$ $1x$2 [N]
RewriteRule ^(.*)¥%(.*)$ $1x$2 [N]
全部ダメでした。
440Name_Not_Found:2010/10/27(水) 09:51:50 ID:???
疲れたので諦めました
441Name_Not_Found:2010/10/28(木) 23:05:25 ID:???
リライト内部では%E9%A3%9B%E8%A1%8C%E6%A9%9Fが
もう飛行機に置き換えられちゃってるんじゃなかったかな?
忘れた。
442Name_Not_Found:2010/10/30(土) 19:57:03 ID:???
/home/aaa/www/bbb/ccc/
に置いたのに
/home/aaa/www/bbb/index.html
を開くとパス聞かれるんだけど…
〜/ccc/を含む下層にしか効かないはずですよね

聞かれなくて済む方法教えてください
443Name_Not_Found:2010/10/30(土) 21:59:43 ID:???
テンプレも読まずに質問する人には答えないだけです>>438
444Name_Not_Found:2010/10/31(日) 20:51:10 ID:???
>>442
とりあえずcccの中の.htaccessをリネームして
bbb/index.htmlを開いてみてまだ認証が効いてるようなら
別のところで認証に関する設定が施されてるとか。
445Name_Not_Found:2010/10/31(日) 21:35:29 ID:mQRE5TB3
>>441
htaccessで飛行機をまた%E9%A3%9B%E8%A1%8C%E6%A9%9Fにできませんか
ファイル名を作るのに、飛行機ではまずいかなと。
446442:2010/11/01(月) 11:34:20 ID:???
>>444
レスありがとうございます
リネームしてやってみたけど結果は同じでした

なので、〜/ddd/を作って改めて最初からやってみたところ
今度はうまくいった様子です
〜/ccc/だけは何度やっても何やっても駄目なのに……
さくらネットのファイルマネージャーを使ってやっているから
文法ミスやパーミッション、転送形式違いはないはずですが
447Name_Not_Found:2010/11/01(月) 12:14:14 ID:???
>>446
/ccc/
が、サーバー側で設定されている特別な名前なんじゃね?
manual
とか
server-info
がそうであるように。。
448Name_Not_Found:2010/11/01(月) 15:58:16 ID:???
>>447
/example/ とか例示用の名前を使うべきところですか?w
449442:2010/11/01(月) 17:58:00 ID:???
>>447
/ss/ という特別じゃなさそうな名前なんですが…
自力で設置してもマネージャ使っても同じ症状だったんで
自分の認識が間違っているのかと思ってここに質問した次第です

何故だったのか理由はわからないけど
再度同じことが起こらないよう祈るばかりです
450Name_Not_Found:2010/11/02(火) 19:18:41 ID:???
あるサイトのリンクからの来訪を制限したいのですが、
Limitディレクトリだけ許可されているサーバーなのです

<Files ~ "^\.(htaccess)$">
deny from all
</Files>
Options -Indexes
order deny,allow
deny from http://example.jp/

という記述を、
<Limit GET POST></Limit>で挟んだらいいというわけではないのでしょうか?
何回やっても500エラーでできません。

SetEnvIf Referer "^http://example.jp/" shutout

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

でもだめでした…どうすればいいのでしょうか。
451Name_Not_Found:2010/11/02(火) 22:59:07 ID:???
>>449
/bbb/.htaccessにSatisfy Anyと書いて認証が外れるなら
サーバ側で既に認証がかけられてることになるかも。

>>450
Limitのディレクティブだけが上書きを許可されているなら
OrderとAllowとDenyくらいしか使えない。
452Name_Not_Found:2010/11/03(水) 18:00:27 ID:???
>>451
>>450です。
アドバイスありがとうございました。
おかげさまで設置できました!
453449:2010/11/03(水) 18:37:04 ID:???
>>451
〜/bbb/内には.htaccessがありません
〜/bbb/ddd/作成以降、〜/bbb/eee/も作って同じくパスをかけてみたけれど、そちらもOK
/bbb/index.htmlも同じものをそのまま使用しているから、/ss/のみがうまくいかない感じです
嫌われる名前なのだか、何かやらかして嫌われちゃったか……
とりあえず今回は解決したので、あまり深く考えない事にします
ご協力くださったみなさま、ありがとうございました
454Name_Not_Found:2010/11/03(水) 19:35:30 ID:???
深く考えるなら<Files index.html>〜</Files>で囲んで
そのファイルだけ認証を必要とするように出来たような出来なかったような。
455Name_Not_Found:2010/11/10(水) 16:49:41 ID:???
質問させてください
拡張子phpのページでもSSIを使えるようにするにはどうすればよいのでしょうか?

http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/ssi.html#ssi2

こちらにあるhtmlをphpに変えてみてもinternal server errorになってしまいました
456Name_Not_Found:2010/11/10(水) 23:55:40 ID:???
test
457Name_Not_Found:2010/11/27(土) 18:45:23 ID:???
.htaccessを適用をディレクトリ毎に変えたいのですができますか?

ディレクトリ構成
root(.htaccessが入っている)
┣hoge1┳piyo
┃    ┗huga
┣hoge2┳piyo
┃    ┗huga
┗hoge3┳piyo
     ┗huga

piyoとhugaに別々の設定をしたいのですがどうすれば良いでしょうか…
hogeフォルダが大量にあり、またディレクトリの構成も変えられません/(^o^)\
458Name_Not_Found:2010/11/28(日) 10:51:06 ID:???
ディレクトリが大量にあるからと.htaccessを各ディレクトリに置こうとしないのは甘えw
/root/hoge*/.htaccessに両方で有効な基本となる設定を書いて
/root/hoge*/{piyo,huga}/.htaccessへそれを上書きする小さい.htaccessを置けばいいかも?
459Name_Not_Found:2010/12/01(水) 17:16:36 ID:???
>>458
レスありがとうございます!
hogeディレクトリは日々増えていくんで
各ディレクトリに.htaccessを置くのは途方も無い作業になるんですorz

rootにある.htaccessにpiyoにはこの設定、hugaにはこの設定、って分けて書けたら良いんですが…
460Name_Not_Found:2010/12/01(水) 23:29:51 ID:???
そこで楽をしたいというなら始めからこうすべきじゃない?
┣piyo┳hoge1
┃   ┣hoge2
┃   ┗hoge3
┣huga┳hoge1
      ┣hoge2
      ┗hoge3
461Name_Not_Found:2010/12/14(火) 04:25:51 ID:???
mod_write についてお詳しいかた教えてください。

[ ディレクトリ構成 ]
┣test┳sample1.html
┃   ┗sample2.html

[ /test/.htaccess ]
---
RewriteEngine On

RewriteRule ^.*/[0-9]{$ sample1.html [L]
RewriteRule .* sample2.html [L]
---

こちらの条件で、以下のような動作を期待しています。

1) http://domain/test/a/0 → sample11html
2) http://domain/test/a → sample2.html

ですが、2)にアクセスすると 404エラーになってしまいます。
2)行を削除すると問題なくsample11htmlが表示されます。

なにか原因として考えられることを
ご存じのかたがいらっしゃいましたら。
ぜひ教えてください。
462Name_Not_Found:2010/12/19(日) 08:25:44 ID:???
トップディレクトリに.htaccessしかない状態で

example.com/ にアクセスがあった時に example.com/m/c/index.php にアクセスさせるには
どうしたらいいでしょうか?



RewriteEngine On

RewriteRule ^/$ /m/c/index.php

これだとできませんでした。。
463Name_Not_Found:2010/12/19(日) 08:51:30 ID:???
>>462
RewriteLogを設定して、URL書き換えのログを吐き出すようにして、動きを調べてみれば?
464Name_Not_Found:2010/12/19(日) 09:03:08 ID:???
やってみます><
465Name_Not_Found:2010/12/23(木) 15:37:27 ID:???
すみません。宜しくお願いします。

地域を特定して、アクセス禁止したいのですが、

p****-ipngn*****kobeminato.hyogo.example.com (***は変動します。)
このホストのkoubeminato までを規制対象にすることは出来ますか?

Order allow,deny
allow from all
deny from kobeminato.hyogo.example.com

書いてみたんですが、kobeminatoの先頭に 「.」ドットは要るのでしょうか?
466Name_Not_Found:2011/01/12(水) 01:34:03 ID:b5yaor2T
以下のアドレスを
http://example.com/category/info/page/2/ (数値のみ変動します)
以下のようにしたいのですが、
http://example.com/info/page/2/ (「category」を削ってシンプルにしたい)

どのように記述すればいいでしょうか。
467Name_Not_Found:2011/01/17(月) 02:10:00 ID:???
RewriteRule ^category/(.*) $1

とか? 
468Name_Not_Found:2011/01/17(月) 19:31:09 ID:???
勘違いごめんなさい

RewriteRule ^info/(.*) category/info/$1
469Name_Not_Found:2011/01/17(月) 23:44:27 ID:ndTLdZPS
>>468
ありがとうございます。これでいけました
470Name_Not_Found:2011/01/26(水) 16:14:03 ID:9tifdEfM
OCNでhtmlをphpに偽装する方法を教えてください。

以前は、

AddType application/x-httpd-php .html

でよかったのですが、気づいたらこれでは出来なくなっていました。

OCN側で行ったPHPのバージョン5への変更が関係しているかと思うのですが、
何か情報は無いでしょうか?
471Name_Not_Found:2011/01/27(木) 07:36:25 ID:???
OCNに聞け
472Name_Not_Found:2011/01/27(木) 07:43:43 ID:???
AddHandler php5-script .html
だっけ?
473470:2011/01/27(木) 09:44:39 ID:???
>>472
追加して見ましたがダメでした。。。
474Name_Not_Found:2011/01/27(木) 11:31:24 ID:???
>>473
URL書き換えて、
RewriteRule (.*).html$ $1.php [L]
みたいなんはダメ?
475Name_Not_Found:2011/02/14(月) 04:05:19 ID:???
htpasswdに生成スクリプトで暗号化したIDとパスを書くんだがログイン出来ないよ?
aaa:bbbを暗号化してaaa:hogebbb
htpasswdに"aaa:hogebbb"と記述
ログイン画面でユーザーaaaパスbbbでログイン出来るものと認識してるんだが出来ない
ユーザーaaaパスhogebbbならログイン出来る
htpasswdにそのままaaa:bbbと書くと当たり前のようにユーザーaaaパスbbbでログイン出来る
ど素人ですまんがどうすればいいか教えて欲しい
476Name_Not_Found:2011/02/14(月) 04:39:29 ID:???
自己解決しました
xamppを使ってローカルでやってたのですがどうもxamppはう暗号化方式が違うみたいで
xampp付属のhtpasswd.exeで生成したら通りました。失礼しました
477Name_Not_Found:2011/02/15(火) 03:03:22 ID:???
アルゴリズムは同じだけど、Apacheのaprの方がちょっと最初に違う文字を突っ込むせいで
結果が違うって感じだったと思う。
478Name_Not_Found:2011/02/22(火) 04:55:37.98 ID:???
質問です。

RewriteCond %{REQUEST_FILENAME} .(gif|png|jpg|jpeg)$ [NC]
RewriteRule ^([0-9]{10}).([A-Za-z]+)$ ./img/$1.$2 [L]

として問題なく画像は意図した通り表示されるのですが、画像が存在しない場合Not FoundとなってそのURLが参照元の
The requested URL /img/abc.jpg was not found on this server.
のようになってしまいます。これをabc.jpgだけにする方法はないのでしょうか?
479Name_Not_Found:2011/02/23(水) 02:22:38.15 ID:???
Not Foundの時をなんとかするのならCondでそのファイルがあるかどうか
あらかじめ確かめておくとか?
480Name_Not_Found:2011/03/01(火) 12:07:17.94 ID:???
.htaccessでの設定を下層ホルダで影響させないようにするにはどうすればいいでしょうか?

携帯サイトでトップページをPCから閲覧できないように.htaccessの設定をして下層ホルダーにQRコードのページを置いたのですが
当然のごとく、そのままではQRコードのページをPCで表示させることは出来ません。
481Name_Not_Found:2011/03/02(水) 02:08:21.73 ID:???
下層のフォルダの.htaccessで上層から受け継がれた設定をキャンセルする。
大抵のディレクティブは再設定することでキャンセルできるけど、Basic認証とか
キャンセルできないものもある。
というか、キャンセルできない設定をキャンセルしたくなるのはそもそもフォルダの割り方がおかしいw
482Name_Not_Found:2011/03/02(水) 14:55:00.54 ID:???
禿同

下層フォルダに置く事がどうかしてるわな。
483Name_Not_Found:2011/04/03(日) 13:33:26.26 ID:???
保守
484 ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄:2011/04/03(日) 18:33:55.59 ID:???
   , v、ヘM 'リ"ノンミ/ソMv、
   ソVvミ ヘ/Wv彡vV/ ミ∠ミ::
  ミミ  _   ミ:::
  ミ    二__, --、r'"___、 ヾ ト、::ヽ
  ミレ'"~ ,-,、 !  ! ' '" ̄ .ノ \ヾ:、
  K/ー'~ ^~_/  ヽミ:ー‐‐'"   ヽ i.
  !〉ー― '"( o ⊂! ' ヽ   ∪   Y
  i  ∪  ,.:: :二Uニ:::.、.       l i
  .!     :r' エ┴┴'ーダ ∪    !Kl  
  .i、  .   ヾ=、__./        ト=
   ヽ. :、∪ ゙ - ―-    ,; ∪ ,!
    \.  :.          .:    ノ
485Name_Not_Found:2011/04/03(日) 18:34:51.66 ID:???
ごばく。まじすまん
486Name_Not_Found:2011/04/04(月) 09:34:15.78 ID:???
>>485
なんと情けない誤爆内容ww
487Name_Not_Found:2011/04/21(木) 04:05:14.07 ID:voQZk7Lp
私のサイトのjsファイルをまるパクリされておりまして、(しかも数十サイト)
ソースもそのままなので私のサーバーの画像に直リンクされている状態。

ログを見ると毎日すごい量のアクセス数なので、良い解決策があれば教えていただきたいです。

なんちゃら.gifが読み込まれた時点で、ほんにゃら.htmlに強制転送などはできないのでしょうか?

488Name_Not_Found:2011/04/21(木) 08:14:58.13 ID:???
>>487
直リンされているファイルを消すのは面白くないから、
とんでもない内容に差し替えたら?
489Name_Not_Found:2011/04/21(木) 10:47:18.51 ID:???
490Name_Not_Found:2011/04/21(木) 12:02:17.33 ID:yZ0krpiO
>>489
おしゃれですね!

しかし今回は全国各地のfu-俗店のHPで使われておりまして、
ポップアップするlightwindowの背景画像なのです。

全部合わせるとアクセス数が一日あたり1万くらいあります。
491Name_Not_Found:2011/04/21(木) 12:10:58.23 ID:???
普通に画像のRefererチェックを.jsにもやるだけだろ。
とんでもない内容にするならErrorDocument。
492Name_Not_Found:2011/04/21(木) 12:18:46.57 ID:???
>>490
小沢、石破、大島、石原あたりの強面政治家の顔画像から、
「風俗遊びなんてやめろ!」という吹き出しの出た画像に
差し替えてくれ
493Name_Not_Found:2011/04/27(水) 18:29:59.90 ID:ooxVRZJs
RedirectMatch すると、URLの末尾にパラメータ「?id=〜」が
付いてしまうのだけど、これは回避できないのですかね?
リダイレクトした先でリライトしてるせいでしょうか。

-------------------------------------

RewriteRule ^e/([0-9]+)$ log.php?id=$1 [L]

RedirectMatch blog/([0-9]+)$ http://example.com/e/$1
494Name_Not_Found:2011/04/29(金) 13:07:17.37 ID:???
Redirectはパラメータを引き継ぐよ。
Rewriteが足してるかもしれないけどw
4950_0:2011/05/03(火) 12:25:45.50 ID:TiarFC5M
1. Redirect permanent / html http://www.new.jp/
2. Redirect permanent /index.html http://www.new.jp/index.html
3. Redirect permanent /xx.html http://www.new.jp/xx.html
上記のような301リダイレクトを記述する場合の適正な記述順ってありますでしょうか?
1→2→3・・・・・それとも2→3→・・1 でしょうか?
496Name_Not_Found:2011/05/03(火) 12:51:55.61 ID:???
確か上から順番。
一番上から / をリダイレクトさせようとするとそれに喰われておしまいのような。
…1.は間違ってるような。
4970_0:2011/05/03(火) 13:11:54.15 ID:TiarFC5M
>496
有難うございます。
でも、http://www.old.jp/ (index.html省略)のリンク
からのアクセスが一番多いので、1.の記述がないと。。。。
でも、確かに1.を最初に書くと2以下を書く意味がないじゃんって気もしてます。
498Name_Not_Found:2011/05/03(火) 18:42:08.06 ID:???
1.のhttpの手前のhtmlという部分が単なる間違いなら
たぶん2.以下は消してもちゃんと動いてると思う。
ファイルとかディレクトリとかの位置関係はまったく同じなんでしょ?
4990_0:2011/05/04(水) 09:18:37.89 ID:mYnMg/xc
>498有難うございます。
1.のhttpの手前のhtmlという部分は単なる間違いでした。
ファイルとかディレクトリとかの位置関係はまったく同じにするつもりです。
「旧サイトのページからそれに対応関係のある新サイトのページに対して301リダイレクト行うと、
Googleページランクが変動することを妨げる。」ていう記事を検索でよく見かけたもので。。。
500Name_Not_Found:2011/05/04(水) 17:29:17.26 ID:???
そんならたぶん1.だけあれば問題なし。
リダイレクト元のpathに/で終わるような設定をしたならリダイレクト先のURLも/で終わるようにしておかないと
/が増えたりするくらいかな?気をつけることは。
501Name_Not_Found:2011/05/09(月) 17:59:27.03 ID:8kYCy8Wo
特定ディレクトリのみ別サーバーで運用することはできますでしょうか?

現在、WordPressでのブログと、静的HTMLによるコンテンツが混在したサイトを運営してます。

http://example.com/ : WordPress で動かしてるブログのトップページ
http://example.com/archives/YY/mm/example.html : WordPress で生成するブログ記事
http://example.com/a/ : ディレクトリA
http://example.com/b/ : ディレクトリB

WordPress : sixcore (非セーフモード)
その他 : coreserver (セーフモードだがほかの自由度が高い)
で運用したいのですが、どう設定したらいいのでしょうか?

ドメイン以下の特定ディレクトリ(ファルダ)を別サーバーに向け.. - 人力検索はてな
http://q.hatena.ne.jp/1130298214 では mod_rewrite を使えばとのことですが、
具体的な設定方法まではありませんでした。

また検索で見つかるのは、サブドメインへのアクセスをサブディレクトリへ転送する設定ばかりでした。

想像ですが、
1. http://example.com/a/ へのアクセスに http://a.example.com/ の内容を表示するようにする
2. a.example.com のみの DNS の設定を coreserver へ向ける。(他は sixcore)
という方法かな、と思ってますが、もしそうなら 1. の RewriteRule をご教示ください。
502Name_Not_Found:2011/05/09(月) 18:03:04.18 ID:???
>>501
reverse proxyでいけると思う
503501:2011/05/09(月) 18:34:27.26 ID:???
>>502

ありがとうございます。

ProxyPass /a http://a.example.com
といった具合でしょうか?

Apacheモジュールなので sixcore や coreserver にインストールされてるか
まだ確認できてませんが、チャレンジしてみます。
504501:2011/05/11(水) 08:44:53.83 ID:RMOywcFC
>>501です。

>>502
coreserverにて、.htaccessに

<IfModule mod_proxy.c>
ProxyPass /test http://example.com
</IfModule>

としてみましたが、testディレクトリがそのまま表示されました。

共用レンタルサーバーでは一般的には
mod_proxyを使えないようにしてあるのでしょうか?
505Name_Not_Found:2011/05/11(水) 12:54:24.90 ID:???
>>504
サーバー屋にサポートに聞きなっせ
506501:2011/05/12(木) 12:13:05.70 ID:???
>>501です。

>>505
ありがとうございます。

聞いたところ非対応でした。
次の手を考えます。
507Name_Not_Found:2011/05/12(木) 14:44:34.18 ID:???
>>504
mod_proxyが読み込まれていてもProxyPassディレクティブは.htaccessでは使えない。
できるとしたらmod_rewriteのRewriteRuleの[]の中にPと書く。
mod_rewriteは使用したいという要望が多いのか使えることが多いが
mod_proxyは脆弱になり易いから使えることはほぼない。
基本的にどちらも使えないのがデフォルト。

ということでサーバサイドのプログラムとかでソケット接続するくらいしか。
508501:2011/05/13(金) 16:05:05.83 ID:???
>>507

ありがとうございます。
とてもわかりやすく説明いただいて助かりました。

ソケット接続、調べて試してみます。
509Name_Not_Found:2011/06/16(木) 15:04:03.01 ID:???
質問させてください。

今までhttp://www.example.com/aaa/bbb/という風に運営していたサイトに
この度新たに取得したexample.orgというドメインで見られるように指定しました。

今後http://www.example.com/aaa/bbb/宛にアクセスがあった場合に
自動的にhttp://example.orgに書き換えられるようにしたいと思います

.htaccessで行えるのではないかと思い色々と試しておりますが
全く無反応だったりinternel server errorが起きたりずっとループしてしまったりで
なかなか上手くいきません。


Redirect permanent / http://example.org/

RewriteEngine On
RewriteCond %{http_host} ^www.example.com/aaa/bbb/
RewriteRule ^(.*) http://example.org/$1 [R=301,L]

RedirectMatch 301 .* http://example.org/

このような表記を行ってみましたが全てダメでした。
どのように表記するのが良いのでしょうか?
どうぞご教示ください。
510Name_Not_Found:2011/06/17(金) 02:38:55.07 ID:???
Redirectはexample.com側専用の場所がないと使いにくいんじゃない?
CondのHTTP_HOSTはexample.org以外という感じで
%{HTTP_HOST} !example\.org(:[0-9]+)?$ [NC] かな?
最近使ってないから違ってるかもw
511Name_Not_Found:2011/06/20(月) 13:42:13.98 ID:Q7jyWX7q
ある特定URLをリファラ参照して
こちらの指定のhtmlへ強制的にジャンプさせる記述を教えてください。
512Name_Not_Found:2011/06/20(月) 14:15:35.75 ID:???
RewriteCond %{http_リファラ} むにゃむにゃ
RewriteRule ^(.*) こっちいけ [R,L]
513Name_Not_Found:2011/07/08(金) 17:13:25.39 ID:qHa25Dez
てs
514Name_Not_Found:2011/07/17(日) 17:18:01.83 ID:???
質問させてください。

さくらインターネットサーバーを利用しています。

URLのwwwありなしを統一させたいと思い.htaccessにてwwwありにて指定したいと考えております。
そしてそのURLがexample.com/hoge/という感じでディレクトリで分けられているのですが、

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

このように.htaccessに表記してもwwwありに変換してくれません。
こういうディレクトリ分けされたURLというものには利用できないのでしょうか?
またwwwありに変換してくれる良い方法がありましたらどうぞご教示ください。
515Name_Not_Found:2011/07/17(日) 21:05:09.70 ID:???
>>514
HTTP_HOSTに/以降は入ってこない。
その代わり:80みたいなポート番号は入ってくることがあるけどw
で、その/hogeな部分はCondではなくRuleの担当になるね。
516Name_Not_Found:2011/07/20(水) 11:24:43.47 ID:???
cgi-binディレクトリを省略させる下記のようなmod_rewriteを使った場合の負荷って
そんな気にする程度のものではないのでしょうか。
それともレスポンスが悪くなるので、安易に使うものではないのでしょうか。

RewriteRule index\.cgi /aaa/cgi-bin/index.cgi [S]
517Name_Not_Found:2011/07/20(水) 11:52:20.16 ID:???
>>516
index.cgiは全て同じプログラムで処理させるの?
abc/index.cgi
xyz/index.cgi
0123/index.cgi
いずれも
/aaa/cgi-bin/index.cgi
に飛ばす?
518516:2011/07/20(水) 13:43:16.97 ID:???
>>517

すみません。
サンプルで適当に書いたのでそうなってました。
aaaだけなのでこんなイメージですかね。

RewriteEngine On
RewriteBase /var/www/html/aaa
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^index\.cgi /aaa/cgi-bin/index.cgi
519Name_Not_Found:2011/07/20(水) 19:08:26.63 ID:???
そこはExtensionモジュールのrewriteよりBaseモジュールのdirをおすすめしたい。

DirectoryIndex /aaa/cgi-bin/index.cgi
520516:2011/07/22(金) 15:38:54.92 ID:???
>>519

DirectoryIndexはディレクトリも一緒に設定できるんですね。
勉強になりましたありがとうございます。
521Name_Not_Found:2011/07/22(金) 15:55:23.52 ID:???
質問です。
@下記.htaccessを使っています。

Options FollowSymLinks
RewriteEngine On
RewriteBase /var/www/html/exsample
RewriteRule ^(\S+\.cgi.*)$ /exsample/cgi-bin/$1 [QSA]

Aディレクトリ構成はこのようになっています。
/var/www/html/exsample/public_html/cgi-bin/test/env.cgi
/var/www/html/exsample/public_html/cgi-bin/css/env.css

Bその状態で下記にアクセスすると、cssが反映されず、
http://exsample/test/env.cgi

C下記でアクセスすると、cssが反映されます。
http://exsample/cgi-bin/test/env.cgi

DFirefoxでB(cssが反映されない)にアクセスし、「ソースを表示」で見ると
htmlには下記のように書かれていて、../css/env.css部分をクリックするとcssファイルは見れているようです。
<head>
<link rel="stylesheet" href="../css/env.css" type="text/css" media="screen" />
</head>


どのようにすればAでcssが反映されるのでしょうか?
522Name_Not_Found:2011/07/22(金) 17:14:07.15 ID:???
>>521
cssを相対で参照するの止めたら?
523Name_Not_Found:2011/07/22(金) 20:29:44.05 ID:???
>>521
もういっちょRuleが要る。
RewriteRule ^(\S*\.css)$ /exsample/cgi-bin/$1
再帰は無視w
524521:2011/07/26(火) 15:36:42.61 ID:???
>>522
提案ありがとうございます。
今回は絶対パスにすると変更したときが面倒なのでできるなら相対で設定したいと考えています。

>>523
ありがとうございます。
cssその他ファイルでパスが変わるもの全てrewriteが必要なんですね。
解決しました。
525Name_Not_Found:2011/08/01(月) 17:07:49.35 ID:???
お願いします。

ググっていて、同じ悩みのここの>>104さんの質問レスを見つけたのですが
>>108の書き方をしてもうまく弾けないです。

p00000-ipbf0000niigatani.niigata.ocn.ne.jp
(0000の部分は数字で、変動する。
pの後の数字は桁数固定みたいだけど、ipbfの後のほうの数字は桁数も変わる。)

これをSetEnvIf Remote_Hostで弾くのって、
どう書けばいいでしょうか。
変動の数字の部分を*にしてみたり、[0-9]を使ってみたりして試しましたが
どうしても自分を弾けません。(自分も、新潟じゃないけどocnです。)
526Name_Not_Found:2011/08/02(火) 00:40:29.75 ID:???
p[0-9]{5}-ipbf[0-9]{2,4}niigatani\.niigata\.ocn\.ne\.jp$

pの後の数字が5桁限定で
dの後の数字は2〜4桁変動の場合はこうだと思う
桁数ははじきたいリモホに合わせて書き換えて
527Name_Not_Found:2011/08/02(火) 16:08:24.56 ID:???
>>526
ありがとう!
528Name_Not_Found:2011/08/04(木) 21:50:12.20 ID:???
SetEnvIfを使う方法はサーバが常に逆引きをする設定になってないと
接続してから1回目のアクセスを取りこぼすとかAllowやDenyに
ダミーでもホスト名の設定をしてなければ逆引きは基本されないとかで
やってはいけないものという結論になってなかったっけ?
だから途中の数字が変わるようなものはIPアドレスで指定するしかないはず。
529Name_Not_Found:2011/08/13(土) 16:20:13.14 ID:???
http://exapmle.com/○○ にアクセスされたら http://exapmle.com/cgi-bin/○○ の内容を表示して、
http://exapmle.com/cgi-bin/○○ にアクセスされたら http://exapmle.com/○○ にリダイレクトするようにしたいのですが、
下の書き方で合っているでしょうか。
ご教示願います。

RewriteEngine on
RewriteRule ^/public_html/cgi-bin/(.*)$ /public_html/$1 [L, R=302]
RewriteRule ^/public_html/(.*)$ /public_html/cgi-bin/$1 [L, R=301]
530Name_Not_Found:2011/08/13(土) 16:41:53.77 ID:???
>>529
public_html
はどこから来たの?
531Name_Not_Found:2011/08/13(土) 17:00:48.12 ID:???
>>530
.htaccessを設置するところから見て、DocumentRootへの相対パスがpublic_htmlです
public_html の絶対パスは /home/example/public_html になってます。
532Name_Not_Found:2011/08/13(土) 20:15:44.26 ID:???
なんかもっと条件を付けておかないと永久に再帰しちゃわね?
533Name_Not_Found:2011/08/13(土) 21:55:37.26 ID:???
それが怖いのですが、条件の付け方が分からないのでここで質問させていただいています。
534Name_Not_Found:2011/08/14(日) 11:23:43.94 ID:???
>>531
http://exapmle.com/
は、public_htmlの中を表示するのか?
それとも、
http://exapmle.com/public_html/
でアクセスできるの?


535Name_Not_Found:2011/08/14(日) 13:00:22.27 ID:???
前者です
分かりにくくてすみません><
536Name_Not_Found:2011/08/14(日) 17:27:44.43 ID:???
だったら、少なくとも
RewriteRule ^/public_html/cgi-bin/(.*)$ /public_html/$1 [L, R=302]
みたいにpublic_htmlを入れる必要は無いね
537Name_Not_Found:2011/08/14(日) 19:46:28.62 ID:???
そもそもなんでその延々とループしそうなルールが必要かだね。
/cgi-binの中にあったものを/へ持ってきたのか逆なのか?
で、それを行ったからルールが必要になったのか、
それを行うためにルールが必要になるのか?

ないところにアクセスされたときの処理でルールが必要というなら
もとのルールに
RewriteCond ${REQUEST_FILENAME} !-f
を足すとか?
538Name_Not_Found:2011/08/15(月) 00:40:26.55 ID:???
cgiがcgi-bin内でしか動かないので、cgi-binをドメイン直下のように見せかけたいと思っています(/にアクセスすると/cgi-binの中身を呼び出し、/hogeにアクセスすると/cgi-bin/hogeという風に)
今まではcgi-binをトップページとして扱ってきたので、従来通りそちらにアクセスしてきた方は、cgi-binの入らないアドレスにリダイレクトしたいと思ってます
539Name_Not_Found:2011/08/16(火) 12:24:57.45 ID:???
それなら/cgi-binにCGIプログラムがそのまま入ってるんなら
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/(.*)$ /cgi-bin/$1 [L, R=301]
かな?
/へのアクセスを優先して、その中にないファイルは/cgi-binへ探しに行くとか。
540Name_Not_Found:2011/08/18(木) 13:58:20.79 ID:???
ありがとうございます。うまくいきました
541Name_Not_Found:2011/08/18(木) 20:10:47.98 ID:UtJB48Gi
お願いします。

/.htaccessで
# SSI---------------------------------
AddType text/x-server-parsed-html .html
Options Includes

を記述してSSIを許可してるのですが、

/a/.htaccess
にて下記の認証

AuthUserFile hogehoge
AuthType Basic
AuthName "QuantumWise(ATK/VNL) User Only"

をしているディレクトリ以下は
SSIが適用されず、

Options Includes

を足すと500error となってしまいます。

下位ディレクトリでもSSIを実行できるようにするにはどうしたら良いでしょうか。
542Name_Not_Found:2011/08/18(木) 22:49:40.40 ID:???
>>541
httpd.confのSSLのほうで、
allowoverride none
になってるとか
543541:2011/08/19(金) 01:00:58.44 ID:dOoe0nPM

>>542

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

レンタルサーバなのですが、調べてみたら、その設定にはなっていませんでした。

普通上位ディレクトリでSSI許可になってたら下位でも引き継がれますよね。。。

ちょっと解らずに困ってます。

544Name_Not_Found:2011/08/19(金) 23:10:29.36 ID:???
/a/じゃなくて/aaaaaaaaaaaa/とかにしたらどうなる?
/a/がサーバの会社の特殊なディレクトリ扱いだったりしてw
545Name_Not_Found:2011/09/01(木) 10:49:47.24 ID:???
ガードプロクシ以外で
プロクシ経由のアクセスを禁止する方法はありませんか?
546Name_Not_Found:2011/09/03(土) 11:35:11.67 ID:???
NATだってレイヤ3あたりのプロキシだと思うw
547Name_Not_Found:2011/09/08(木) 14:41:51.59 ID:w5fqk9MJ
今まで画像をまとめて格納していたフォルダ名を
「img-memo」から「img」に変更しました。
サイトそのものは変わっていません。
この場合でも .htaccess によるリダイレクトは可能でしょうか?

以下のような記述をしても「img」フォルダにリダイレクトされないので、
どうしたものかと。

Redirect permanent /img-memo/2008/0101/ http://xxx.com/img/2008/0101/
Redirect permanent /img-memo/2008/0101/ /img/2008/0101/

ちなみに img-memo/2008/0101/ 下にも img/2008/0101/ 下にも
同じ画像ファイル(jpg)が格納されています。
リダイレクトされないというのは img-memo/2008/0101/ 下の画像が開かれてしまうということです。
548Name_Not_Found:2011/09/08(木) 15:11:06.71 ID:???
あれできた?

.htaccess は上書きじゃなくて、
削除してから再アップってことありますか?

使用しているサーバはロリポップです。
549Name_Not_Found:2011/09/08(木) 15:12:18.72 ID:???
>>548
.htaccess以外のファイルも、削除して再アップしてるのか?
550Name_Not_Found:2011/09/08(木) 15:31:49.05 ID:???
>>549

いえ、まさかそんなことはないです。

でも、この .htaccess は昔っからずっとチャレンジし続けてできず、
なぜか今できてしまった。。
551Name_Not_Found:2011/09/08(木) 20:11:44.42 ID:koAdoafs
あるディレクトリを隠したいんだけど、指定IP以外からのアクセスには404を返す方法ってある?
404ページじゃなくてちゃんと404ステータスを返したい。
rewriteでPHPにアクセスさせてヘッダー弄るしかないかな?
552Name_Not_Found:2011/09/09(金) 14:00:39.28 ID:???
質問します。
直リンクをされている方が多いので、聞きかじりでネットを調べ、
作品ページに、htaccessを書いてアップしました。

SetEnvIf REFERER "自サイトアドレス" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

けれどもいざサイトにアップしてみると、
多数の携帯の閲覧者から、「作品ページを見ることができなくなった」
という報告を受けたのですが、これは携帯を弾く仕様になっているのでしょうか?
正直自分ではまったく原因が分からないので、お力を貸していただければ嬉しいです。
初歩的な質問で本当にすみません。
553Name_Not_Found:2011/09/09(金) 15:24:44.53 ID:???
ドコモの携帯はリファラを吐かない機種が多いって聞いたことがある
554Name_Not_Found:2011/09/09(金) 17:25:40.76 ID:???
>>553
552です。確かに確認してみたところ、リファラを吐かない機種のようでした。
もう一つ質問です。スレチになっていたらすみません。
つまり直リンクをはじくには、これらに目を瞑るしかないのでしょうか?
555Name_Not_Found:2011/09/10(土) 22:38:36.37 ID:???
>>551
リライトにはステータスを変える機能があったはずだからPHPとかはいらない。

>>554
目を瞑ってくださいw
ブラウザからのリファラを削るポリシーを貫き通すため
そのような設定の施されてるどこぞのニュースサイトは画像が出ないという苦情が来ないように
アクセスしても別のニュースサイトを利用しなさいというメッセージのページを返されるという
児童ポルノサイトのような扱いにしてしまいましたw
556Name_Not_Found:2011/09/14(水) 08:41:59.64 ID:PLV+o+EA
画像は除くCGIやPHPなども含むサイト内のすべてで
iモードID取得のための?guid=onを付与するために
以下のように記述しましたところ
http://homepage.jp/○○○cgi?id=○○○や
http://homepage.jp/○○○cgi&○○&○○
というURLにおいてguid=onがURLの最後に付与されていませんでした。
どう記述したらいいか教えてください!


RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo.*
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_URI} !\.(gif|jpe?g|png|swf|pdf|ico)$ [NC]
RewriteRule ^(.*)$ http://homepage.jp/$1?guid=ON [R=302,L]
557Name_Not_Found:2011/09/15(木) 10:25:28.16 ID:???
DirectoryIndex index.cgiを書くと500エラーが出てしまいます。
どうすればいいでしょうか。
558Name_Not_Found:2011/09/15(木) 12:16:06.36 ID:???
>>557
allowoverride none
になってるんじゃね?
559Name_Not_Found:2011/09/15(木) 12:27:10.79 ID:???
>>558
ありがとうございます。
アパッチの設定は変えれそうにないのですが、
どうすればいいのでしょうか。
とりあえず、http://アドレス.jp/を入れると
http://アドレス.jp/index.cgiを読み込むようにしたいのですが
560Name_Not_Found:2011/09/15(木) 20:06:35.37 ID:???
ググったら23秒で見つかったよ
ttp://www.systemania.biz/kiso/htaccess/defaultindex.html
561557:2011/09/16(金) 00:19:39.15 ID:???
>>560
>>557=>>559です
DirectoryIndexが使えなくて困っていました。
562Name_Not_Found:2011/09/17(土) 11:14:59.14 ID:???
>>556
Cond %{QUERY_STRING} ^$ の行が
Cond %{QUERY_STRING} !guid=[Oo][Nn] とか?
563Name_Not_Found:2011/10/02(日) 15:37:54.25 ID:???
質問です。
.ruドメインからのリファラが鬱陶しいのです。
example.ru、hoge.ru…
URLを個別に遮断するのもイタチゴッコになってしまい、.ruからのリンクを全て遮断したいと思い、下記のように記述してみました。

SetEnvIf Referer "^.ru" ref_ng
order allow,deny
allow from all
deny from env=ref_ng

SetEnvIf Refererの記述において「"^.ru"」なのか「".ru"」なのか分かりません。
どちらが正解でしょうか。教えて下さい。
564Name_Not_Found:2011/10/02(日) 16:26:54.30 ID:???
^〜 は、〜で始まる、だから違う
.はドットの意味で使ってるなら\でエスケープしないと
↓でいけないかな。試してないけど
SetEnvIf Referer “^http([s]?)://[a-z\.]*\.ru” ref_ng
565Name_Not_Found:2011/10/08(土) 21:16:10.49 ID:???
RewriteRule ^$ /aaa/ [R]

上のように「/aaa」にに飛ばす設定をしているんですけど

特定のディレクトリ以下はこのhtaccessを有効にしてたくありません。
無効化する方法はあるのでしょうか?
566Name_Not_Found:2011/10/08(土) 22:14:37.05 ID:???
RewriteEngine off
567Name_Not_Found:2011/10/09(日) 04:53:21.23 ID:???
>>565
ありがとうございます。
568Name_Not_Found:2011/10/09(日) 04:54:10.65 ID:???
569Name_Not_Found:2011/10/25(火) 17:21:48.50 ID:???
ファイル名で3桁と4桁の数字があるのですが
3桁の場合は先頭に0をつけるにはどう記述すればいいですか?
570Name_Not_Found:2011/10/26(水) 02:40:02.37 ID:???
それは頭に0付き4桁でアクセスされたら3桁ファイルにアックセ〜スさせるということ?
571Name_Not_Found:2011/10/26(水) 11:49:19.26 ID:???
>>570
検索エンジンにインデックスされている
999.htmlをクリックすると0999.htmlに
1000.htmlは1000.htmlのままにしたいのです。
572Name_Not_Found:2011/10/26(水) 19:06:25.00 ID:???
それならたぶん
RedirectMatch 301 (.*/)([0-9][0-9][0-9]).html $10$2.html
とかで行けるんじゃないかな?
573Name_Not_Found:2011/10/26(水) 19:27:48.01 ID:Vdx0ozDG
質問です!
さくらのレンタルサーバーで301リダイレクトさせたくて

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com
RewriteRule (.*) http://example.com%{REQUEST_URI} [R=301,L]

こんな感じで書いたんですが実際アクセスしてみると

http//example.com

こんな感じになり;が抜けてしまいます
ぐぐってみても全く出てきません
なんとかできないでしょうか
574573:2011/10/26(水) 19:30:43.29 ID:Vdx0ozDG
あ、ぐぐって出てこないというのは類似症状のことです。
あと

Redirect 301 / http://example.com

こう書いてもダメでした。
お願いします。
575Name_Not_Found:2011/10/26(水) 21:38:16.12 ID:???
576Name_Not_Found:2011/10/26(水) 22:10:01.83 ID:???
RewriteEngine on
RewriteRule ^default$ index.html
RewriteRule !^default$ error.html
577Name_Not_Found:2011/10/26(水) 22:40:46.63 ID:???
!を使う方法もあるのですね
勉強になりました
578Name_Not_Found:2011/11/06(日) 16:54:03.45 ID:???
質問させて下さい
今まで国外をアクセス拒否をしたくて↓のように書いていたのですが
order deny,allow
deny from all
allow from .jp
国外からのみでなくある特定のIPアドレスも弾きたいのです
国外+特定IPアドレスのみ拒否の出来るやり方を教えて頂きたいです

order allow,deny
allow from .jp
deny from all
deny from IPアドレス
これでいけますか?
それとも
order allow,deny
allow from all
deny from IPアドレス
deny from .cn

のように各国ごとに書いていかないとダメでしょうか?
579Name_Not_Found:2011/11/06(日) 19:51:10.40 ID:???
>>578
国内のアドレスって全てjpで終わるの?
580Name_Not_Found:2011/11/06(日) 19:59:25.97 ID:???
htaccessのサイトに
国内以外弾く方法に書いてあったのでこう記述していますが
別にjp以外は弾きたいのでこのままで良いんです

質問の方はこれでいけるかどうか分かりますか?
581Name_Not_Found:2011/11/06(日) 21:27:56.25 ID:???
>>579-580
それだと.bbtec.net(Yahoo! BB)が巻き添えくらっちゃうよね。
582Name_Not_Found:2011/11/06(日) 21:28:44.04 ID:???
特に支障ない
583Name_Not_Found:2011/11/06(日) 21:35:45.34 ID:???
>>578
ttp://www.cgis.biz/tools/access/ にあるやつをいただいて使うのがいいんじゃね?
584Name_Not_Found:2011/11/07(月) 04:32:49.21 ID:???
>>578
Order allow,deny のデフォルトDenyや Order deny,allow のデフォルトAllowを使うことで
Allow from all や Deny from all が不要になる。
というか{Allow,Deny} from allってあくまでも設定例として使われてるだけじゃね?w
えーと、つまり
# default deny
Order allow,deny
# allow from .jp and .net
Allow from .jp
Allow from .net
# but don't allow from bbtec.net
Deny from bbtec.net
とすることでまず全員が拒否、その中から*.jpと*.netは許可、なんだけど*.bbtec.netは不可w
のようにできる。
585Name_Not_Found:2011/11/07(月) 11:04:38.96 ID:???
サイトによってOrder allow,denyの順番の説明が違うのですが正しい意味を教えてください
586578:2011/11/07(月) 12:59:19.12 ID:???
>>585
deny from allは不要になるんですね知りませんでした
このとおりに書いて
# but don't allow from bbtec.net
Deny from bbtec.net
のbbtec,netの部分をIPアドレスにすれば良いんですね
教えて下さりありがとうございました
587585:2011/11/07(月) 13:02:48.26 ID:???
>>586
588Name_Not_Found:2011/11/07(月) 17:45:21.43 ID:???
>>585
それくらい自分で調べろよw
589578:2011/11/07(月) 18:09:52.99 ID:???
今気付いた
アンカミスごめんなさい
>>586>>584宛てでした
590585:2011/11/07(月) 18:36:38.97 ID:???
>>588
調べても説明が逆なサイトをどちらも見かけるのでどちらの情報が正しいのかよくわからないんです
591Name_Not_Found:2011/11/07(月) 18:43:47.32 ID:???
592Name_Not_Found:2011/11/08(火) 04:10:25.21 ID:???
Order Deny,Allow (デフォルトがallowという意味)
Deny from 111.112.113.114
Deny from 111.112.113.115 - この二つ以外はアクセスできる

Order Allow,Deny (デフォルトがdenyという意味)
Allow from 111.112.113.114
Allow from 111.112.113.115 - この二つ以外はアクセス拒否
593Name_Not_Found:2011/11/08(火) 09:01:44.54 ID:???
mod_rewrite について質問します

/test/hoge/ => /test/test.cgi?directory=/hoge/
/test/hoge/?sort=filename => /test/test.cgi?directory=/hoge/&sort=filename
/test/hoge/?hide=foo => /test/test.cgi?directory=/hoge/&hide=foo

このように、/test/ 以下のディレクトリは directory= として渡し
? 以下のオプションがあるならそれも渡したいのですが
つぎのように書くと正常に動作しません どこを修正すればよいのでしょうか

RewriteEngine on
RewriteOptions MaxRedirects=1
RewriteBase /test/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\?]*)/\?(.+)=(.+)$ test.cgi?dir=$1&$2=$3 [L]
RewriteRule ^([^\?]*)/$ test.cgi?dir=$1 [L]
594593:2011/11/09(水) 00:50:56.56 ID:???
自己解決しました
595Name_Not_Found:2011/11/09(水) 13:19:55.37 ID:???
質問なんですが
あるページをIPアドレスで入室者を限定する形にしていたんですが、
そのページに一名だけ入室出来ないと言われました。

order deny,allow
deny from all
allow from XXX.XXX.X.XX

(こんな記述の仕方です)

他の人も入室出来ないなら書き込みミスなど分かるんですが、
そういうわけじゃなさそうです。
そしてその一名のIPアドレスがどうやら単一ではなくて幅のあるIPアドレスのようで…
ホストを調べたところ末尾が0/24となっていたのでどうやら0~24の間をいったりきたりするIPアドレスのようなんです。
なのでホスト許可に切り替えて入室出来るようにしたんですが、それでも入れないと言います。
これって原因は何だと考えられますか?
自分で調べてなんとかしようとしていたんですがなんとも出来ず、
どなたかお力お借りできればと思います。
宜しくお願いします。
596Name_Not_Found:2011/11/09(水) 13:24:24.66 ID:???
allow from XXX.XXX.X.XX/24
と書けば良いと思うよ。
597595:2011/11/09(水) 13:29:52.81 ID:???
>596
それやったんですがなんか無理なんですけどって言われたんですよ。
なのでホストに書き変えてそれでも駄目だったんです。
わけがわからないんです本当に…
598Name_Not_Found:2011/11/09(水) 14:32:55.64 ID:???
じゃ、諦めてください
599Name_Not_Found:2011/11/15(火) 23:44:28.32 ID:???
質問です。

http://example.com/%E3%81%82
http://example.com/index.php?word=%E3%81%82にリダイレクトしてたのですが

RewriteRule ^(.*)$ /index.php?word=$1

この度、http://example.com/%E3%81%82?lang=en にアクセスされた場合
index.php?word=%E3%81%82&lang=en にリダイレクトしたいのですが

RewriteRule ^([^\?]*)(\?(.*))?$ /index.php?word=$1&$3

↑この状態でアクセスするとphpで$_GETを表示させてもword=しか存在しません。
(URLバーには?lang=enは残っていてword=には%E3%81%82だけ入っています)

どのようにしたらいいのでしょうか・・
正規表現はRegexTesterでテストしました。


600Name_Not_Found:2011/11/18(金) 23:31:19.73 ID:???
601Name_Not_Found:2011/11/19(土) 02:29:15.90 ID:???
[L]を付ける
602Name_Not_Found:2011/11/20(日) 22:57:04.44 ID:???
6桁の英数字なんだから[0-9A-Za-z]{6}だよね?
603Name_Not_Found:2011/11/21(月) 10:37:38.92 ID:???
>>602
apacheのmod_rewriteって{6}みたいな書き方は通ったっけ?
604Name_Not_Found:2011/11/25(金) 20:06:37.62 ID:???
mod_rewrite云々じゃなくて正規表現が通らなかったら大変だろ
605Name_Not_Found:2011/11/26(土) 00:48:55.41 ID:???
6桁に縛るのも回避できるけど、基本は/1/でなければのCondの追加だよね?
606Name_Not_Found:2011/11/29(火) 00:09:51.98 ID:???
ttp://example.com/user/test/index.cgiのURLの最後に/(スラッシュ)がなければつけてリダイレクトという条件にしたいのですが、
下記だと<img>タグで相対パス設定している画像<img src="../img/img.jpg">が読み込まれなくなります。
.htaccessを使わないとimgは読み込まれます。
どうすれば.htaccessを適用したあともimgが読まれるようになりますでしょうか?
この動作のあとに別のRewriteRuleをそのうち追加したいので[L]オプションはつけないようにしています。

#.htaccess
DirectoryIndex index.cgi
Options FollowSymLinks
RewriteEngine on
RewriteBase /user/test
RewriteRule ^(\S+[^/])$ $1/ [R] #最後に"/"を入れる

607Name_Not_Found:2011/11/29(火) 04:52:32.65 ID:???
/user/test/img -> /user/img のRuleも作る。
608Name_Not_Found:2011/12/01(木) 12:46:25.64 ID:???
<Files> で下位ディレクトリのファイルを指定する場合ってどうやればいいですか?

↓これだと有効にならなくて
<Files wp-admin/update.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

↓これをwp-admin/に置いたら有効になったのですが
<Files update.php>
AddHandler application/x-httpd-phpcgi .php
</Files>
609Name_Not_Found:2011/12/01(木) 23:20:52.23 ID:???
<Filesはファイル名が一致したら発動だから下のやつを上位のディレクトリの
.htaccessに書いても有効になるよ。
610Name_Not_Found:2011/12/02(金) 00:34:15.78 ID:???
>>609
ありがとうこざいます
つまり<Files>にディレクトリ名は含んではいけないんですかね?
611Name_Not_Found:2011/12/02(金) 10:15:07.53 ID:???
含んではいけない。
というか、ディレクトリ単位で設定をするものが.htaccess。
wp-admin/以下のupdate.phpだけを対象にするならwp-admin/.htaccessに
<Files update.php>を書く。
612Name_Not_Found:2011/12/02(金) 10:32:25.32 ID:???
>>611
なるほど、よくわかりました!
ありがとうこざいます
613Name_Not_Found:2011/12/18(日) 18:40:07.67 ID:???
ttp://example.com/にアクセスしたときに

ブラウザのURL表示は、ttp://example.com/のままで

ieなら「Internet Explorer ではこのページは表示できません」
chromeなら「Google Chrome では example.com が見つかりませんでした」

(表示の例としては、たとえば http://hogehoge.yahoo.co.jp/ )

と表示されるような.htaccessの設定方法ってありますか?
614Name_Not_Found:2011/12/18(日) 18:45:16.43 ID:???
nai
615Name_Not_Found:2011/12/18(日) 18:49:07.60 ID:???
deny from All
616613:2011/12/18(日) 18:56:37.90 ID:???
>>614
やっぱり無いですかね

>>615
それだと403エラーが表示されちゃうよね?
617Name_Not_Found:2011/12/18(日) 18:59:33.67 ID:???
何をやろうとしてるのかわからんけど、同じ404ページでいいんじゃないの
URL表示そのままにしたいってのがちょっとうさんくささも感じる
618613:2011/12/18(日) 19:13:02.64 ID:???
>>617
レンサバのデフォドメイン(レンサバのサブドメ)を非表示にしたい。

そのレンサバでは、
存在しないサブドメは403とか404ではなく、
上に書いた「このページは表示できません」って表示されるから、
そのように設定できないかなと思って。
619Name_Not_Found:2011/12/18(日) 19:41:38.59 ID:???
>>618
ホスティングサービスで共有SSLを使っている場合のアクセスの振り分け例を参
考にすればいいと思うよ
620Name_Not_Found:2011/12/18(日) 20:32:58.51 ID:???
しかも問題は
ttp://example.com/
にアクセスがあったときじゃなくて
ttp://example.com/*
にアクセスがあったときだろJK
本人に問題の切り分けができていない
621Name_Not_Found:2011/12/18(日) 20:40:36.59 ID:???
何がやりたいのかよくわからない
622Name_Not_Found:2011/12/18(日) 21:24:00.35 ID:???
ttp://faq.sakuratan.com/wiki/wiki.cgi?.htaccess#i16
こういうことがしたいだけだろ
623613:2011/12/18(日) 22:46:46.19 ID:???
簡単にいえば>>622なんだが、

さくらの場合、
使用されていないドメイン
(たとえば、 http://a1234567890123456.sakura.ne.jp/ )

なら、エラーは返さないから、
403エラーを返すとそのドメインを使用中なのが分かる。

実用的にはそれでも問題ないけど、なんとなく気持ち悪いので、
エラーを返さずにページを表示できなくする方法はないかなと。

>>619
たとえば?

>>620
切り分けが必要なら複数の設定でもいいよ
624Name_Not_Found:2011/12/18(日) 23:24:52.36 ID:???
> 設定でもいいよ
なんで上から目線なんだこいつ?

少なくともてめえには無理だ
625Name_Not_Found:2011/12/18(日) 23:33:33.89 ID:???
>たとえば?
検索エンジンって知ってる?w
626Name_Not_Found:2011/12/18(日) 23:44:49.95 ID:???
>>623
俺も知りたい
627Name_Not_Found:2011/12/18(日) 23:56:54.09 ID:???
indexページを/に置かないだけでいいのでは無いかと
628613:2011/12/19(月) 00:12:56.71 ID:???
>>624
気分を害されたら申し訳ないです

「複数の設定でも構いません」の表現の方がよかったですね

>>625
ググってみたのですが、ヒントになりそうなものが分かりませんでした。
もうちょっと調べてみます。

>>627
/にindexページを置かないと、フォルダが見えてしまう仕様なので。
629Name_Not_Found:2011/12/19(月) 00:23:30.61 ID:???
まだ続くんかーい
630Name_Not_Found:2011/12/19(月) 01:37:18.37 ID:???
やる気なさ杉
631Name_Not_Found:2011/12/19(月) 01:44:42.75 ID:???
ぐぐることもできないこんな無能がWebサイト・・・だと?
632Name_Not_Found:2011/12/19(月) 03:17:41.64 ID:???
>>619
それ使っても無理じゃね?

>>629-631
イジメるしか能のない無能はスルーw
633Name_Not_Found:2011/12/19(月) 05:00:44.66 ID:???
デフォルトのホスト名のA(AAAA)やCNAMEレコードあたりを消すとか
そういうレベルになっちゃうね。
.htaccessとはレイヤーが全然違うw

とかそういう答えくらい用意すればいいのに煽ってるだけの
基地外うましかは何なの?w
634Name_Not_Found:2011/12/19(月) 05:07:14.01 ID:???
ディレクトリインデックスを表示させないようにするのは.htaccessでは
Options -Indexesかな。
Optionsが通らないサーバならDirectoryIndexに指定されたファイルを置くしかないか。
インデックスのエントリから消すのはDeny from allやRedirect 403などで
アクセス制限を掛けておけば消える。
635Name_Not_Found:2011/12/19(月) 23:44:14.11 ID:???
>>628
それっぽいダミーページを/に置けば簡単よ
見つかりませんでしたページ
のソースパクって作れ
636Name_Not_Found:2011/12/20(火) 09:28:18.96 ID:???
>>633
根本的に勘違いしていないか?
それを言うなら hostnameを変更して逆引きも変えないと意味がない
637Name_Not_Found:2011/12/22(木) 11:37:02.54 ID:2GAkStET
下記の.htaccessに追加で「403エラー → http://yahoo.co.jp に飛ぶ」と
設定したいのですが思っているのですが、上手くいかず困っています。
どなたかよろしくお願いします。

order deny,allow
deny from all
allow from .docomo.ne.jp
allow from .ezweb.ne.jp
allow from .softbank.ne.jp
638637:2011/12/22(木) 11:40:04.60 ID:2GAkStET
すみません、書き方がわかり難いので追記させてください。

やりたい事はドコモ・AU・ソフトバンクのガラパゴス携帯以外からの
アクセスをヤフーに飛ばしたいと考えています
639Name_Not_Found:2011/12/22(木) 11:50:28.03 ID:???
ErrorDocument 403 やふぅ
とかで良いんだろうけど、いきなりやふぅに飛ばすのはどうかと思うw
640637:2011/12/22(木) 11:57:24.27 ID:2GAkStET
>>639
ありがとうございます
上手くできました
641Name_Not_Found:2011/12/22(木) 12:00:36.40 ID:???
>>637
IPアドレスではじきたいなら、各キャリアのサイトに書かれているIPアドレスを記述せれ
逆引きで.ezweb.ne.jpなんて返ってこないぞ
642Name_Not_Found:2012/01/01(日) 15:34:51.87 ID:u6klDpy1
質問です。

http://www.なんとか.com/
   ↓
http://www.なんとか.com/index.html

へ無条件に飛ばす方法を教えてください。

643Name_Not_Found:2012/01/01(日) 17:13:30.45 ID:???
RedirectMatch 302 ^/$ http://www.example.com/index.html
644Name_Not_Found:2012/01/24(火) 21:49:55.12 ID:???
>>640
ふ〜ん。ネット知識(笑)?
645Name_Not_Found:2012/01/24(火) 21:58:11.90 ID:???
>>644
日本語でOK
646げんさん III:2012/02/05(日) 23:25:51.93 ID:Jfw0EZms
アクセスログを調べると、.htaccess でIPアドレスがブロックされている
はずのやつが、自動化しているようで片端から「こんなファイルはないか」と
ありもしないあらゆるファイルの問い合わせをしてきます。

さすがに.htaccessの指示により、サーバーは存在するファイルを見せることは
拒否しますが、存在しないファイルに対していちいち「それはありません」
404(Not Found)を返しているようです。 

存在する場合としない場合で返事が異なると、繰り返しやられたらやがては手の
内が暴露されてしまう恐れがあります。

いずれの場合でも常に「お前には見せてやらん」403(Forbidden)を返す
ようにはできないでしょうか?
647Name_Not_Found:2012/02/06(月) 12:53:32.86 ID:???
Redirect 403 /forbiddenarea
648げんさん III:2012/02/08(水) 09:35:36.19 ID:MnVJysDe
>>647
ありがとうございます、
.htaccessにdeny from IPアドレスをうんじゃら入れていますが
その最後にご指摘の行をそのまま追加して様子を見ていますが
それでよろしいのでしょうか?
IPブロックしていないユーザーが間違って存在しないページを
見に来た場合にも403が返されるのでしょうか?
649Name_Not_Found:2012/02/08(水) 14:25:54.86 ID:???
いや、>>647全員強制403。
404が返ってるという事はDenyが効いてないという事だよ。
リライトが掛かって制限を掛けてないところにアクセスしてるとか
下の階層の.htaccessにOrder, Allow, Denyを書いてしまってて
上で設定した制限を解除してしまってるとか。
650げんさん III:2012/02/08(水) 14:58:54.88 ID:MnVJysDe
>>649 404が返ってるという事はDenyが効いてないという事だよ。

眼力恐れ入りました! rootに.htaccessを置いてありますが、問題にしていた
サブドメインを構成するフォルダーにも、かつて分からないままにrootの
.htaccessをコピーしたままになっていました。 そのためrootの.htaccessだけを
膨らましていても、そのサブドメインだけが古い.htaccessに従い、隙間だらけの
ブロックをしていたのだと納得いたしました。
と言うことで>>647でご教示いただいた方法はひとまず止め、サブドメインに置いた
.htaccessも消した状態で様子を見ることにします。 ご支援ありがとうございました!
651Name_Not_Found:2012/02/11(土) 21:47:02.89 ID:???
すいません、低レベルで申し訳ないのですが質問させて下さい。

ブラウザの表示では
 http://www.example.jp/~username/index.php
 http://www.example.jp/~username/access.php
 http://www.example.jp/~username/form.php ...
などといったアドレスのままで、
 http://www.example.jp/~username/2012/index.php
 http://www.example.jp/~username/2012/access.php
 http://www.example.jp/~username/2012/form.php ...
といったファイルにアクセスしたいのですが、.htaccessファイルを
 RewriteEngine On
 RewriteBase /~username/
 RewriteRule (.*) http://www.example.jp/~username/2012/$1 [R=301,L]
としてindex.phpにアクセスすると、
http://www.example.jp/~username/2012/2012/2012/2012/2012/2012/...
となってしまいます。どうすればいいでしょうか?

どなたか教えてください・・・!
652Name_Not_Found:2012/02/11(土) 21:59:36.80 ID:???
301でそれをやる意味がわからん
653Name_Not_Found:2012/02/11(土) 22:05:29.09 ID:???
なんか自分で読み返してみると分かりにくかったので、ちょっとだけ直させて戴きます

ブラウザの表示では
 http://www.example.jp/~username/index.php
 http://www.example.jp/~username/access.php
 http://www.example.jp/~username/form.php ...
などといったアドレスのままで、
 http://www.example.jp/~username/2012/index.php
 http://www.example.jp/~username/2012/access.php
 http://www.example.jp/~username/2012/form.php ...
といったファイルの内容を表示させたいのですが、http://www.example.jp/~username/においた.htaccessファイルを
 RewriteEngine On
 RewriteBase /~username/
 RewriteRule (.*) http://www.example.jp/~username/2012/$1 [R=301,L]
としてhttp://www.example.jp/~username/index.php にアクセスすると、http://www.example.jp/~username/2012/2012/2012/2012/2012/2012/...
となってしまいます。

どうすれば解決するのでしょうか?
どなたか教えて戴けると嬉しいですm(._.)m
654Name_Not_Found:2012/02/11(土) 22:12:47.61 ID:???
>>652
すいません、サーバ管理は初めてなもので。。

301ってリダイレクトってやつですよね?
ググっていてrewriteとredirectがあるのは何となく分かったのですが、
具体的にどうすればいいのかがいまいちピンと来ません;

どういった関数(?)を使えばいいかなど教えて戴ければ嬉しいです。
655Name_Not_Found:2012/02/11(土) 22:15:32.67 ID:???
ちょw
656Name_Not_Found:2012/02/11(土) 22:25:08.88 ID:???
その話だと301である必要もないしむしろGoogle様を怒らせそうだしというか今すでにあれだしというかループで鯖管怒らせそうだしというか今どきループ実行できるようなサーバーて
>>654
まずテンプレの参考サイトを読んで基礎を勉強するんだ!
.htaccessは基本的な知識がないと壮大にやらかしてしまうぞ!
657Name_Not_Found:2012/02/11(土) 22:37:44.91 ID:???
>>653
焦らずに急がばまわれで基本やったほうがいいよ
正規表現とか見よう見まねで書くと危険だし、
正直どこから説明して良いのか難しい
658Name_Not_Found:2012/02/12(日) 19:16:01.77 ID:???
難しいじゃなくて
Cond %{REQUEST_URI} !^/~username/2012/
で再帰をせき止めて
Rule (.*) http://www.example.com/~username/2012/$1 [L]
で内部だけでリダイレクトさせる程度のことも答えられないだけだろ?

example.jpはJPRSが例示用として予約してるだけだから
example.comのほうがより良いというあたりの薀蓄くらいしろよw
659Name_Not_Found:2012/02/29(水) 20:24:10.08 ID:???
携帯からのアクセスを弾きたいと思い、
以下のように記述しているのですが
解析を見るとどうも弾くことができていないようです。
おかしいところ、付け加えるべきことがあれば教えてください。
よろしくお願いします。

SetEnvIf User-Agent "DoCoMo" mobile
SetEnvIf User-Agent "FOMA" mobile
SetEnvIf User-Agent "KDDI" mobile
SetEnvIf User-Agent "SoftBank" mobile
SetEnvIf User-Agent "Vodafone" mobile
SetEnvIf User-Agent "J-PHONE" mobile
SetEnvIf User-Agent "NetFront" mobile
SetEnvIf User-Agent "IEMobile" mobile
SetEnvIf User-Agent "WILLCOM" mobile
SetEnvIf User-Agent "iPhone" mobile
SetEnvIf User-Agent "Windows CE" mobile
Order Deny,Allow
Allow from all
deny from env=mobile
660Name_Not_Found:2012/03/01(木) 13:22:29.59 ID:???
そのUAじゃ一致しないから無理だろ
それよりはIPかせめてhostnameで弾いた方がらくじゃね?
でもhostnameは引き損なうことがあるからIPの方が確実
661Name_Not_Found:2012/03/01(木) 13:32:33.70 ID:???
>>660
レスありがとうございます。

order allow,deny
allow from all
deny from 123.108.236.0/24

・・・以下ip羅列
でいいんですよね。やってみます。
662Name_Not_Found:2012/03/15(木) 03:30:01.66 ID:???
質問させてください。

rootにindex.htmlを始め、日付を元にしたHTMLファイルが多数置いてあります。
そしてその配下にさまざまなフォルダがあり、
そこにも日付を元にしたHTMLファイルが多数置いてあります。
このフォルダは大量にあり、増える可能性があります。

この状況で、rootにある日付を元にしたHTMLファイルを、hogehogeフォルダにリダイレクトさせたいです。
同じファイル名があるので、ファイル名の正規表現だと下層のファイルまで移動してしまいそうです。
.htaccessでできますでしょうか?
図にすると以下のような感じです。

index.html
0101.html
0102_hoge.html
…(同じようなファイルが多数)
|-aaa
 0101.html
 0202_hoge-hoge.html
 ...
|-bbb
 0101.html
 0212.html
 ...
|-hogehoge
 ここにリダイレクトしたい

ご回答のほど、よろしくお願いします。
663662:2012/03/15(木) 06:10:29.40 ID:???
すみません、(多分)自己解決しました。

RewriteRule ^([0-9]+.*)\.html /hogehoge/$1.html [R=301,L]

で行けました。

この書き方だと下層ディレクトリにも影響を及ぼすんじゃないかと思ってましたが、
違うみたいですね。
664Name_Not_Found:2012/03/30(金) 00:07:22.59 ID:lZoJN9LK
上位ディレクトリからのrewriteを無視してrewriteを走らすにはどうしたらいいでしょうか

上位ディレクトリの.htaccessからのリダイレクトのせいで下位のディレクトリが影響をうけてリダイレクトされてしまいます

因みに上位ディレクトリの.htaccessは弄れません
665Name_Not_Found:2012/03/30(金) 01:17:52.03 ID:???
rewritecond
666Name_Not_Found:2012/04/05(木) 11:29:35.96 ID:???
すみません教えて下さい

最近当方の掲示板に対して
223.144.***.***.just***.com
というようなアドレスから爆撃を受けているため
.htaccessで

order allow,deny
allow from all
deny from 223.144.
deny from .just***.com

※一応***と伏字にしておりますが実際には記載しています

と記載しているのですが未だに掲示板へ書き込みがあります
(つまり弾けていないようです)
ためしに自分のIP等を記載してみたところ
私はアクセスできないのでhtaccess自体は機能していると思うのですが
これが弾けないのは他にどんな理由が考えられるでしょうか

どなたかご教示頂けましたら幸いです
どうぞよろしくお願い致します
667Name_Not_Found:2012/04/05(木) 13:10:24.25 ID:???
>>666
> deny from 223.144.
これだとIPアドレスで
213.144.0.0/16を拒否していることになるからこの場合無意味
理由はjust***.comをlookupかければわかるとは思います

host名で弾くのはそこで常に名前解決処理が発生するため
処理速度が落ちます
/16で弾いてしまっていいのなら
deny from 46.21.0.0/16
で良いと思いますが
668Name_Not_Found:2012/04/05(木) 16:59:32.20 ID:???
>>667
なるほど!223.144.***とついていたので
てっきりIPアドレスなのかと思ったのですが全然違うのですね
すっかり騙されましたw

deny from 46.21.0.0/16
として様子を見てみます

※それにしても伏字にしたのにドメインがばれているのですねw
※これってスパム?として有名なのでしょうか・・・

ご回答頂き、本当にどうもありがとうございました
669Name_Not_Found:2012/04/05(木) 23:39:50.26 ID:???
> 223.144.***.***.just***.com
これでぐぐってみればわかるだろJK

> てっきりIPアドレスなのかと思ったのですが全然違うのですね
> すっかり騙されましたw
IPアドレスの逆順を使ったhost名って結構あると思うけど
670げんさん III:2012/04/15(日) 11:04:39.00 ID:ofZhwQtr
特定ファイルを読みに来るやつを撃退するには? (長文で失礼します)

すでに閉鎖したサイトにあった特定のページをしつこく読みに来るやつがいて、
アクセスログを埋めています。 現在は、「このサイトは閉鎖しました」との
インデックスページがあるだけです。 当然404 NOT FOUNDが返ります。 
そのページはビジネスがらみのなんら興味を引くような内容ではなかったの
ですが、どうも怪しいやつと管理人はにらんで、あるときからIPアドレス、
国を見て.htaccessでブロックするようにしました。

ところがそれがお気に召さなかったようで、次々と新たなIPアドレスから
探りを入れてくるようになり、ゲームをやっている感覚でIPアドレスの
ブロック枠をその都度増やして対応していました。インデックスページを
見ればもうこのサイトはないことが分かるはずなのにサーチしてきます。

このごろは相手も巧妙になってきて、世界各国のIPアドレスから同時多発的に
探りを入れてきます。どう見てもどこかの組織のフィルターにかかってしまい、
自動プラグラムでやられているような感じです。

この特定のファイルを見に来たらこちらにログを残さずに、403を返すような
ことは出来ないでしょうか?

いまのところは実害としてはアクセスログに割り込んできて邪魔だなぁ、
程度なので下手な反応をして、「どうも胡散臭いやつだ、きっと怪しい情報を
持っているに違いない」と更なる注目を浴びるよりは放っておいたほうが
よいのかなとも思います。 

自分のほかのサブドメインのサイトが攻撃されたり、サーバーに迷惑をかけてもいけません。 
同じような経験をされた方のご意見をいただけましたら幸いです。
671げんさん III:2012/04/15(日) 11:07:14.68 ID:ofZhwQtr
特定ファイルを読みに来るやつを撃退するには? (長文で失礼します)

すでに閉鎖したサイトにあった特定のページをしつこく読みに来るやつがいて、
アクセスログを埋めています。 現在は、「このサイトは閉鎖しました」との
インデックスページがあるだけです。 当然404 NOT FOUNDが返ります。 
そのページはビジネスがらみのなんら興味を引くような内容ではなかったの
ですが、どうも怪しいやつと管理人はにらんで、あるときからIPアドレス、
国を見て.htaccessでブロックするようにしました。

ところがそれがお気に召さなかったようで、次々と新たなIPアドレスから
探りを入れてくるようになり、ゲームをやっている感覚でIPアドレスの
ブロック枠をその都度増やして対応していました。インデックスページを
見ればもうこのサイトはないことが分かるはずなのにサーチしてきます。

このごろは相手も巧妙になってきて、世界各国のIPアドレスから同時多発的に
探りを入れてきます。どう見てもどこかの組織のフィルターにかかってしまい、
自動プラグラムでやられているような感じです。

この特定のファイルを見に来たらこちらにログを残さずに、403を返すような
ことは出来ないでしょうか?

いまのところは実害としてはアクセスログに割り込んできて邪魔だなぁ、
程度なので下手な反応をして、「どうも胡散臭いやつだ、きっと怪しい情報を
持っているに違いない」と更なる注目を浴びるよりは放っておいたほうが
よいのかなとも思います。 

自分のほかのサブドメインのサイトが攻撃されたり、サーバーに迷惑をかけてもいけません。 
同じような経験をされた方のご意見をいただけましたら幸いです。
672げんさん III:2012/04/15(日) 12:55:36.95 ID:ofZhwQtr
掲示板の管理人様、
誤ってダブリ投稿をやってしまいました、申し訳ありません。
671と本文を抹消していただけませんか。
673Name_Not_Found:2012/04/15(日) 13:30:58.73 ID:???
正真正銘の阿呆かよ
674Name_Not_Found:2012/04/15(日) 17:22:14.90 ID:???
Redirect そのぺーじ http://どっか適切なページ
でどっかに飛ばしてみるとか。
675げんさん III:2012/04/18(水) 09:41:28.73 ID:XEBPyQUp
672: 正真正銘のあほ

確かに仰るとおりですね、実害もないのにわざわざ注目を浴びるようなことをして
自分で問題を拡大している、、、、

インターネットによる情報サーチの世界がいかに露骨ですさまじいものかを
知ったことがせめての成果、と考えて有害な攻撃を受けない限りは
沈黙を守ることにします。 サイトを運営する場合のイロハでしたかね。

お騒がせしました。
676Name_Not_Found:2012/05/01(火) 14:00:12.23 ID:???
拡張子を.phpから.htmlにしたいのですが、

RewriteRule ^あああ.html+ hoge.php\?bb[A-Z][-][A-Z]

「あああ」の部分を「[A-Z][-][A-Z]」の部分と同じにしたいです
どうしたらいいでしょうか
677676:2012/05/01(火) 14:37:44.85 ID:Vwi2m+Dc
すみません、あげ忘れました
678Name_Not_Found:2012/05/01(火) 14:50:50.18 ID:???
>>670
そのページにアクセスしたらgoogleにでも飛ばすようにすれば
679Name_Not_Found:2012/05/02(水) 11:02:21.20 ID:???
>>676
RewriteRule ^(.*)\.php$ /$1.html [R=301,L]
680676:2012/05/02(水) 14:28:03.89 ID:G92xECeq
回答ありがとうございます
>>679さんのを参考にして、以下にするとできました

RewriteRule ^(.*)\.html /hoge.php\?=bb$1

2回目ですみませんが、>>679さんのを見て今度はリダイレクトさせたいと思いました
「hoge.php\?=bb$1」にアクセスすると「(.*)\.html」に飛ばしたいのですが、
いろいろ試してみてもだめでした
結局書き方がわからなかってので、よろしくお願いします
681Name_Not_Found:2012/05/02(水) 14:58:43.23 ID:???
予想通りの流れ
682Name_Not_Found:2012/05/02(水) 15:00:04.29 ID:???
いろいろ試したというやつを書いてみろよw
683Name_Not_Found:2012/05/02(水) 15:02:24.44 ID:???
リダイレクトのさせ方なんてぐぐれば一発だ
684679:2012/05/02(水) 15:31:14.18 ID:???
>>680
なんでそんなに検索嫌いなん?
685676:2012/05/02(水) 15:49:00.12 ID:G92xECeq
すみません
検索してもわからなかったんです…

Redirect permanent /hoge.php\?=bb$1 (.*)\.html
RewriteRule ^/hoge.php\?=bb$1 (.*)\.html [R=301,L]
RewriteRule?^hoge.php\?=bb$?$1.html
RewriteRule?^hoge.php\?=bb$?(.*)\.html
Redirect permanent http://example.com/hoge.php\?=bb$1 (.*)\.html

いろいろ組み合わせたりしてたんですが、できる限り試しても何が間違ってるのかわからなかったです
686676:2012/05/02(水) 15:52:22.99 ID:G92xECeq
RewriteCond %{HTTP_HOST} ^example.com/hoge.php\?=bb$
RewriteRule ^(.*)$ http://example.com/$1.html [R=301,L]
687676:2012/05/02(水) 21:40:05.58 ID:G92xECeq
RewriteRule ^aaa.html+ bbb.php?=aaa

ここまではわかるのに、うまく書き換えられない

RewriteRule ^(.*).html$ /bbb.php?=$1 [L]

もうだめぽ
688Name_Not_Found:2012/05/02(水) 23:16:21.79 ID:???
いろいろ()
689Name_Not_Found:2012/05/02(水) 23:32:05.88 ID:???
正規表現わかってない?
690Name_Not_Found:2012/05/03(木) 00:18:21.20 ID:???
自分で調べる気も勉強する気もないんだからもう放っておいてやれよ
691676:2012/05/03(木) 20:32:00.20 ID:???
レスが遅くなってしまってすみません
正規表現を勉強します
厳しいコメントも含め、ありがとうございました
692Name_Not_Found:2012/05/04(金) 10:16:05.01 ID:???
いつもの答えだけさらっと出す人来なかったねw
693Name_Not_Found:2012/05/04(金) 12:16:05.70 ID:???
いや、来てた、というか見てたけど…じゃね?w
694Name_Not_Found:2012/05/08(火) 19:44:12.87 ID:???
特定のフォルダだけKeepAliveをOffにしたいですがどうやれば良いですか?
695Name_Not_Found:2012/05/09(水) 14:27:29.58 ID:FSyZZmxv
ファーストサーバー ttp://www.fsv.jp/

にて、拡張子がhtmlのファイルをPHPとして動かしたいと思い、
AddType application/x-httpd-php .php .html
と書いているのですが、うまくいきません。

サーバーに問い合せたところ、使用できるが、書き方はネットで調べてくれとのことでした。
おわかりになる方がいらっしゃいましたら、教えて頂けますでしょうか?
696Name_Not_Found:2012/06/15(金) 07:30:04.79 ID:???
apacheでmod_expiresを有効にした後、.htaccessにて

ExpiresActive On
ExpiresDefault “access plus 7 days"

と記述したのですが500エラーとなってしまいます。
htaccess自体は使用できるのでexpiresをhtaccessで使用するには他にもなにか必要なのでしょうか?
697Name_Not_Found:2012/06/15(金) 13:45:33.09 ID:???
>>696
accessの手前が"じゃないとかそういうのじゃなくて?
698Name_Not_Found:2012/06/15(金) 13:46:58.00 ID:???
ああ、AllowOverrideにIndexesが必要。
699Name_Not_Found:2012/06/15(金) 14:37:05.97 ID:???
>>697
ご指摘通りでした……
まさか文法ミスという初歩的なミスだったとは……いったいいつ全角になっていたんだ
お早い指摘ありがとうございます。
700Name_Not_Found:2012/06/15(金) 15:56:37.15 ID:???
>>695
デフォルトではAddTypeにapplication/x-httpd-phpで実行、
application/x-httpd-php-sourceでソースのハイライト表示、
AddHandlerにphp5-scriptで実行の接尾辞を設定できるけど、
PHPをビルドするときに-DPHP_MAGIC_TYPE=application/x-example-httpd-php
のような独自オプションでパッチされていたりすると
.htaccessからの設定ではその値を探り当てなければ
どうしようもない。
701Name_Not_Found:2012/06/16(土) 10:00:52.97 ID:zYl4av27
動的ページを静的ページに見せかけたいのですが

www.example.com/1.htmlへアクセスしたら
パソコンからのアクセスの場合
ww.example.com/pc/test.php?id=1の内容を
スマホからのアクセスの場合
ww.example.com/sp/test.php?id=1の内容を表示するにはどうすればいいですか?
702Name_Not_Found:2012/06/16(土) 10:25:42.27 ID:???
ちょっとくらいググるか自分で考えろや
703Name_Not_Found:2012/06/16(土) 10:29:43.28 ID:zYl4av27
>>702
ぐぐってわからないからここで質問しているんですが・・・
704Name_Not_Found:2012/06/16(土) 11:18:17.69 ID:???
答えだけ書いてく人ラッシュだったみたいなのにw
705Name_Not_Found:2012/06/16(土) 12:31:30.61 ID:???
>>703
こんなのぐぐって分からないくらいならセンスないと思うよw
706Name_Not_Found:2012/06/16(土) 14:11:21.01 ID:???
>>701
各種フレームワークのhtaccessを見れば、ヒント山盛りだぜ
707Name_Not_Found:2012/06/24(日) 13:10:28.04 ID:???
>>705
何のためのスレだよ。
偉そうに口だけならなんとでも言えるからか。
分かっているなら答えを書いてやれよ。
708Name_Not_Found:2012/06/24(日) 14:39:50.17 ID:???
>>707
無駄な書き込みしないで早く答え書けばいいだろwww
あ、本人様でしたかwwwwww
709Name_Not_Found:2012/08/05(日) 21:25:29.75 ID:???
mod_rewriteについて質問させてください。
動的URLを静的に見せる為にmod_rewriteを使おうと思い、下記URL
ttp://example.com/A/B/C/index.php?p=2&aaa=D&bbb=E&ccc=F&k=10

ttp://example.com/A/B/C/D_E_F/2-10/
にしたいのですが、
RewriteEngine on
RewriteRule ^/([0-9A-Za-z_-]+)/([0-9A-Za-z_-]+)/([0-9A-Za-z_-]+)/([0-9A-Za-z_-]+)_([0-9A-Za-z_-]+)_([0-9A-Za-z_-]+)/([0-9]+)-([0-9]+)/?$ /$1/$2/$3/index.php?p=$7&aaa=$4&bbb=$5&ccc=$6&k=$8 [L]
にしたところ、404になりました。
おかしい部分が多々あるとは思いますが、宜しければ指摘等お願い致します。
710Name_Not_Found:2012/08/06(月) 16:08:21.33 ID:kFB/d7NV
ところで激安中古ソフト屋さんでググると使えるソフトがかなり安い
おススメ!!使えた
711Name_Not_Found:2012/08/19(日) 15:06:53.07 ID:???
>>709
とりあえずRuleは?以降にマッチさせられないと思った。
712Name_Not_Found:2012/08/24(金) 16:01:27.49 ID:???
特定の拡張子へのアクセス制限についての質問です。
txtファイルにアクセス制限をかけています。
もちろん直接URLの入力ではアクセスできません。
が、そのまま他のページへとび、ブラウザの「戻る」ボタンで戻ると
txtファイルが表示されてしまいます。

これを防ぐ方法はありますか?
よろしくお願いします。
713Name_Not_Found:2012/08/24(金) 16:10:30.50 ID:???
>>712
それはアクセスできることを確認した時のブラウザのキャッシュを引っ張ってきてる可能性が高い。
714Name_Not_Found:2012/08/24(金) 16:23:55.30 ID:???
>>712
即レスありがとうございます。
初歩的なミスでした…。
キャッシュは消したつもりでしたが、レスのとおり残っていました。
完全にキャッシュをなくして確認したところ、
きちんとアクセスを拒否してくれました。

ありがとうございました。
715Name_Not_Found:2012/08/24(金) 20:21:12.90 ID:???
www有り無しを「有り」で統一したいのですが、
ドメイン名を記載せず、汎用的?に統一する記述の仕方はありませんでしょうか。
716Name_Not_Found:2012/08/25(土) 00:13:11.99 ID:???
DNSになんて書いてるん?
717Name_Not_Found:2012/08/25(土) 00:34:52.54 ID:???
>>715
正規表現なら^から\.までがwwwとマッチするか否かをチェックすればいいし、
とにかく先頭からドメイン手前の.までの.の数を正しく数えるだけだと思う。
718Name_Not_Found:2012/08/25(土) 06:30:18.99 ID:???
www.ne.jpをne.jpにするわけにはいかないとかの問題があるけどそこまでやりたいのかなあ
719Name_Not_Found:2012/08/27(月) 10:36:47.53 ID:???
>>718
なるほど、そういう問題点があったのですね。
720Name_Not_Found:2012/09/14(金) 17:36:10.96 ID:Zv6Z5gOu
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod)
RewriteRule ^aaa\.cgi/(.*) keitai\.cgi/$1 [L]
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod)
RewriteRule ^bbb\.htm$ keitai\.html [L]
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod)
RewriteRule ^ccc\.htm$ i_mode\.html [L]

上みたいな携帯振り分け。
1つのRewriteCondに対して1つのRewriteRuleではなく、
下みたいに箇条書きできる方法はありますか?
RewriteRuleを必要に応じて追加したいので、1つのRewriteCondに対して
複数のRewriteRuleを随時書き足せるようにしたいのですが・・・。

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} (iPhone|iPod)
RewriteRule ^aaa\.cgi/(.*) keitai\.cgi/$1 [L]
RewriteRule ^bbb\.htm$ keitai\.html [L]
RewriteRule ^ccc\.htm$ i_mode\.html [L]
721Name_Not_Found:2012/09/15(土) 14:46:10.40 ID:???
それぞれのCondのパターンを書き換えるのが面倒だという話なら
そのCondをSetEnvIfに置き換えてCondはそのSetEnvIfの
環境変数のフラグが立ってるかどうかに変えるとか?
722Name_Not_Found:2012/09/15(土) 22:20:57.38 ID:???
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね 
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね 
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね
創価死ね
723Name_Not_Found:2012/09/15(土) 23:24:31.65 ID:???
>>721
SetEnvIfですか。ちょっと厄介そうですが、その厄介を回避したいという気持ちから
今、改善策が閃いたような気がします。ご回答、ありがとうございます。助かりました
724Name_Not_Found:2012/09/19(水) 11:34:18.70 ID:???
お願いします


order allow,deny

allow from all

deny from xxx.xxx.xxx.xxx


との記述で、アクセス拒否をしています。
自分のIPを試しに拒否してみたのですが、
パブリックに置くと、パブリックに置いてあるhtmlは拒否出来るのですが
パブリックに置いてある任意のCGIフォルダのCGIは制限できず
動いてしまいます。
CGIにアクセスした時表示される画像ファイルだけは、表示されなくなります。

CGIのフォルダにhtaccessを入れても同じ状態です。

cgiそのものをhtaccessで表記したIPを拒否したいのですが
何が原因なのかわかりません。

お願いします。
725Name_Not_Found:2012/09/19(水) 17:16:34.76 ID:???
>>724
そのCGIのフォルダの中にも画像ファイルが置けるというタイプ?
正常に動作するCGI(500にならない)と「うんこ」とだけ書いた.htaccess(要は文法間違いw)を
CGIのフォルダにおいて、そのCGIにアクセスした時に500にならなければ
そのCGIのフォルダでは.htaccessは使えない。
何か余計な制限の掛かった特殊なフォルダ名にしてしまってるとかあるかも?
726Name_Not_Found:2012/09/19(水) 19:42:27.62 ID:???
ブラウザのキャッシュじゃね?
727724:2012/09/20(木) 01:55:21.98 ID:???
>>725

ありがとうございます。
うんこだけの記述のhtaccessを入れたら
500 サーバーエラーになりました。
cgiフォルダ名は任意で作れるサーバーです。

>>726
再読み込みしても、しっかりcgiが動きます
ブラウザ変えても然り。

パブリックのトップページ等はhtaccessで制御出来ているのですが。
テストで入れた自分のIPも、プロバイダ丸ごとでも試したりですが
パブリック直下のCGIはどうしても動いてしまいます。
CGIで指定しているCSSは読み込まれてない状態にはなります。

CGIそのものはhtaccessで制御出来無いサーバーなのでしょうか・・・。
728Name_Not_Found:2012/09/20(木) 06:51:24.21 ID:???
>>726
CGIはHTTPヘッダ周りまでしっかり作り込まれたものじゃないとほぼキャッシュされないよ。

>>727
CGIのフォルダの中の.htaccessでその結果なら.htaccess自体は働いてるとして。
フォルダの特定階層以下から設定の上書き可能範囲を変えるという回りくどいこともできるけど、
とりあえず
<Files "cgiのファイル名">
</Files>
で囲んだ中でアクセス制限の設定をしてみるとか?
729Name_Not_Found:2012/09/20(木) 12:38:03.81 ID:???
>>728
度々、ありがとうございます。

教えて頂いた方法でcgiファイルを指定したのですが
テストで自分のプロバイダを拒否した場合は、拒否が働くのですが
自分のプロバイダを外し、拒否したい(中国系のIPですw)IPを書き加えて設置すると
500のサーバーエラーが出ます。。。

<Files "cgiのファイル名">

order allow,deny

allow from all

deny from xxx.xxx.xxx.xxx

ErrorDocument 403 http://xxxxxxxxxxxxxxxxxxxxxxxxx

</Files>

で記述しているのですが・・・。
これで自分のプロバを設定すれば、記述したURLへ飛びます。
拒否しているとhtaccessが発動しているのに、拒否してないと500エラーが出てしまうので
困りました・・・。
730Name_Not_Found:2012/09/20(木) 14:57:15.24 ID:???
500エラーはあからさまにうんこと書いた時みたいに文法上の間違いがある可能性が高いから、
空白とか改行とか単語のスペルミスとかがあるとか。
731Name_Not_Found:2012/09/23(日) 10:45:29.09 ID:???
該当するIPで制限をかけているんだけど、何故か弾けていないようなので質問します

order allow,deny
allow from all
deny from IPアドレス

と記載しているのですが、弾けていないようです
試しに自分のIPアドレスを記載してみたところ、
403が返ってくるのでhtaccess自体は機能していると思うのですが
何故弾くことができないのか、理由が全くわかりません
どなたか宜しくお願いします
732Name_Not_Found:2012/09/23(日) 18:18:41.75 ID:???
>>731
はじきたいIPが記載されてないだけでは?
733Name_Not_Found:2012/09/25(火) 00:04:48.07 ID:???
>>732
731です。
何故だかわかりませんが色々弄ってみた結果、解決いたしました。
IPはしっかり記載されていましたし、何が原因だったのかちょっとわかりませんが、
もしかしたらただアップロードできていなかっただけかもしれません。
ありがとうございました。
734Name_Not_Found [sage]:2012/10/19(金) 17:51:07.59 ID:GMZvNOqK
色々弄ってると出来ちゃう事てよくあるよね
この板参考になるな
ところで激安PCソフトダウンロードマートでググると使えるソフトがかなり安い
おススメ!
735Name_Not_Found:2012/10/21(日) 23:11:05.69 ID:???
aguseからの閲覧を禁止したいのですが
どうすればいいでしょうか
736Name_Not_Found:2012/10/22(月) 09:03:17.82 ID:???
>>735
自意識過剰君、誰もお前のところなんて見ないって
737Name_Not_Found:2012/10/22(月) 18:38:49.70 ID:???
>>736
aguseばかりから何十回も来ました。それで気づきました
たぶん自己解決しました
738Name_Not_Found:2012/10/22(月) 19:57:09.18 ID:???
そうまでしてブラクラさせたいの?
739Name_Not_Found:2012/10/22(月) 20:06:45.88 ID:???
馬鹿なんでしょ
740Name_Not_Found:2012/10/22(月) 20:07:50.36 ID:???
ホームページNinjaの普通のサイトで、作ったばかりです
ブラクラ仕掛ける技術があればこんな事聞きません
741Name_Not_Found:2012/10/22(月) 20:11:13.83 ID:???
確かにブラクラなんて馬鹿じゃなきゃ思いつかないな
742Name_Not_Found:2012/10/22(月) 20:33:09.16 ID:???
>>740
aguseを蹴りたい理由は?
それなら百度蜘蛛だのGoogle botの方がよほど気持ち悪い
743Name_Not_Found:2012/10/22(月) 20:46:50.97 ID:???
>>742
ただでさえ閲覧者が少ないのに何人見てくれたのか分からなくてつまらないからです
それとそういう方法があるかどうかが気になって質問しました
Google botも時々来ます
百度蜘蛛はまだ一度も来ていません
744Name_Not_Found:2012/11/08(木) 10:07:58.84 ID:ZFKNANf3
サイトを移転したいので、今までアップしてきたサイトをネット上から削除して
ErrorDocument 404 http://・・・/404.html
htaccessの上の記述で、移転先の通知をしたいのですが
index.htmlのおいてあるディレクトリ「・・・/」も含め下の階層のページにアクセスすると全て
500errorとなってしまいます。
Permission604のasciiモードで送信しています
記述はこれだけなので文法ミスがどうしても見つけられません
何が考えられるでしょうか?
745744:2012/11/08(木) 10:09:04.43 ID:???
不備がありました。.htaccessを置いてある鯖は移転前の鯖です
746744:2012/11/08(木) 11:19:13.62 ID:???
引き続きすいません
前の鯖でhtaccessに制限があったみたいです・・・。失礼しました
747Name_Not_Found:2012/11/13(火) 07:00:09.65 ID:???
RewriteCondに対して複数のRewriteRuleを与えるにはどうしたらいいでしょうか?

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^a$ /aaa/a.php [L]

RewriteCond %{REQUEST_FILENAME} !-f # これを入れないとエラーになる
RewriteCond %{REQUEST_FILENAME} !-d # "
RewriteRule ^b$ /bbb/b.php [L]
748Name_Not_Found:2012/11/13(火) 10:36:25.53 ID:???
いやいや、Ruleに対して複数与えられるのがCondだからw
Ruleが複数あればそれだけCondが増えるのは仕方ない。
ただ、>>747のRuleは
RewriteRule ^(a|b)$ /$1$1$1/$1.php [L]
でたぶん1つにまとまる。
749Name_Not_Found:2012/11/13(火) 23:30:48.67 ID:???
>>748
おおまとめられるんですね ><
ありがとうこざいます
750Name_Not_Found:2012/11/21(水) 13:16:30.56 ID:???
mod_rewriteで特定のクエリ文字列を削除するにはどうしたらいいのでしょうか?

例:/index?hoge1=a&hoge2=b
上記の場合hoge1=aもしくはhoge1=のみを取り除きたい(必ずしもa等指定されているとは限らず空の場合もある)
751Name_Not_Found:2012/11/21(水) 18:42:20.25 ID:???
Condで必要な部分だけ取り出して、Ruleでまとめるしか思いつかない。
そういうのはたいてい内部で処理するプログラムのパラメータなんだから、
そのプログラム側で無視するべき。
752Name_Not_Found:2012/12/10(月) 22:24:02.73 ID:???
アパッチの再起動って意外と忘れるよね
753Name_Not_Found:2012/12/10(月) 22:36:29.47 ID:???
いいえ
754Name_Not_Found:2012/12/11(火) 14:16:01.54 ID:???
このスレにおいては全く無関係。
755Name_Not_Found:2013/01/07(月) 10:38:09.35 ID:Y9uTYFHN
r989.24-4-9.wer.kwa.ne.jp

というホストを規制したい場合ですが、.wer.kwa.ne.jp だけでなく
地域をしめす先頭のr989.も含めたいのです。
荒らしは頻繁につなぎかえるので24-4-9の部分はよく変わります。
この場合、どういう記述をすればよいのでしょうか?
よろしくお願いします。
756Name_Not_Found:2013/01/07(月) 19:33:30.73 ID:???
つなぎ変えたIPアドレスがどうなってるか次第。
192.0.2.30が192.0.2.210に変わる程度なら192.0.2.0/24で。
757Name_Not_Found:2013/01/07(月) 23:54:51.36 ID:???
ホストでは無理で、IPアドレスでなら規制できるのですね。
ありがとうございます。
そのヒントで調べてみます。
758Name_Not_Found:2013/01/08(火) 09:47:39.82 ID:???
正規表現で書けばいいのに
759Name_Not_Found:2013/01/21(月) 18:18:26.23 ID:Kb66Cyrf
.htaccessで、
特定のファイルへのアクセスのみ、そのまま通して、
それ以外は、http://a.jp/test.php?要求されたファイル
にリダイレクトしたいのですが、どうすればいいですか?
教えてください。
760Name_Not_Found:2013/01/21(月) 19:31:52.88 ID:???
まずRFCも読めない馬鹿には無理
761Name_Not_Found:2013/01/22(火) 15:05:31.91 ID:???
760では不可能
762Name_Not_Found:2013/02/06(水) 14:40:37.77 ID:wJl/V4P1
質問させて下さい

.htaccessでアクセス制限をしようと思っているのですが、
KD******.au-net.ne.jpの人を拒否→403.html(作ってサーバーに上げています)に転送したい場合の表記は、


order allow,deny
allow from all
deny from KD******.au-net.ne.jp
ErrorDocument 403 http://www.*******/403.html

で合っていますか?
これで設定していたのですが、
解析を見るとKD******.au-net.ne.jpの拒否したい人のログが残っていて、
403に転送された様子もありません

KD******.au-net.ne.jp
ではなく
.au-net.ne.jp
で表記しないといけないのでしょうか?
掲示板のCGIで使いのですが…

宜しくお願いします
763Name_Not_Found:2013/02/06(水) 16:26:23.52 ID:???
>>762
>deny from KD******.au-net.ne.jp
実際にこれを書いてる?
だったら間違い
764Name_Not_Found:2013/02/06(水) 18:31:17.61 ID:wJl/V4P1
>>763
レスありがとうございます
実際は***の部分はホストがわかっているのでそのまま書いています
(KD0120111.au-net.ne.jpみたいな感じで)
ホストが変わった様子もないのですが何故かはじけておらず…

自分のホストでテストしたときは、ちゃんと403になって403.htmlに転送されたのですが…
その人はiPhoneなので、何か関係あるのでしょうか
自分がテストしたのはPCからです
765Name_Not_Found:2013/02/07(木) 01:04:14.51 ID:FTlp3Gma
質問させてください..!

ドキュメントルートに置いた.htaccessに、
特定のディレクトリ配下のページへのアクセスのタイミングでBasic認証を出す
方法はあるでしょうか?

なお「特定のディレクトリ」は実際にはサーバになく、
DrupalというCMSが作り出したアドレスです。
サーバをのぞいても「user」ディレクトリはございません。

ちなみに、うまくいかなかった部分は以下です。
<Files "^user">
 Basic認証の記述
</Files>
/user配下以外のページでも、cssなどを読み込むタイミングで
条件にひっかかってしまうようです
766Name_Not_Found:2013/02/19(火) 13:02:59.39 ID:???
質問させて下さい。

http://mydomain.com/123.html
というアクセスを
http://mydomain.com/index.php?url=123.html
というように書き換えたいです。

どのようにすれば良いでしょうか?
アドバイス、よろしくお願いします。
767Name_Not_Found:2013/02/19(火) 19:03:50.83 ID:???
そのドメイン、あなたのじゃないですよね?
ルールくらい守りましょ
768Name_Not_Found:2013/02/20(水) 10:13:27.23 ID:???
>>767
そんなところは重要じゃない。
指摘するなら質問の回答も書け。
769Name_Not_Found:2013/02/20(水) 10:14:30.20 ID:???
次の質問ドゾー
770Name_Not_Found:2013/02/20(水) 10:16:00.05 ID:???
RFC守ることが重要じゃないとか()
771Name_Not_Found:2013/02/20(水) 13:30:08.35 ID:???
>>770
そこじゃない。
それの指摘だけして質問への回答はしないなら出てくるなと。
772Name_Not_Found:2013/02/20(水) 14:39:14.45 ID:???
すごい自己中な質問者は放置で

次の質問ドゾー
773Name_Not_Found:2013/02/20(水) 14:52:41.77 ID:???
質問者じゃねぇ。
RewriteRule ^(.*)$ http://example.com/index.php?url=$1
とか回答を用意してから仕切れ。
774Name_Not_Found:2013/02/20(水) 16:02:30.48 ID:???
仕切り屋うざい
775Name_Not_Found:2013/02/20(水) 18:21:37.28 ID:???
以上、自演乙
776Name_Not_Found:2013/02/23(土) 09:59:32.14 ID:???
すでにshift-jisでURLエンコードされた数えきれないほどのアドレスをUTF-8エンコードされたアドレスにリダイレクトってできますか?
777Name_Not_Found:2013/02/24(日) 10:00:24.42 ID:???
>>776
phpやPerlでうけてリダイレクトするほうが楽じゃないの?
778Name_Not_Found:2013/02/25(月) 00:55:41.94 ID:???
自分の認識が合っているかお伺いしたいのですがスレ違いだったらすいません。

ルート/サブ/index.html とした際に
ルートへのアクセスをサブにリダイレクトするように.htaccessで設定した場合
クローラーもリダイレクトする?のでrobots.txtは ルート に置いても意味が無い
サブ に置く という認識で合ってますでしょうか?
779Name_Not_Found:2013/03/07(木) 17:08:37.34 ID:gFKgwvwG
間違ってxreaスレに書き込んでしまいましたので、改めてこちらに書き込みます。

済みません、教えて下さい。
m45.coreserver.jpを使っています。
public_html/example.com/index.htmlにアクセスしたとき、夜間だけ別ファイルを表示させたいのですが、ブラウザのURL表示は変わらないでほしいのです。

.htaccessにmod_rewriteを書き込むのが、うまく動いてくれません。

RewriteEngine on
RewriteBase /example.com/
RewriteCond %{TIME_HOUR}%{TIME_MIN} >1900
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0500
RewriteRule ^/index.html$ /night.html

これではダメみたいです。
何か、間違っているのでしょうか???
780Name_Not_Found:2013/03/07(木) 21:12:59.68 ID:???
Baseを指定したらRuleは/からは始まらないとか
そんな感じだったような気がした。
781779:2013/03/08(金) 02:47:17.09 ID:6oRwBXkf
>>780
ありがとうございます。
時間帯の指定が、うまく効かない様です。

あと、同じドメイン内の別ページに飛ばしたときはブラウザのアドレスバーのURL表示が変わりませんが、別ドメインに飛ばすと、変わってしまいます。
アドレスバーの表示そのままで別ドメインの表示をさせたいです。
782Name_Not_Found:2013/03/08(金) 07:13:44.72 ID:???
フィッシングサイト乙
783Name_Not_Found:2013/03/15(金) 18:34:48.88 ID:???
http://example.com/test/index.php?para1=1234&para2=123 (パラメータの中身の数字は変動)
これを下記にリダイレクトする方法を教えて下さい。
http://example.com/test/paraone1234paratwo123.html

静的表示までは完了しております。
パラメータを保持したままhtmlにリダイレクトする記述方法がわかりません。
784Name_Not_Found:2013/03/15(金) 21:23:33.73 ID:???
>>783
.htaccessであれこれやらずに、index.phpのほうでリダイレクトすれば良いじゃん
785783:2013/03/16(土) 12:21:52.25 ID:???
>>784
一応もうリスト出す際には.htmlでリンク書き出してるんですが、
出来ればhtaccessで
ttp://example.com/test/index.php?para1=1234&para2=123 (パラメータの中身の数字は変動)
から
ttp://example.com/test/paraone1234paratwo123.html
に変更したいんですよね。
786Name_Not_Found:2013/03/16(土) 17:38:35.74 ID:???
CondでQUERY_STRINGを全部拾って、RuleでURLを組み立てるときに%を使って全部セットするとかQSAとか。
787Name_Not_Found:2013/03/27(水) 11:26:33.58 ID:7gZuVSnI
WordPressユーザーです。
外国からのコメントスパムが増えたので、
http://cmf.ohtanz.com/blog/archives/64
RewriteEngine on
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{REQUEST_URI} .*\/wp-comments-post\.php.*
RewriteCond %{REMOTE_HOST} !.*\.ohtanz\.com$ [NC]
RewriteCond %{REMOTE_HOST} !.*\.nifty\.com$ [NC]
RewriteCond %{REMOTE_HOST} !.*\.bbtec\.net$ [NC]
RewriteCond %{REMOTE_HOST} !.*\.jp$ [NC]
RewriteRule ^.*$ ? [F]

.htaccessファイルを作ったところ、たしかに、コメントスパムの抑止は実現したのですが、
自分の投稿も抑止されてしまいました。
当方は、ソフトバンクのADSL、携帯もソフトバンクです。
どちらも見ることは出来るのですがコメントを書き込めなくなってしまいました。
この場合、どこが悪いのでしょうか?
788Name_Not_Found:2013/03/27(水) 16:02:22.97 ID:???
逆引きができているのか定かではないのに
REMOTE_HOSTを見て拒否しようとしているところ。
789Name_Not_Found:2013/03/27(水) 19:35:15.12 ID:7gZuVSnI
>>788
レスありがとうございます。
しかし当方無学なもので、おっしゃってる意味が理解出来ません。
.htaccessの文法の学習は後回しにするとして、
>>787を、「日本からのコメント投稿は可能、外国からのコメント投稿は不可」にするにはどのように書き換えればいいか教えて頂けないでしょうか?
790Name_Not_Found:2013/03/27(水) 19:38:16.43 ID:???
日本国内以外のIP弾けばいいだろ
791787:2013/03/28(木) 01:37:18.38 ID:???
>>790
> 日本国内以外のIP弾けばいいだろ
そうです。そのやり方を知りたいのです。
792Name_Not_Found:2013/03/28(木) 07:26:01.83 ID:???
検索する気がないってすごいな
deny all
allow from 〜
で国内のIPアドレスの範囲の取得方法は
日本国外からのアクセスを制限する
などのキーワードでわかるはずですが?
793Name_Not_Found:2013/03/28(木) 09:39:39.98 ID:???
複数サーバーをレンタルしており、、アクセス規制の書き換えで
頻繁に毎度全てのサーバーに.htaccessをアップしている状況ですが、
どこかの設定で、サーバー元の.htaccessを参照するのではなくて、
違うサーバーの.htaccessを参照するように指定することは出来たりするでしょうか。
そうすれば一つの.htaccessをアップするだけで済みそうと思ったのですが。。
794Name_Not_Found:2013/03/28(木) 09:47:37.36 ID:???
他所のサーバーから見える隠しファイル(笑)
795Name_Not_Found:2013/03/28(木) 11:35:58.88 ID:???
RSSに対応していないサイトでも閲覧者が勝手にRSSを作れてしまうサービスがあるようですが、
ディレクトリにBASIC認証を導入する、サービスを指定して弾く以外の方法で
そういったこと全般(RSS配信など)を防ぐ方法はありますか?
796Name_Not_Found:2013/03/28(木) 16:24:23.18 ID:???
バカが得意気にわめき散らしているけど、日本国内のIPアドレスだけを
「誤爆なく」.htaccessに書いていくのは難しいですけどねw
IPv4は所有者を変えずに別事業者への貸し借りもあるみたいだし。
797Name_Not_Found:2013/03/28(木) 16:26:00.18 ID:???
WP側で日本語が含まれてないコメントを弾く方が早いんじゃない?
798Name_Not_Found:2013/03/28(木) 16:29:26.67 ID:???
.htaccessはディレクトリごとに設定を上書きするためのファイルだから、
サーバの構成を同じにしてサーバそのものを設定することができないなら
その.htaccessの手持ち側のファイルシステムで
名前のエイリアスを与えるなり複数ディレクトリでリンクするなり。
799Name_Not_Found:2013/03/28(木) 16:34:08.55 ID:???
そういう勝手にまとめるサービスは、このスレの自己顕示欲ばかり強くて答えは持ってこない奴みたいに
なんらかの主張をしてページを取得していくことが多いから、
例えばUser-Agentあたりを使ってのアクセス制限をすれば回避できる。
800Name_Not_Found:2013/03/28(木) 19:54:20.92 ID:???
user-agentは簡単に誤魔化せるので却下です
801Name_Not_Found:2013/03/28(木) 20:16:26.80 ID:???
そういえばflickrはAPIを使わずスクレイピングした場合は上手いこと弾いてたな
802Name_Not_Found:2013/03/28(木) 22:08:37.37 ID:???
それを.htaccessだけでやれというのは無理があるけどね。
モジュールの仕込みができるならすべて直接httpd.confに書けよと。
803Name_Not_Found:2013/03/29(金) 20:01:21.96 ID:???
単純に興味本位で聞いてみるけど

なんか国外からのアクセス規制についての質問がやたら多い様子だけど
なんでそんなに需要あるんだろう?
どういう類いのページで必要とされるの?
804Name_Not_Found:2013/03/29(金) 20:22:20.09 ID:???
質問に書かれてるけどよく読んだら?
スパム対策
805Name_Not_Found:2013/03/29(金) 21:54:17.68 ID:???
大阪民国を弾かない時点で意味が無い
806Name_Not_Found:2013/03/30(土) 07:26:11.24 ID:6x7NQRVk
つか、アパッチに来る情報は、もれなくphpで取得出来るのでしょうか?
807Name_Not_Found:2013/03/30(土) 21:37:27.83 ID:???
スマフォサイト(サブディレクトリ)からPCにとばすには
どうすればいいでしょうか?
強制的にスマフォサイトにいきます
808Name_Not_Found:2013/03/30(土) 21:51:52.70 ID:???
>>805
大阪民国の割り当てIPアドレスの範囲ってどこに載ってる?
あとcTLDってなんだ?.osか?
809Name_Not_Found:2013/04/16(火) 23:23:24.54 ID:???
仕事と趣味とエロに精通した皆様の知恵と力をお借りしたく、この場で質問させていただきます。
何度か掲示板を荒らされたことから、仲間限定のアクセス制限を施したのですが上手くいきません。
一人(Yahoo!BB)から「アクセスできないんじゃー、ハブるなーボケェー」と言われました。
.htaccessの記述に関しては調べ、Yahoo!BBを許可しているものの上手く行きません。

記述は次の通りです。はじめに全てを拒否し、仲間が契約しているプロバイダを許可しています。
よろしくお願い致します。

order deny,allow
deny from all
(略)
allow from .bbtec.net
(略)
810Name_Not_Found:2013/04/17(水) 23:52:49.68 ID:???
仲間限定ならパスワード制限にしなよ
811Name_Not_Found:2013/04/18(木) 09:04:41.66 ID:???
名前解決に頼る時点で()
812809:2013/04/18(木) 21:08:29.05 ID:???
DNSに頼る時点で知識ゼロなのは自覚しているんだけど、アクセス制限の参考になるところの多くはホスト名を使っているのですよ。
IPアドレスのほうが負荷がかからない、でもホスト名の記述のほうが判り易い。
それでもアクセスできないので、Yahoo!BBの奴に一度アクセス解析のページを踏んでもらってIPアドレスをチェックしたら
「softbank********.bbtec.net」ではなくて、「****. in-addr.arpa」になっていた。
ホスト名で記述しても上手く行かない理由はこれなのか、これはDNSが処理できなかったと見るべきなのかなぁ。

何にしても問題が解決しているわけではないので、プロバイダのIPアドレスをまとめているサイトをみつけたので、
これからその情報をもらってhtaccessをIPアドレスの記述にして再度トライをするところです。


今更だけどパスワードは考えていなかった...
なんか悔しいので、今のIPアドレスのアクセス制限で様子を見てみます。
813Name_Not_Found:2013/04/19(金) 00:05:26.30 ID:???
パスワードのほうがだんぜん楽
814Name_Not_Found:2013/04/19(金) 07:17:32.11 ID:???
>>812
名前解決は出来るとは限らない時点でアクセス制限としては不適当
ISPのIPレンジは常に同じではないからどうかとは思う

809が逆引きを理解できていない時点で話になっていないとか

ホスト名のアクセス制限はapacheの負荷的にもお勧めは出来ない
ベストはパスワードでのアクセス制限だろうし
次点は仲間にIPアドレスを伝えてもらってそのIPだけを開ける
# 私のIPは192.168.0.2です!(オイ!!! となる可能性は高いが
815Name_Not_Found:2013/04/19(金) 09:17:11.69 ID:???
誰も質問に回答できないんだな

俺もホスト名でアクセス制限しているけど、809の書式でbbtec.netが拒否される理由は知りたい
816Name_Not_Found:2013/04/19(金) 09:27:56.37 ID:???
apacheが名前解決できないときは通れないのは理解できる?

そもそも仲間内のサイトを何万人にだか開放する意味が分からないんだが
817Name_Not_Found:2013/04/19(金) 18:53:30.81 ID:???
>>813
これもユーザーのリストのファイル置き場のパスがわからないと使えない。
818Name_Not_Found:2013/04/19(金) 19:52:30.88 ID:???
>>817
BASIC認証がわかっていない?
819Name_Not_Found:2013/04/19(金) 23:35:01.54 ID:???
>>809
IPでの拒否に拘る理由は何?
パスワードでロックして仲間だけにパスワード教えたほうが簡単だろう
820Name_Not_Found:2013/04/20(土) 08:05:53.08 ID:???
>>818
そのBASIC認証の設定にサーバルートからの相対パスか絶対パスを
設定する必要のあるディレクティブがあることを言ってるんだけど、
そんなことも知らないのに突っ込んで来ちゃったかw
821Name_Not_Found:2013/04/20(土) 09:46:53.91 ID:???
まずい本物の馬鹿だ…
822Name_Not_Found:2013/04/20(土) 12:57:38.46 ID:???
>>820
BASIC認証なんてのはそんな小難しいもんじゃないよ
FTPいじる程度の事が出来るなら、ぐぐって解説してるページ探して見れば2分で出来る
823Name_Not_Found:2013/04/20(土) 13:21:43.89 ID:???
FTPが触れてもそれがchrootされていたりWebサーバ側がchrootされていたりして
AuthUserFileのパスが特定できなければ使えないよw
AuthUserFileのファイルはWebサーバが読めるファイルである必要があるから
他のHTMLなどのファイルの隣に置いたらそれも読めちゃうしw
824Name_Not_Found:2013/04/20(土) 13:40:06.90 ID:???
ぼうず
httpd.conf見たことあるか?
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
825Name_Not_Found:2013/04/20(土) 14:09:45.26 ID:???
いまだにFiles ~とかRequireではなくOrder, Denyとかw
826Name_Not_Found:2013/04/20(土) 14:24:14.98 ID:???
>>823
Webサーバ側で使えない設定になってるなら使えないが、そういう事を言ってるのではない事くらい分かれ
827Name_Not_Found:2013/04/20(土) 14:55:26.55 ID:???
ここは.htaccessのスレだぞ?
置いたAuthUserFileやAuthGroupFileのパスが何らかの形で
わかるように公表されていなければ基本的には使えないものだぞ?w
828Name_Not_Found:2013/04/20(土) 15:10:25.64 ID:???
ここはhtaccessのスレだぞ?

おまいの認識などどうでもいいが、
レンタルサーバーでBASIC認証する程度の事を言うなら、
そんな小難しい事はイラネ
829Name_Not_Found:2013/04/20(土) 15:12:10.22 ID:???
グダグダ的外れな事を言ってる事からも察しが付くが、
レンサバでBASIC認証をした事がないんだろう
830Name_Not_Found:2013/04/20(土) 15:19:16.02 ID:???
おまけにレンサバでapache2.4なんて鯖があると思ってるみたいだし
831Name_Not_Found:2013/04/20(土) 15:40:16.91 ID:???
レンタルサーバーでしかBasic認証を使ったことがない奴はこれだからw
832Name_Not_Found:2013/04/20(土) 19:08:09.23 ID:???
レンサバでも自前鯖でもやる事は大して変わらないんだけど?
833Name_Not_Found:2013/04/21(日) 22:15:16.65 ID:???
Basic認証によるアクセス制限は掛けられるが、
その制限を通過するためのユーザとパスワードが
書かれたファイルの場所をうまく設定できないような所を
使ったことがないんだろ?

アクセス制限にドメイン名やホスト名を書くことはできても
サーバーがIPアドレスからの逆引きをしないから
手落ちになるようなところと似たようなもん。
834Name_Not_Found:2013/04/22(月) 02:10:58.12 ID:???
君が馬鹿だってことはよくわかった
835Name_Not_Found:2013/04/22(月) 07:57:57.40 ID:???
人を見下したかったら、人を馬鹿だと言うこと以外で返してみろよw
隙間の多い人間がアクセスの制限をしても隙間ができるんじゃない?w
836Name_Not_Found:2013/04/22(月) 14:18:47.14 ID:???
>>835
自己紹介かとおもたw
837Name_Not_Found:2013/04/22(月) 15:16:39.46 ID:???
>>836
自分のことではないと他人へ押し付けたくなること言われたからと応戦ばかりする奴より、
手間をかけずに一発で思い通りに動作する理由付きの回答を持ってくる奴が
このスレで一番必要とされているというのがわからないのかな?
質問スレなんだからw
838Name_Not_Found:2013/04/23(火) 16:30:24.61 ID:???
>>833
海外も含めてレンサバの大手でそんなメンドクサイところって十数社使ってみたけど一社も無かったけどな
自前鯖なら設定は自由にやれるから更に楽だし

で、おまいさんの主張の肝は完全に崩れたが、何が言いたい?
839Name_Not_Found:2013/04/23(火) 16:45:20.38 ID:???
>>833
アクセス制限掛けても、その開錠が出来ないようなら「掛けた」とは言わないね
扉に鍵掛けて鍵穴を溶接で塞ぐようなもの
鍵は開けられてこそ鍵だろ
840Name_Not_Found:2013/04/23(火) 22:14:11.93 ID:???
大手とは言い切れないセコい貸しWebスペースみたいなところで
.htaccessのLimitの他にAuthConfigが使えるようになっていたところがあったが、
FTPからファイルが置ける場所のWebサーバから見たパスが公表されていなかったため
鍵を取り付けることができても開けられないという状態が正に存在したわけだが。

主張の肝?
質問者がどこのサーバと言っていない以上、このような例外の存在を
全く考慮してないような程度の回答なんかしてるんじゃねーよと。
841Name_Not_Found:2013/04/24(水) 00:05:42.14 ID:???
以上、イカレポンチの独演会でしたw
842809:2013/04/24(水) 17:22:55.24 ID:???
やっとこのスレに戻ってきました。毎日アクセスできないので遅くなりました。
沢山のアドバイス有り難うございます。

原因がなんとなく判りました。
ヤフーの奴はパソコン初心者で何も判らんと言い、こちらからの質問を何度も誤摩化しているのですが(このやり取りに数日)、
どうみても海外のプロクシを使って掲示板にアクセスしている可能性が大!
掲示板を荒らしていた奴が1人だと思っていたんだけど、もしかしてコイツも仲間なのかとの疑惑が膨らみつつあります。

さぁ、どうしようかな
もっと面倒なことになってきそうな今日この頃。
843Name_Not_Found:2013/04/24(水) 19:19:19.74 ID:???
ページの生成とポスト用のプログラムが別になっているなら
<Files "post.cgi">などを使ってポスト用のプログラムだけに
アクセス制限を掛けるとか。

そしてしばらく投稿にはアクセス制限をかけておきますと
挑発する文章を投稿しておくw
844Name_Not_Found:2013/04/24(水) 19:52:23.18 ID:???
パスワード認証かけときゃ言い逃れできんだろうに
845Name_Not_Found:2013/04/24(水) 21:52:56.81 ID:???
質問です。既に
http://example.com/.htaccessと
http://example.com/wordpress/.htaccessに
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
と記述して、http://example.com/wordpress/Aをhttp://example.com/Aにリダイレクトさせています。この状態で
http://toro.2ch.net/test/read.cgi/blog/1361398632/184で質問した通り
「リファラ(リンク元)がhttp://example.comでないアクセスはhttp://example.comにリダイレクトさせる
というようにもしたいです。
(簡単にいうと、トップページ以外はブックマーク禁止)

RewriteCond %{REQUEST_URI} !^/$
RewriteRule ^/.*$ http://example.com [R]
を足してできると思ったのですが、
記述前と同じようにトップページ以外にも直接アクセスできている状態です。
助言お願いします。
846Name_Not_Found:2013/04/25(木) 07:53:24.60 ID:???
> を足してできると〜
の2行は動作していない無意味なルール。

Condで%{HTTP_REFERER}のチェックをするものを追加。
^http://exam(ryと^$あたりの2行。
それらのCondの次のRuleでトップにリダイレクトすれば良いんじゃない?
847Name_Not_Found:2013/04/25(木) 14:26:05.45 ID:???
>>846
>^http://exam(ryと^$あたりの2行。
はどういう意味でしょうか?

RewriteCond %{HTTP_REFERER} $^
RewriteRule . /index.php [L]
↑と記述してみましたが、やはり
トップページ以外にも直接アクセスできています。
848Name_Not_Found:2013/04/25(木) 16:30:24.89 ID:???
Cond %{HTTP_REFERER} !^$
Cond %{HTTP_REFERER} !^http://example
でこの2つとは関係ないRefererヘッダを突っ込んできたら
Ruleでリダイレクトかな?
849Name_Not_Found:2013/04/25(木) 16:51:04.53 ID:???
それだと直リン(ブクマ)可にならない?
850Name_Not_Found:2013/04/25(木) 17:06:51.35 ID:???
大半のブラウザのブックマークも駄目にするなら
!^$の行は消さないといけないけど、
極一部のブラウザのようにRefererヘッダを送らないアクセスでは
サイト内をうろつけなくなる。
Refererヘッダを送ることは必須ではない以上(以下略

Header add Set-Cookie "X=X; path=/"
として
RewriteCond %{HTTP_COOKIE} !X=X
RewriteRule(ry
というネタもあるけど、ExtensionモジュールであるRewriteはインストールされていても
同じくExtensionモジュールであるHeadersはインストールされていないことが多いので(略
CookieもCookieでReferer以上に送る送らないの選択の自由度が高いし。
851Name_Not_Found:2013/04/25(木) 17:12:00.20 ID:???
Cookieをセットするだけなら
Rule /index.php - [CO=X:X]
でいけるのか。
852845:2013/04/25(木) 17:40:29.82 ID:???
すみません、話が広がりすぎてわからなくなっています。
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^ http://example.com
RewriteRule ^.+$ / [R=302,L]
または
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^ http://example.com
RewriteRule . /index.php [L]
と記述したところ、全てのページで500errorが出るようになりました。
853Name_Not_Found:2013/04/25(木) 18:32:24.52 ID:???
^とhの間にスペースがあるから
854845:2013/04/25(木) 20:03:06.17 ID:???
>>853
失礼しました。
修正しましたが、記述前と同じ状態です。
855845:2013/04/25(木) 20:06:27.39 ID:???
「記述前と同じ」というのは
「トップページ以外にも直接アクセスできる」という意味です
856Name_Not_Found:2013/04/25(木) 20:44:35.78 ID:???
RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
の間に書くと?
857845:2013/04/25(木) 21:07:35.12 ID:???
>>856
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://example.com
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
という事ですよね?
トップページ以外は404になり、
トップページからリンクしている他のページに移動した場合でも404です。
858Name_Not_Found:2013/04/25(木) 22:04:24.25 ID:???
RewriteCond %{HTTP_REFERER} !^http://example.com

RewriteCond %{REQUEST_FILENAME} !-f
の間に
RewriteRule . /index.php [L,R]
かな?
859845:2013/04/25(木) 23:21:14.00 ID:???
>>858
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://example.com
RewriteRule . /index.php [L,R]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
でしょうか?
>>857と同じ結果です。
860Name_Not_Found:2013/04/26(金) 08:20:47.60 ID:???
.htaccessでRewriteBaseも使っているから
Ruleの/index.phpの2つはhttp:から書かないと
リライトする先のファイルを見つけられないということかな?
861845:2013/04/26(金) 11:21:04.55 ID:???
>>857>>859
RewriteRule . /index.php [L]

RewriteRule http://example.com/index.php [L]
に変えて両方試したのですが結果は
トップページ以外は404になり、同じでした。
862Name_Not_Found:2013/05/09(木) 18:40:21.74 ID:8TO26+6C
正午から22時の間だけ、かつ毎分30秒から45秒の間だけ、index2.htmlにリダイレクトさせたいのですが、うまくいきません。
コアサーバです。

RewriteEngine On
RewriteCond %{TIME_HOUR}%{TIME_MIN} >1200 [OR]
RewriteCond %{TIME_HOUR}%{TIME_MIN} <2200
RewriteCond %{TIME_SEC} >30
RewriteCond %{TIME_SEC} <45
RewriteRule ^([0-9]*)$ /index2.html?id=$1 [QSA,L]

記述どこか間違ってますか?
863Name_Not_Found:2013/05/09(木) 20:23:32.48 ID:???
フィッシングサイト乙
864862:2013/05/10(金) 03:05:00.94 ID:???
>>863
違います。
単純に、技術的な質問です。
865Name_Not_Found:2013/05/10(金) 07:20:05.25 ID:???
正午を含むなら>=1200で条件は全部andだろう。
そうすればフィッシュオン?
866862:2013/05/14(火) 15:42:53.36 ID:???
>>865
正午を含みます。
こういうことでいいのでしょうか?

RewriteEngine On
RewriteCond %{TIME_HOUR}%{TIME_MIN} >=1200 [AND]
RewriteCond %{TIME_HOUR}%{TIME_MIN} <2200 [AND]
RewriteCond %{TIME_SEC} >30 [AND]
RewriteCond %{TIME_SEC} <45
RewriteRule ^([0-9]*)$ /index2.html?id=$1 [QSA,L]
867Name_Not_Found:2013/06/21(金) 06:37:43.73 ID:???
画像の外部からの直リンクを拒否するために以下の内容になってます。

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://自分のサイト/.*$ [NC]
RewriteCond %{HTTP_REFERER} !biglobe\. [NC]
RewriteCond %{HTTP_REFERER} !bing\. [NC]
RewriteCond %{HTTP_REFERER} !excite\. [NC]
RewriteCond %{HTTP_REFERER} !goo\. [NC]
RewriteCond %{HTTP_REFERER} !google\. [NC]
RewriteCond %{HTTP_REFERER} !naver\. [NC]
RewriteCond %{HTTP_REFERER} !nifty\. [NC]
RewriteCond %{HTTP_REFERER} !yahoo\. [NC]
RewriteCond %{HTTP_REFERER} !search\?q=cache [NC]
RewriteRule ^.* - [F]

googleの画像検索とかは許可しつつ
https://plus.google.com/は拒否したいのです
知らん人から画像直リンクされまくってるのを何とかできたらなと。
868Name_Not_Found:2013/06/21(金) 06:41:08.24 ID:???
途中送信してしました。続きです。
上記のように許可したものの中に拒否したいものが含まれている場合は、
どのように書けばよいのでしょうか?
869Name_Not_Found:2013/06/21(金) 08:54:38.46 ID:???
先頭の!のないgoogle\.などより詳しいパターンのCondを
もう1行追加するだけで行けね?
870Name_Not_Found:2013/07/19(金) NY:AN:NY.AN ID:???
丸パクリサイトからのアクセスを制限したく、.htaccessを作成しているのですが
上手くいっていなのでお力を貸してください。
.htaccessの解説ページを参考に以下を試しました。

@
order allow,deny
allow from all
deny from 相手ドメイン

A
order allow,deny
allow from all
deny from 相手IP

@では、制限することができませんでした。
Aでは、制限ができましたが自分も制限されてしまいました。

記述の間違い、考え方、他の方法などありましたら教えてください。
よろしくお願いします。
871Name_Not_Found:2013/07/19(金) NY:AN:NY.AN ID:???
そういうのはリファラを見てSetEnvしてDeny from env= をする。
872Name_Not_Found:2013/07/20(土) NY:AN:NY.AN ID:???
>>870ですが、指定するIPの幅を広げてみたら対処できました。
>>871さん、アドバイスありがとうございました。
873Name_Not_Found:2013/07/25(木) NY:AN:NY.AN ID:???
海外のcPanelが使われている鯖を幾つか利用しています
正常に使えていたのに、画像やcssにのみ.htaccessが一切効かなくなる現象が起きて困っています

問い合わせても(正常だったのに)仕様だとか(直っていないのに)直ったとか言われ解決しないのですが
ユーザー側で解決できないのでしょうか
874Name_Not_Found:2013/07/25(木) NY:AN:NY.AN ID:???
鯖の仕様を変えたいなら会社ごと買い取るしかないだろう
875Name_Not_Found:2013/08/01(木) NY:AN:NY.AN ID:???
http://example.com/yasai?page=1
http://example.com/kudamono?page=2
というようなアドレスがあります。

?の部分をスラッシュに変更したいのですが、
どのように書けばよいのでしょうか?
http://example.com/yasai/page=1
http://example.com/kudamono/page=2

RewriteEngine On
RewriteRule ^/page=([0-9]+)$ ?page=$1

これではうまくいきませんでした。
876Name_Not_Found:2013/08/09(金) NY:AN:NY.AN ID:JmmXN7aa
http://example.com/?page=1

http://example.com/page_1.html にリダイレクトさせたいです

RedirectMatch /?page=([0-9])$ /page_$1.html も
RedirectMatch /\?page=([0-9])$ /page_$1.html もだめでした。

散々探したんですが、下記ページにて
http://q.hatena.ne.jp/1274974906
>クエリを含めたリライトはできない

これはもう諦めるしかないのでしょうか?
877Name_Not_Found:2013/08/10(土) NY:AN:NY.AN ID:???
クエリを拾ってきたい時はCondの方で%{QUERY_STRING}から
必要な部分を切り出してくる。
Ruleで%N。
878Name_Not_Found:2013/08/27(火) NY:AN:NY.AN ID:???
http://example.com/というドメインをとっていたとして
@http://abc.example.com/というサブドメインで
/abc.example.com内を表示する設定にした場合
Ahttp://example.com/abc.example.comでも同様の内容が表示されてしまうのですが
htaccessで/abc.example.comへのアクセスを@に限定してAからでは表示できないようにしたいのですが、設定の方法はあるでしょうか?
879Name_Not_Found:2013/08/28(水) NY:AN:NY.AN ID:???
そういうのは
Redirect permanent /abc.example.com http://abc.example.com/
の王道だけでいける。
880Name_Not_Found:2013/08/28(水) NY:AN:NY.AN ID:???
勉強不足でした…
ありがとうございます!
881Name_Not_Found:2013/09/04(水) 17:28:27.58 ID:???
SetEnvIf Referer "^http://www\.google\.co\.jp" Referer
って感じでGoogle検索からのアクセスを除外しているんだけど
PCだと除外できるけどiPhoneのSafariだとGoogle検索からアクセスできた
スマホ用でもGoogle検索からのアクセスのみを拒否したいんだけどどうしたらいい?
882Name_Not_Found:2013/09/04(水) 19:05:49.29 ID:???
Webmaster toolでGoogleのインデックス消せばいいじゃん
883Name_Not_Found:2013/09/04(水) 22:15:51.16 ID:???
すみません、おそらく同じ質問なのですが
>>845-861が分かる方いませんか?
884Name_Not_Found:2013/09/04(水) 22:53:48.56 ID:???
>>882
拒否した場合にはErrorDocumentを設定してミラーサイトに飛ばしています
サーバ負荷が高いのでGoogle検索のアクセスではミラーサイトを表示させたいです
Googleのインデックスを消したいわけではありません
885Name_Not_Found:2013/09/17(火) 22:22:02.31 ID:???
始めにあるサーバとサブドメインをお借りし (www.)abc.example.comというウェブページを公開しました
後に自分でabc.comを取得したのですが,設定画面からドメインが変更出来なかったので
ドメインエイリアスとして使用することにしました
調べて見よう見まねで次のように書いてみたのですがわりとゴリ押しした気分で不安です。
この書き方でよろしいでしょうか?

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.abc\.example\.com
RewriteRule (.*) http://abc.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^abc\.example\.com
RewriteRule (.*) http://abc.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.abc\.com
RewriteRule (.*) http://abc.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^.*/index.html
RewriteRule (.*)index.html$ http://abc.com/$1 [R=301,L]
886Name_Not_Found:2013/11/13(水) 18:42:05.36 ID:+Ka75SUy
.htaccess で特定のGIPのみアクセスすると設定した場合。
このサーバーはセキュアであると言って大丈夫なんでしょうか?

設定したGIP以外からアクセスされる可能性は無い?
887Name_Not_Found:2013/11/15(金) 19:46:24.78 ID:???
>>886
ftpaccessとパーミッションで別経路も塞がないと完璧とは言えない
共有鯖使ってる人は特に注意
888862:2013/11/18(月) 17:44:53.59 ID:???
>> 866の通りにすると、「Internal Server Error」が出てしまい、ページが表示されません。

[AND]の部分を[OR]に変えたら、表示されます。
しかし、実現したい動きは正午から22時の間だけ、かつ毎分30秒から45秒の間だけ、index2.htmlをindex.htmlの代わりに出すことです。

どうすればよいでしょうか。
889Name_Not_Found:2013/11/18(月) 22:41:39.87 ID:???
[OR]が無ければANDなのでANDというものは存在しない。
890862:2013/11/18(月) 22:56:15.02 ID:???
>>889
[OR]を全部削ったら、うまくいきました。
ありがとうございます!
891Name_Not_Found:2013/11/29(金) 21:13:34.08 ID:q/zzWeVt
/w/ または /c/ というパス以下にアクセスしたら /index.php/ 以下にパスを渡したいんですが上手く行きません
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} ^/[wc]/.+$
RewriteRule ^/([wc])/(.+)$ /index.php/$1/$2

何が間違っているんでしょうか?
892Name_Not_Found:2013/11/30(土) 17:22:00.31 ID:???
まずREQUEST_FILENAMEはアクセスしたファイルにゃんパスが入ってるから
それにマッチせず書き換えに入ってないんじゃね?
893Name_Not_Found:2013/12/01(日) 20:34:42.23 ID:???
RewriteCond %{REQUEST_FILENAME} ^/[wc]/.+$
↑は必要なくて、そして
^/([wc])/(.+)$  → ^([wc])/(.+)$
でした。失礼しました。
894Name_Not_Found:2013/12/04(水) 10:19:04.27 ID:no72uuNl
スマホ振り分けをしてて、
スマホでPC表示をさせたいです。

PC www.SAMPLE.com
スマホ www.SAMPLE.com/sm/
※スマホからはvm=pcというパラメータをつけて、PCモードへ。

RewriteEngine On

RewriteCond %{HTTP_USER_AGENT} (iPhone|Android.*Mobile|BlackBerry|Windows.*Phone) [NC]
RewriteCond %{QUERY_STRING} !from=sm
#スマホサイトでvm=pcパラメータを持っていたらリダイレクトさせない
RewriteCond %{HTTP_COOKIE} !vm=pc
RewriteCond %{QUERY_STRING} !vm=pc

RewriteRule ^(.*)$ /sm/$1 [R,L]
#RewriteRule ^(.*)$ http:\/\/www.SAMPLE.com\/sm\/$1 [R,L]

としたら、
スマホからリンクして、URL自体はwww.SAMPLE.comに移動します。
しかし内部パスがすべて/sm/がついてしまい、特に画像が表示されません。
内部パスもろとも移動させるにはどうしたらよいでしょうか?
895Name_Not_Found:2013/12/04(水) 10:58:56.09 ID:no72uuNl
^(.*)$
これが悪かったですね。
~$でできました。
896Name_Not_Found:2013/12/10(火) 20:37:21.35 ID:r88Ln9FK
初歩的な質問ですみませんが、現在あるサイトのhttps化をしようとしています。
各ページのhtmlソースに絶対パス(http://www.....)でリンクや画像のソース指定をしている箇所があるのですが、
この場合、htaccess側でリダイレクトを掛けるだけでよいのでしょうか?
897Name_Not_Found:2013/12/10(火) 23:49:41.89 ID:???
いいえ
898Name_Not_Found:2013/12/11(水) 20:54:38.13 ID:qdD5pqpZ
>>897
ありがとうございます。地道に修正することにします。。
もし可能なら後学のため、なぜ駄目なのか理由も教えて頂ければと思います
もしくはググるのに適したキーワードでも結構です。どう調べたらいいのかも分からない状況でして

素人解釈で
内部リンクや画像パスのリンクURL http://... を参照しようとする

リダイレクトされるから内部リンクや画像パスは https://... を見に行くのでOK

・・・かなあ、と思っていたのですが違うんですね
899Name_Not_Found:2013/12/12(木) 08:12:06.73 ID:???
httpsの中身でhttpを読まされた時点で
内容が第三者に読まれてる可能性があると
警告される。
900Name_Not_Found:2013/12/12(木) 08:32:42.03 ID:???
ソース上で 鍵あり←→鍵無し が出入りしたらだめで一貫しろということか。
901Name_Not_Found:2013/12/12(木) 19:21:35.62 ID:???
902Name_Not_Found:2014/01/17(金) 08:28:06.42 ID:???
leaseweb.comというドメインがhtaccessでdeny fromを設定してもすり抜けて
アクセスして困っています。何か良いアドバイスがありましたら、ぜひ教えていただきたいです。
903Name_Not_Found:2014/01/18(土) 07:55:56.52 ID:???
IPアドレスとマスクでDeny。
904Name_Not_Found:2014/01/18(土) 08:40:33.41 ID:???
>>903
アドバイスありがとう。
でもIPアドレスで拒否しても通過してくるオバケなのです。
905Name_Not_Found:2014/01/18(土) 12:08:32.16 ID:???
>>904
設定がサルなだけ or allowoverrideがnoneになってる
906Name_Not_Found:2014/01/18(土) 12:13:28.26 ID:???
他は全て拒否できてるけど、これ以上わからないや。
ありがとう。あきらめる。もしくは将来理解できた時に感謝します。
907Name_Not_Found:2014/01/18(土) 12:17:00.11 ID:???
あ、最後に。ここのproxyで使われてるようです。btguard.com
908Name_Not_Found:2014/01/20(月) 01:52:04.93 ID:???
特定のバーチャルホストでは.htaccessが有効になっていても
それ以外は有効になっていなくて何でも素通しとかw
909Name_Not_Found:2014/01/20(月) 10:08:40.13 ID:???
rewrite logを取ってみたら?
910Name_Not_Found:2014/01/20(月) 13:23:11.10 ID:???
.htaccessではできないことを書いてドヤァw
911Name_Not_Found:2014/02/12(水) 16:11:16.17 ID:???
あげ
912Name_Not_Found:2014/02/20(木) 21:56:59.59 ID:???
あがってないぞ

あげ
913Name_Not_Found:2014/03/06(木) 01:54:09.04 ID:06lgc9sg
海外のアクセスをはじきつつ、嫌なやつのIPをはじくにはどうしたらいいのー?
914Name_Not_Found:2014/03/06(木) 11:00:26.63 ID:???
>>913
order allow, deny
allow from all
deny from 嫌いな奴のIP
deny from ちゃんころ
deny from ちょんころ
deny from ろすけ
deny from やんきー
deny from ばてれん
deny from こうもう
915Name_Not_Found:2014/03/07(金) 14:05:28.52 ID:Cvf1tSKx
例えば、
www.abcdefg.com/abcdefgを

www.abcdefg.com
という表記でアクセスすることってできますか?
916Name_Not_Found:2014/03/08(土) 00:34:30.62 ID:???
うさんくさ
917Name_Not_Found:2014/03/26(水) 21:31:34.48 ID:???
docomoかつiPhoneでの接続のみを許可したいんだけどどう書けば良い?
docomoのIPは下のページから取得できたんだけど
ユーザーエージェントとどう組み合わせて書けば良いか分からん
https://www.nttdocomo.co.jp/service/developer/smart_phone/spmode/index.html
918Name_Not_Found:2014/03/27(木) 18:34:11.98 ID:???
>>917
RewriteCond %{REMOTE_ADDR} IPアドレス
RewriteCond %{USER_AGENT} iPhoneのUA
でいいんじゃないの?
919Name_Not_Found:2014/03/27(木) 18:35:03.81 ID:???
>>918
IP、UA、どっちも正規表現ね
920Name_Not_Found:2014/04/05(土) 23:15:48.53 ID:zdM2Iek2
例えば、abc.comのサイトがあった場合、
http://www.abc.com
http://www.abc.com/index.html
http://www.abc.com/index.php
のみにアクセスがあった場合に、
http://www.abc.com/yy/
にリダイレクトさせたいのですが、どのような記述をしたらよいのでしょうか?

ポイントは、abc.comのルートディレクトリには、index.html (index.php)以外に、
ファイルやフォルダーが存在するのですが、それらのファイルはそのまま生かしておきたい(リダイレクト無し)です。

よろしくお願いします。
921Name_Not_Found:2014/04/06(日) 11:19:05.76 ID:???
>>920
RewriteCond %{REQUEST_URI} ^index.html [OR]
RewriteCond %{REQUEST_URI} ^index.php
RewriteRule ^(.*)$ リダイレクト先
922Name_Not_Found:2014/04/07(月) 08:23:57.63 ID:???
またRedirectだけで済むことをそんな大掛かりにw

Redirect /index.html /yy/
Redirect /index.php /yy/
923Name_Not_Found:2014/04/11(金) 15:03:17.34 ID:???
質問です。先日さくらのレンタルサーバーでバージョンアップがあり
静的化したアドレスにつながらなくなってしまいました。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^products/detail"/"(.*)? products/detail.php?product_id=$1 [QSA]

この記述ではttp://hogehoge.com/products/detail"/"** につながらない(404)のですが
最後の行を以下のようにするとttp://hogehoge.com/products/detail""** につながることが分かりました。

RewriteRule ^products/detail""(.*)? products/detail.php?product_id=$1 [QSA]

つまり、detailのあとにスラッシュを付けるか付けないかで接続の可否が変わります。
これをもとのdetail/**でアクセスできるようにするにはどうすればいいのか教えていただきたいです。

よろしくお願いします。
※便宜上ダブルクォーテーションで括ってますが、実際には外してあります。
924923:2014/05/05(月) 10:44:10.63 ID:???
自己解決しました。
どうやら、バージョンアップ後は実際にディレクトリが存在していないと
つながらないようです。
925Name_Not_Found:2014/05/06(火) 07:17:41.82 ID:???
そういえばsymlinkの追い方なんかが変わってて-dの条件などがちょっとおかしいのかもね。
926Name_Not_Found:2014/06/02(月) 14:15:09.82 ID:PY2i8x7A
画像投稿サイトのflickrでは、
投稿した画像を1枚ごとに掲載したページのアドレスは、
最後がスラッシュで終わるフォルダ名のアドレスになっています。

そして外部サイトからページにリンクして、jQueryでポップアップ表示する際、
<a href="hogehoge/" rel="lightbox1"><img src="hogehoge/hoge.jpg"></a>
のようにページのアドレスにリンクしているのに、画像を返してきて、
普通のjQueryでも画像のポップアップ表示が可能になっています。

このようなことは、.htaccessで実現できることなのでしょうか?
それとも、PHP等でないと実現できないことなのでしょうか?
もしご存知の方いましたら、教えていただけないでしょうか?
927Name_Not_Found:2014/06/03(火) 07:35:09.88 ID:???
AcceptPathInfo Onでhogehogeが存在すればhogehogeへのアクセスとすることができる。
hogehogeは<Files hogehoge>内でForceType image/jpegなどかな?
サムネイルと切り替えるなどなら別のハンドラだね。
928Name_Not_Found:2014/06/03(火) 14:44:01.53 ID:???
質問がありますのでお願いします。


googleのブログサービスをサブドメインに転送しています。
現在、http://hoge.example.comでブログが見えます
これをhttp://example.com/hoge/に持って来たいとおもいます

ところで、すでに前半分で、www.ありを,なしにリダイレクトしています。 ここはうまくいきました。
それで、残りの半分を、それを参考にしながら、

ptions +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example\.com
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^hoge.example\.com
RewriteRule ^(.*)$ http://example.com/hoge/$1 [R=301,L]
としました。

意味があればと思い、サーバーには空のディレクトリ public_html/example.com/hogeを作ってあります。
サーバーはcoreserverですが、うまくゆきません。いい方法がありますでしょうか?
929Name_Not_Found:2014/06/04(水) 06:33:07.36 ID:???
Pとか使ってリバースプロキシにするしかないんじゃね?
930Name_Not_Found:2014/07/09(水) 00:33:49.07 ID:???
質問があります。

.com/dir/index.php のプログラムを
.com/dir/ で実行させて引数の形式が
PATH_INFO (.com/dir/arg1/arg2) にしたいのですが

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php

これだとPATH_INFOが空になってしまいます
index.phpを省略せずに .com/dir/index.php/arg1/arg2 とすると取得できます

RewriteRule (.*) index.php$1 も空で
RewriteRule (.*) index.php/$1 はページが見つかりません

どのように指定したらよろしいでしょうか? アドバイスお願いしますm(__)m
931930
間違えました

RewriteRule (.*) index.php$1 はInternal Server Errorです