2012年09月Web制作57: .htaccess質問コーナー Part8 (743) TOP カテ一覧 スレ一覧 2ch元 削除依頼
業界の蠅野郎パシフィカスことSEOウェブネットってどうよ (240)
Firefoxを推薦する管理者用のスレ part2 (345)
フォント (718)
◇ツール関連総合スレッド・Web制作方面◇ (368)
オジ厨・オバ厨ウザいんです-2- (518)
エムペ!で携帯サイトを作っている人 (353)

.htaccess質問コーナー Part8


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

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

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

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

5 :
otu

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

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

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

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

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

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

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

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

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

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

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

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

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

19 :


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

21 :
>>20
おRびろーん

22 :
>>21
AAを略すな

23 :
今、以下のような設定で Baidu と中華を排除しています。
SetEnvIf User-Agent "Baiduspider" AGENT
order allow,deny
allow from all
deny from env=AGENT
deny from .cn

これに加えてあるドメインからのスパムがあるのでPOSTを禁止したいのですが
このあとに以下を加えるといいのでしょうか?こうすると中華もPOSTできてしまうような
気がします…
<Limit POST>
order allow,deny
allow from all
deny from .hogehoge.com
</Limit>


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

25 :
>>24
了解しました。
以下の質問の回答をもらえるとありがたいです。

今、以下のような設定で Baidu と中華を排除しています。
SetEnvIf User-Agent "Baiduspider" AGENT
order allow,deny
allow from all
deny from env=AGENT
deny from .cn

これに加えてあるドメインからのスパムがあるのでPOSTを禁止したいのですが
このあとに以下を加えるといいのでしょうか?こうすると中華もPOSTできてしまうような
気がします…
<Limit POST>
order allow,deny
allow from all
deny from .example.com
</Limit>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

45 :
>>44

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

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

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

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

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

51 :


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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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


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

67 :
.htaccess mod_rewriteについて
http://example.com/data1?data2/data3;data4
このようにアクセスした場合
http://example.com/index.php?id=data1&mode1=data2&mode3=data3&flag=data4

このようにアクセスさせたいです。

考えてみましたが
うまく動作しません。
データーに受け渡す値は
a-zA-Z0-9
限定です。
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9]+\?+[a-zA-Z0-9]+)\/+[a-zA-Z0-9];+[a-zA-Z0-9)$ index.php?id=$1&mode=$2&mode3=$3&flag=$4 [L]
ご教授よろしくおねがいします
これではだめみたいです

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

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

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

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

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

73 :
test

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

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

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

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

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

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

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

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


ごめん。

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

83 :
>>78
お前も同じ

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

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

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

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

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

89 :
>>78=>>79

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

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

92 :
どんまい♪

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

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

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

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

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

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

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

100 :
20レスほどあぼーんされて
何も見えないがまたキチガイでも湧いてるのか?

101 :
>>100があぼーんされて
何も見えないがまたキチガイでも湧いてるのか?

102 :
>>99-100
>>3

103 :
>>96
.htaccessでは残念ながら不可能

104 :
新潟OCNは光とADSLでホストが一部違うのですが、

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


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

106 :
今、.htaccessファイルに書かれているのはこんな感じです。

order deny,allow
deny from all
allow from  100.100.100.0/24
allow from  200.100.100.0/24
ErrorDocument 403 PC用のURL
こんな感じで書いてます。
例えばここにグーグルロボットのUA Googlebotを追加しようとしたらどのように付け足せばいいのでしょうか?

107 :
>>104
自分のホスト名で試せば分かるけど、それでは遮断出来ない。

108 :
>>104
.htaccessでは\dとか使えなかったと思う
SetEnvIf Remote_Host "ipbf[0-9]{2,4}niigatani\.niigata\.ocn\.ne\.jp$" shutout
deny from env=shutout
だとどうだろ
{2,4}のところは桁数の変動に合わせて書き換えて

109 :
入.......

110 :
http://shinshu.fm/MHz/08.55/images/2a4elvX0.jpg

111 :
(σ・∀・)σ111ゲッツ

112 :
http://www.example.com/hoge/ 以下の html ファイルを
http://hoge.example.com/ 以下へ引っ越ししたので
<Files *.html>
Redirect permanent /hoge http://hoge.example.com
</Files>
としました。
ブラウザのアドレス欄に
http://www.example.com/hoge/fuga.html
と入力すると
http://hoge.example.com/fuga.html
へ転送されたので目的は達成しているのですが、
http://www.example.com/hoge/
と入力したときの転送先を
現状: http://hoge.example.com/index.html
希望: http://hoge.example.com/
としたかったので、
RedirectMatch permanent ^/hoge/?$ http://hoge.example.com/
の1文を追加しました。
これで希望通り動作しているようですが、問題はないでしょうか?
また、他に適切な記述法がありましたら教えてください。

113 :
ttp://www.example.com/hoge/index.html
は、どうする

114 :
存在しないページにアクセスすると 403 エラーになるサーバーで,これ
を 404 を返すようにするにはどうしたらいいでしょうか?
404 エラー風の 403 エラーページでは不可です。

115 :
>>114
調べた結果こう試したが上手くいかない
というのなら分かりますが、
最初から問題にして答を導き出そうとするのはいかがなものかと思いますが

116 :
.htaccess に何と書けばいいのか全くわからないので,試しようがないの
です。

117 :
>>113
レスありがとう。それは
http://hoge.example.com/index.html
への転送で構いません。

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

119 :
>>118
お断りします

120 :
>>118
ログ読めば書いてあるよ

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


122 :
>>121
この文章だけで回答できる人がいたら、それは超天才ですねw

123 :
>>121
.htaccessで制御しているのは、
・UA
・IPアドレス
以上の2つだけという理解で間違いないですか?
であれば、可能性は以下の3つのような事では?
・auのUA、または使用IPアドレスのレンジが違う(新機種の登場によって新UAや新IPアドレスが登場した)
・あなたの想像するような事か別の現象
・.htaccessの書き損じ
最後に、あなたが当然のように知っている情報でも、他人にとっては全く分からない前提を理解してください
.htaccessには何をどのように記載しているのか、具体的に制御したい通信の種類は何か、
.htaccessを設置しているサーバ、通信経路、その他が障害になっている可能性だってあるかもしれません
ここ以外の場所でも言える事ですが、自分本位な質問はしないよう注意しましょう

124 :
>>121
>PC専用サイトと携帯専用サイトを分けており、
この書き方じゃ、
http://pc.example.com/
http://mobile.example.com/
に分けてるのか、
http://www.example.com/pc/
http://www.example.com/mobile/
に分けてるのかわからん

125 :
>>121
何を以てauからのアクセスと判断したんだ? IPアドレスじゃないんだよね?
知りたいのはその判断基準が正しいかどうかじゃないの?

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

127 :
>>126
・送信元にhost名(host.example.cn等)が無く、
IPアドレスだけの場合は.cnだけでは意味が無い
・逆引きしたIPアドレスが本来は.cnでなければならないはずが、
DNSのキャッシュ等に誤りや不整合がある場合等に.cnが正常に検知できない
結論
.cnだけでアクセス制御できるという短絡的な考え方は捨て、
IPアドレスや他の要素(language等)も合わせ制御すべきです

128 :
SetEnvIf Accept-Language "^[^(ja)]+$" non_japanese
で日本語ブラウザ以外のアクセスは禁止しています。
Firefoxで日本語の言語を消去してアクセスすると403エラーで無限ループします。
オリジナルのErrorDocument 403で表示させているんですが これを解除すると無限ループはなくなります。
オリジナルの403には文章だけでURLの自動転送等は記載していないのですが 何が原因かわかりません。
.htaccessには他に特に記述はしていない状態です。

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

130 :
>>128
Accept-Languageの意味わかってる?

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

132 :
すいません無記述では無く
order allow,deny
allow from all
を記述したらうまくいきました。
お騒がせしました罵声を浴びせてください。

133 :

           \ ナニヤッテンダー ?
\ バカヤロー ?

                            \ ウィ ?

134 :
現在RewriteCondでexample.jp、
RewriteRuleでexample.comにしています。
この設定をそのままにして
http[s]://example.jp
でアクセスした場合にhttp://example.comに飛ばさない方法はありますでしょうか?
通常のアクセスの場合は.comに飛ばし、SSLを使う場合は.jpで表示したいのです。
.comでSSLは使えないので、どうにかして上記のように設定したいのですが。

135 :
CondでHTTPSがOnかどうかもチェックしてみるとかね。

136 :
>>135
返答ありがとうございます。
とりあえず下のように試してみましたが、成功しませんでした。
質問した内容とは少しずれますが、結果は同じそうなので試してみました。
RewriteEngine on
RewriteCond %{REQUEST_URI} .*/foo.html$
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://example.jp%{REQUEST_URI} [R,L]
RewriteCond %{REQUEST_URI} !(.*/foo.html$)
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
RewriteCond %{HTTP_HOST} ^example\.jp
RewriteRule (.*) http://example.com/$1 [R=301,L]
通常は.comで表示、foo.htmlだけhttp[s]://example.jpのSSLという形になると思ったのですが
foo.htmlにアクセスすると無限ループとなってしまいます。
とりあえず.htaccessには上記以外記入はしていないのですが、どう修正すれば良いかわかりますでしょうか。
一番下の2行を削除しても無限ループとなってしまいます。

137 :
RewriteCond %{SERVER_PORT} !^443$

138 :
>>136
とりあえずhttpsではないときにHTTPSがoffなんて都合のよい値になることはないから!^on$
>>137
httpsのサービスが443で行われているとは限らない。

139 :
httpは80/tcp、httpsは443/tcp
なーんて固定観念持ってしまってる人多いよね

140 :
質問失礼いたします。
初心者につき意味不明なところもあるかもしれませんがご容赦ください。
■css宣言を入れる
■国内、国外の検索ロボを弾く
■国内、国外の特定のリファラを弾く
■特定の国を弾く(今回は言語で弾く方法を選択しました)
をやりたいと思い、
AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 特定の国の言語 Lilith
order Allow,Deny
Allow from all
Deny from env=shutout
Deny from env=Lilith 
という.htaacessを作成しましたが、fire foxでアクセスすると問答無用で403になります。
言語の部分を削るとアクセスできるようなので、問題は言語部分か?と思ってるのですが
SetEnvIf Accept-Language ja Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith
だけだとアクセスできるようで、何が原因なのかよくわかりません。
特に書き方にこだわっているわけではないので、
上の4つを満たす書き方が他にあるのなら教えて頂きたいです。
知恵をお貸しいただけると幸いです。

141 :
AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 特定の国の言語 shutout
order Allow,Deny
Allow from all
Deny from env=shutout
ではダメなの?

142 :
>>140
使っているサーバ側の設定によると思いますが、
正規表現を使わなければならない可能性はありませんか?
リファラ部分の一例
× http://example.com/
http://example\.com/
正規表現については該当スレッドで調べてみてください
例えばここ↓
http://pc11.2ch.net/test/read.cgi/php/1168450843/
最後にどーでもいい話ですが、
ファイアフォックスは商品名なので、正式には "Firefox" です
"fire fox" や "FireFox" のようには記載しませんので、
仕事で同名称を記載する事があるようでしたらご注意のほど

143 :
レスありがとうございます。
>>141
参考にさせていただいた.htaccessサイト様がLilithだったので
それしかダメなのかと思ってました。
shutoutも使えるのですね。勉強になります。
そして早速、Lilith→shutoutに変えてみましたが状態は変わらないようです…。
>>142
表記を簡略化しすぎてしまってすいませんでした。
実際には SetEnvIf Referer "^http://www\.xxxxx\.com" shutout
な感じになっております。
実は今までは、上の.htaacessから言語が無いものを使っておりました。
この度言語でも弾きたいと思いDeny from env=Lilithを追加したらこのザマですorz
Firefoxについての表記方法ご指摘ありがとうございました。
うっかり恥かくところでした。

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

145 :
たびたびしつこくてすいません140です。
自己解決?しそうな予感なのですが色々不安なので確認お願いします。
AddType text/css .css
SetEnvIf User-Agent "検索ロボ" shutout
SetEnvIf Referer "^http://リファラ/" shutout
SetEnvIf Accept-Language 許可する国 Lilith
order Allow,Deny
Allow from env=Lilith
Deny from env=shutout
素人の浅知恵で上記のようにしてみた所、IEでもFirefosでも動いたようなのですが、
order Allow,Denyの後がAllow from allでなくても文法的に問題ないのでしょうか。
あちこちのサイト様を見てもこういう書き方が載っていなくて少し不安です。

146 :
その書き方で大丈夫なはず、自分もそのやり方でやってる
リファレンスでは大抵Allow(またはDeny) from allが記載されてるけど
必ず書かなきゃいけないわけじゃないよ
ちなみにFirefoxは標準で英語が設定されてる
(ツール→オプション→コンテンツの「言語」で確認)
英語は他の日本語ブラウザでも標準設定されてるものは多いから
許可する言語で制御するのが正解だと思う、自力解決オメ>>140

147 :
>>145
Accept-Language で "ja" のみを Allow とするのでしたら、
大多数の MACユーザーがデフォルトで使う Safari の古いバージョン、
これも Safari系になりますが最近シェアの伸びた Google Chrome、
そして一部の携帯端末用ウェブブラウザなどでは、
使用言語に "en" しか入っていない場合があるため注意が必要です
わたしの場合ですが、以上の理由などから Accept-Language は Deny とし、
英語なら "en" を除いた "en-US" など、該当する全てを登録し弾いています
最後に余談ですが、日本向けに提供されるブラウザの場合、
たとえば Firefox なら "en" と "en-us" が初期言語設定に採用されています
ですが、Firefox の英語版は少し違っていて、インストールすると分かる通り、
"en-us" ではなく "en-US (us部分が大文字)" が採用されているため、
"en-US" を Deny すれば英語圏の大多数を弾けることになります

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

149 :
>>148
Microsot製の日本国内向け純正 IE だけに限ってですが、
比較的新しいバージョンでは "en" は初期設定で採用されていません
今後、同じような常用に遭遇した際にご自身で解決するため、
PC やウェブブラウザがアクセスするたびに吐き出す環境情報について、
詳しくなられることをおすすめします
参考: 環境変数チェッカー
http://www.cybersyndrome.net/evc.html
IE で言語設定を変更しながら、
上のリンク先にアクセスして検証すれば分かる通りです
.htaccess は以下の 2点についておさえておくだけで、
・書き方の基本
・上記のようなアクセス元の吐き出す情報
自分自身でいくらでも応用してアクセス制御できるようになります

150 :
>>149
ありがとうございます。
チェッカーのアドレス、ブクマいたしました。
色々と勉強して使いこなせるようになりたいと思います。
この度はいろいろありがとうございました。ROMに戻ります。

151 :
アホーの画像検索ボットのアクセスらしいのですが、
***.**.image.search.mud.yahoo.net(**は毎回ちがう任意のアルファベットと数字)
からのアクセスを弾く場合、.htaccessにどう記述すればいいのでしょうか?
また、このボットはロボテキを読むのでしょうか?(読む場合は記述方法を教えて下さい)
どなたかお分かりになる方がいれば、ご教授願えればと思います

152 :
>>151
> また、このボットはロボテキを読むのでしょうか?(読む場合は記述方法を教えて下さい)
これについては.htaccessの仕事ではないのでスレ違いです
Yahoo!検索かhtml関連のスレで質問してください

153 :
>>151
order deny,allow
deny from all
allow from おまいのIP
で完璧だろう

154 :

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

それと現在アクセス制限をしていて
Order Allow,Deny
Allow from all
allow from env=wellcome
deny from env=shutout
以下禁止UA・ホスト・IP
としているのですがこれに
<Files robots.txt>
order deny,allow
allow from all
</Files>
を書き足すと打ち消されてしまいますか?
その場合どう書き直したらいいのでしょうか。

155 :
>>154のhogeは同一ドメインのバーチャルホストです。

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

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

158 :
htaccessファイルの1行あたりの長さの制限て255バイトでいいの?
最近は1024バイトになったとかじゃない?

159 :
以下のような書式で、ユーザーエージェントが「Mozilla/5.0」としか
返してこないものだけ弾きたいのですがどのようにexampleの部分に
記述すればよいのでしょうか?
たとえば
Mozilla/5.0 →弾く
Mozilla/5.0 (Windows; U; Windows NT 5.1・・・・ →こういうのは弾かない
こんな感じです。

書式:
SetEnvIf User-Agent "example" deny_ua
order allow,deny
allow from all
deny from env=deny_ua

160 :
>>159
^Mozilla¥/5¥.0$

161 :
>>160
ありがとうございます。
早速記述してみます。

162 :
>>157
Redirect permanentやRedirect 301はブラウザにキャッシュされるので
キャッシュをクリアした上でRedirect tempやRedirect 302で
もう一度試してもらうか、hoge.example.jp側がラリーを続けるような
設定になってないかとか、www.example.jpが*.example.jpを
すべて自分であると認識するように設定されていて
hoge.example.jpへはジャンプさせられないとか
そんな感じかも。
>>158
ApacheではMAX_STRING_LENのマクロで定義された数字のバイト数を上限として
1行を読み取るみたいですが、それがコンフィグファイルを読む部分では
HUGE_STRING_LENと定義され、HUGE_STRING_LENは8192となっているので
1行で8192バイトまでいけるっぽいです。
ほかにも
Allow from 192.0.2.0 192.0.2.1 192.0.2.2 ...
と続けることができるディレクティブもAP_MAX_ARGCという64と定義されているマクロで
64個までの制限があるっぽいです。

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

164 :
>>163
設定ミスだろ

165 :
同じように自分のホストを設定すると403になるのでミスなのかよくわかりませんが
*.server.luというホストの場合
deny from .server.lu
で良いはずですよね?

166 :
>>165
server.luが持ってるIPアドレスを調べて、IPアドレスで制限したほうが早くね?

167 :
>>162
ありがとう。

168 :
>>165
*.server.luを正引きしてIPアドレスが一致しない場合はホスト名では制限できない。

169 :
わかりました、やってみます。
ありがとうございました。

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

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

172 :
>>171
>>170
テンプレも読まずに質問するのはいかがなものかと思いますが

173 :
>>172
クレクレ団だからしかたあるまい

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

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

176 :
>>175
apacheのログには、ユーザー名が記録されてるでしょ

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

178 :
mXXXX.giga-dns.comからのアクセスを拒否したくて、
Order Allow,Deny
Allow from all
Deny from mXXXX.giga-dns.com
と記述してるのに、mXXXX.giga-dns.comからのアクセスが続いて困ってます。
この記述に間違いがあるのでしょうか。

179 :
>>178
質問する前にまず、
テンプレ(>>1-3)に目を通してから質問しましょう
他のスレでもどこでも、ルールを確認してから投稿するよう心がけてください
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

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

181 :
example.com/ → example.com/abc/
example.com/admin/ → example.com/abc/admin
↑のようにrewriteしたいのですが404になってしまいます。
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /abc$1 [L]
このように記述しているのですが、悪い部分をご指摘いただきたい。

182 :
/が抜けてました。。orz
RewriteRule ^(.*)$ /abc/$1 [L]

183 :
>>182
アクセスログに転送しようとしている先の
URL が残っているはずなので、
それを見ればどこに問題があるか分かると思いますよ

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

185 :
allow(deny) from allは場合によっては書かなくて良いと聞いたのですがどのような場合ですか?

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

187 :
>>186
ありがとう

188 :
FLV ファイルの直リンクを拒否したいと思っているのですが
思うように設定ができません。
プレーヤーは JW FLV Media Player 4.5 を使っています。
ログを見てると swf ファイルから FLV ファイルを読み込んでいるようです。
リファラを見ると、swf には埋め込んだ HTML ファイルのリファラが、
FLV ファイルのリファラは何も記載されていませんでした。
一度、以下の設定を行ってみました。
SetEnvIf Referer "^http://www\.hogehoge\.com" ref_ok
SetEnvIf Referer "^$" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
→ swf ファイルへの直リンクが禁止になるので、
 直リンクされても再生されず、一見成功したかに見えましたが
 FLVファイルだけ直リンクにした場合、再生されてしまいました。
プレーヤーにはこだわりはないので、
別のプレーヤーなら出来るというのがあれば
乗り換えることは可能です。
何かいい方法はありませんでしょうか。

189 :
(´・ω・`)しらんがな

190 :
質問。特定の検索ワード "]" を含む客を弾きたくて、
SetEnvIf Referer "]" kick
SetEnvIf Referer "%5D" kick
Order Allow,Deny
Allow from all
Deny from env=kick
としても機能しないんだがどうしたらいいんだろうか

191 :
>>190
"](右大括弧、大括弧閉じる)"は正規表現の特殊文字だから…
サルにもわかる正規表現入門
http://www.mnet.ne.jp/~nakama/
上のリンク先を読んでも分からない事があれば、
下記のスレとかで調べてみては?
正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
ルールやテンプレは無さそうだけど、
質問したくなったらスレ内のログくらいは確認してから質問してあげてください

192 :
RewriteCond %{HTTP_REFERER} %5D [NC,OR]
のほうでやったら機能したわ。サンクス

193 :
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /aa/bb/
RewriteCond %{LA-F:REQUEST_FILENAME} \.htm$
RewriteRule ^(.*)$ $1l [R]
</IfModule>
という記述はどういう意味でしょうか?
自分で調べてみた範囲では、転送の設定っぽい?ということはわかりましたが、
何が起こっているのかよくわかりません。
現状、ルートディレクトリ以下にあるフォルダの中身へのリンクが
/aa/bb/フォルダ名/ファイル名.html のようになっていて、
ローカルで見ると全てリンク切れなのですが、
その原因はこの設定では?と思っているのですが…。

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

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

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

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

@現在の設定-----------------------------------------
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !DoCoMo [NC]
RewriteCond %{HTTP_USER_AGENT} !KDDI [NC]
RewriteCond %{HTTP_USER_AGENT} !Up.Browser [NC]
RewriteCond %{HTTP_USER_AGENT} !Softbank [NC]
RewriteCond %{HTTP_USER_AGENT} !Vodafone [NC]
RewriteCond %{HTTP_USER_AGENT} !J-PHONE [NC]
RewriteCond %{HTTP_USER_AGENT} !DDIPOCKET [NC]
RewriteCond %{HTTP_USER_AGENT} !Nokia [NC]
RewriteCond %{HTTP_USER_AGENT} !MOT- [NC]
RewriteCond %{HTTP_USER_AGENT} !e-mobile [NC]
RewriteCond %{HTTP_USER_AGENT} !emobile [NC]
RewriteCond %{HTTP_USER_AGENT} !L-mode [NC]
RewriteRule ^(.*)$ http://転送先.com/$1 [R,L]
------------------------------------------
A追加して設定
255.100.***.*** 〜 255.150.***.*** をyahoo.co.jpに転送(アク禁)

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

199 :
Zend Frameworkのマニュアルに
RewriteRule ^(.*)$ - [NC,L]
という記述があるのですが、移動先の - の部分は何を表しているのでしょうか

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

201 :
>>200
ありがとうございます。括弧はこちら側のミスです。
あと以下のようにルールが2つあるのですが、どうして2つ必要なのでしょうか?
RewriteRule ^.*$ - [L]
RewriteRule ^.*$ index.php [L]

202 :
その2つのRewriteRuleだけなら下のRuleは必要ない。
おそらく上のRuleと組になるRewriteCondがいくつかあって、そのCondを満たしたときは上のRuleで終了
満たさなかったときは上のRuleは適用せず下のRuleを適用して終了という感じになってるはず。

203 :
301でサイト移動をする場合に関数に色々な値があるのをそれぞれリダイレクトさせたい場合は
一挙に書くにはどうすればいいでしょうか?

1つ1つ書くと下記のようなのを1つにしたいです。
Redirect 301 /index.php?a=1 "http://www.sample.jp/index?a=1"
Redirect 301 /index.php?a=2 "http://www.sample.jp/index?a=2"
Redirect 301 /index.php?a=3 "http://www.sample.jp/index?a=3"
 ・
 ・
 ・
Redirect 301 /index.php?a=a1 "http://www.sample.jp/index?a=a1"
Redirect 301 /index.php?a=b2 "http://www.sample.jp/index?a=b2"
Redirect 301 /index.php?a=c3 "http://www.sample.jp/index?a=c3"
 ・
 ・
 ・

204 :
>>203
スレ違い
正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/

205 :
>>203
Redirect 301 /index.php http://www.example.jp/index
ではあかんの? クエリ部分の細かい指定するならmod_rewriteじゃね?
> Redirect 301 /index.php?a=1 "http://www.example.jp/index?a=1"
ところでこの設定ちゃんと効いてる?

206 :
>>205
http://pc11.2ch.net/test/read.cgi/php/1168450843/550
http://pc11.2ch.net/test/read.cgi/php/1023791370/386

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

208 :
そのまま2つ続けて書いておけばいい。

209 :
皆さん質問させてください。よろしくお願いします。
http://○○.jp/△△.cgi?id=××というリンクから飛んでくるアクセスを
http://○○.jp/に飛ばしたいんですが、どうしたらいいですか?
.htaccessとかで設定できるのでしょうか?
設定できるようであれば、設定方法を教えてください。

210 :
>>209
ここらへん参考にどうぞ
ttp://mikeneko.creator.club.ne.jp/~lab/web/htaccess/redirect.html

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

212 :
その/△△.cgiへのアクセスすべてを/へ移動させるだけなら
Redirect permanent /△△.cgi http://○○.jp/
でよさそう。

213 :
RewriteCond %{HTTP_USER_AGENT} DoCoMo [OR]
RewriteRule ^$ http:/xxx.jp/mobile/index.html [R]
とauとsoftbankつずけて書いていたのですが
ウェブブラウザでも携帯サイトを見るようになりました。
ブラウザはhttp:/xxx.jp/にいくようにするにはどうしたらよいでしょうか?

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

215 :
>>213
そのCondとRuleの間に携帯電話以外の余計なCondとかRuleがあったりしないかな?

216 :
>>215
どうも解決しました
UP.Browser用を消したらいけました
ありがとうございました。

217 :
.htaccessでIP単位でのサイト振り分け方法を教えてください。
サブネットマスクも含めてIPによるサイト振り分けをしたいんです。

123.456.789.0/22はサイトAへ
987.654.321.0/22はサイトBへ
それ以外はサイトCへ
というような仕様を.htaccessでしたいんですが。
どなたか教えてください。

218 :
>>217
嫌です

219 :
>>217
例示には、Private IP address として予約されている、
10.0.0.8/8 などを使うとよいと思いますよ
本題ですが、Rewrite Rule を使ってはいかがですか?
検索すればゴロゴロ出てきますが一例としては次のような感じでしょうか
----
RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^10\.0\.
RewriteRule ^.*$ http://site-A.example.com/ [R,L]
RewriteCond %{REMOTE_ADDR} ^10\.128\.
RewriteRule ^.*$ http://site-B.example.com/ [R,L]
----
上記以外は、site-C へ通る(Redirect されない)といった具合です
以上の方法の注意点ですが、
Subnet mask は理解されず、
Network address は前方参照かつ正規表現で理解されるはずなので、
必要に応じて ^10\.[0-5][0-9]\. のように指定し忘れないようにですね
間違っていたらすみません
LAN 環境でテストすればすぐ分かるはずですから、試してみてください
検討を祈ります

220 :
>>219
>検討を祈ります

221 :
健闘を祈りますですね
すみません
誤字です
忘れてください
恥ずかしいですw
と駄レスを書いてみるテスト

222 :
>>221
多分ね、217みたいなひとは、ヒントくらいじゃ何もしなくて、
丸ごと回答を貰えないとまた質問してくると思うんだ

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

223 :
と駄レスを書いてみるテストその3、ダー!
1,2,3ときたら、言いたくなるよね?ね?ダメ?w

224 :
初心者質問スレより誘導されて来ました。
質問失礼します。

ロボテキについて調べたのですが、
全て「上位ディレクトリに置くこと」としか書かれていません。
たとえば
http://google.com/ではなく
http://google.com/abc/
http://google.com/def/
「def」以下のみロボテキを入れたい場合、
defフォルダ内にロボテキを入れれば可能なのでしょうか?
それともそんなことは不可能ですか?
変な質問で申し訳ありませんが、
.htaccessと合わせて考えたら混乱してきたので、
よろしければ教えてください。

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

本題ですが、robot.txt はウェブサイトのトップ(ルートディレクトリ)に置いた場合にのみ意味があります
○example.com/robot.txt
×example.com/abc/robot.txt
詳しくは各々の検索エンジンの仕様についてのページをご覧ください
 例) Yahoo! の場合
http://info.search.yahoo.co.jp/archives/002885.php
検索エンジンが任意のウェブサイトのルートディレクトリに置かれた robot.txt を認識・理解し、
robot.txt に書かれたルールに従ってウェブサイト内の各ページを探索する流れは、
上のリンク先に書かれてある通りですが、ざっくりと書けば次のようになります:
----
1) (ウェブサイトのルートディレクトリにある) robot.txt を読み探索ルールを理解した上でサイト内を探索
ルートに robot.txt が見つからなかった場合、
2) ウェブサイトのルートからリンクを辿ってサイト内の各ページを探索
----

226 :
>>224
ちなみに robot.txt は .htaccess とは何ら関係が無いので、
スレ違いです
次回からは、検索エンジンに関する以下のようなスレで質問してください
[Google・Yahoo!等]■ロボット型検索エンジン44■
http://pc11.2ch.net/test/read.cgi/hp/1241450290/

227 :
>>225,226
テンプレを見逃していて申し訳ありませんでした。
それでも丁寧に教えてくださって助かりました。
本当にありがとうございます。
理解できました。
恥ずかしながら、どうやら.htaccessと同じ解釈をしていたらしいです。
次回からは該当スレに質問します。
ありがとうございました。

228 :
以下のように拡張子なしのURLにアクセスがあった場合に
拡張子ありのURLに301リダイレクトさせたいと考えています。
?http://www.example.net/qa
        ↓
?http://www.example.net/qa.html?
.htaccessにて、以下のように記述してみたところ
無限ループが起きてしまいました。
RewriteCond %{THE_REQUEST} ^.*/qa
RewriteRule ^(.*)qa(.*)$ ?http://www.example.net/qa.html? [R=301,L]
RewriteRule の ^(.*)qa(.*)$ がおかしいかと思うのですが、
ここを ^(.*)qa$ にしても動作しないようです。
どのように記述したらよろしいでしょうか。よろしくお願いします。

229 :
.htaccessに文法エラーがあると動かないんだけど
文法エラーがあったら無視して動作するとかの設定って
httpd.confにどうやって書けばいいの?

230 :
>>229
>>1
ここは、.htaccessファイル(「分散設定ファイル」)の
書き方・使い方などに関するスレです
httpd.conf については、
Apache 関連のスレで質問してくだちゃい
http://find.2ch.net/?STR=Apache

231 :
>>228はそもそも無理なことなんでしょうか…。

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

233 :
特定のIPアドレスからの接続を、特定のhtmlに飛ばす方法ってご存知ありませんか。
xreaで.htaccessを置いたのですが、特定IP、仮に[222.222.222.222]からの
アクセスを特定のHTMLに飛ばす設定を仕込んだんですが
----------------
order allow,deny
allow from all
deny from 222.222.222.222 <こいつは転送させる
ErrorDocument 403 /test.html <飛ばし先
----------------
としました。
しかし、指定してないIP、仮に[444.444.444.444]でアクセスしたら
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, admin@xrea.com and inform them of the time the error occurred,
and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
とエラーが表示されてしまっています。
なぜでしょうか うーん

234 :
>>233
マルチポストはやめましょう
ErrorDocumentディレクティブについて再勉強

235 :
特定のリファラからの特定のファイルへのアクセスのみリダイレクトさせる設定はどうすればいいのでしょうか?

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

236 :
>>235
ここまでやってみたのですが上手く行きませんでした
どこか間違っているのでしょうか?
まずはやってみて、
壁にぶち当たったら上のように質問されてはいかがでしょうか?

237 :
>>236
個別のやり方は分かったのですが、どうしても組み合わせる方法が分かりません
↓試してみた方法です
SetEnvIf Referer "sample.net" Ref1
RedirectMatch permanent [2-9]\.html$ http://google.jp from env=Ref1
ご指導の程よろしくお願いします

238 :
>>237
しょぼ!

239 :
>>237
質問したい時はテンプレ>>1-3を読んでから

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

241 :
>>240
urlの書き換えで、xxxx.htmlをxxxx.phpにむけたらいいじゃん

242 :
>>240
メニューをインクルードしたいなら、
HTMLにPHP埋め込めばいいだけじゃない
.htaccessで解決しようとする視点はあまり良くないような気がする
スレ違いっぽい気がするから
↓で
【PHP】ID出さんでも質問OKなスレ【初心者歓迎】2
http://pc11.2ch.net/test/read.cgi/php/1252590753/

243 :
レスありがとうございました
>>240
拡張子を.htmlのままにしたかったので、AddType application/x-httpd-php .htm .html

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

244 :
>>243
だから、
RewriteRule (.*)¥.html $1.php
みたいにすれば、拡張子はhtmlのままで、phpで動かせるんじゃないかと。

245 :
>>244
「mod_rewriteのファイル拡張子を書き換える記述は利用できない」
とのことらしいので、だめっぽいです
ぶっちゃけお名前.comの共用サーバーなんですが…
盛大に勘違いしていたらすみません

246 :
AddHandlerディレクティブが駄目という時点でサーバの設定ファイルのディレクトリコンテキストのみでしか使えない
AllowOverrideディレクティブでFileInfoに対しての上書きが許可されていないということを予測し、
同じくFileInfoに対しての上書きが許可されていないと使えないRewriteRuleなどのディレクティブは
代替できる手段にはなり得ることはほとんどないというところまで導けないと回答者なんかにはなれないw
>>245
ぶっちゃけなくてもphpを*.php以外で使う手段は用意されてないでしょう。

247 :
>>246
自称上級者登場w

248 :
>>246
諦めがつきました…ありがとうございます
何度もすみませんでした

249 :
.htaccessでIP拒否したいのですが
無料ブログに、他HPからひっぱってきて使いたいのですが
無料ブログではiframeが使えないので
objectでひっぱってくるのは無理ですか?

250 :
>>249
.htaccessとは関係ない内容ですので、お引き取りください。

251 :
このスレって厨房が多いから注意ですよ

252 :
RewriteRule についてアドバイスをいただけないでしょうか。
○ ディレクトリの構成:
 http://sample.jp/aaa/test.php
 http://sample.jp/aaa/.htaccess
○ やりたいこと:
 http://sample.jp/aaa/[任意の文字列]
 にアクセスがあった場合
 http://sample.jp/aaa/test.php?str=[任意の文字列]
○ 失敗したhtaccess:
---
RewriteEngine on
RewriteRule ^(.*)$ test.php?str=$1
---
単純な文字列だとうまくいくのですが、[任意の文字列]に / などが入ると、
「ディレクトリが見つけられない」と判断されるのか403エラーが出てしまいます。
イメージとしては、インターネットアーカイブで表示した際のURLのように、
http://sample.jp/aaa/http://www.sample.com/test/
このようなURLが指定されても、引数strに「http://www.sample.com/test/」を渡してtest.phpを表示させたいのです。
お詳しい方、どうか教えてください。

253 :
テンプレを読んでから質問しましょう

254 :


255 :
.htaccessってCGI掲示板のアクセス禁止できないんだね!?
PHPだと問題無いのに!

256 :
>>255
できるよ
cgi-binディレクトリが、Allowoverrideされてないだけでは?

257 :
CGI はスクリプトの総称であり、
CGI を作るためにある言語に PHP や Perl があります
ですから、PHP は CGI を生み出すための一つの手段と言えるでしょう
こんな事も分からず>>255のような訳の分からないレスをしているのですから、
.htaccess とは全く関係の無い事が問題の原因という可能性も考えましょう

258 :
http://www.big.or.jp/~talk/t-club/soft/mini_r6/index.cgi
ここのタイプのCGI掲示板なんだけど、よくながめて見ます

259 :
Allowoverrideさせかたが解りません

260 :
>>257
PHPはCGIじゃなくてApacheのモジュールとして動作させることが多いです
そしてCGIはCなどのコンパイルが必要な言語でも書けるもので、
スクリプトの総称ではありません
適当な事を言うのはやめましょう

261 :
>>259
apacheのhttpd.confで設定できる

262 :
>>261
自鯖じゃ無くても出来るわけ?
それで拡張子をconfにして放り込むの?
vンカンプン

263 :
自鯖でサーバ管理用のURLを用意したいんですが、以下のことってできますかね?
・ttp://hogehoge.comの運用をしている。
・ツールの関係でttp://hogehoge.com:ポート指定で管理画面がでる。
やりたいこと
・ttp://***.***.***.***:ポート番号のみでアクセスできるようにし、
ttp://hogehoge.com:ポート番号ではアクセスできないようにしたい。

264 :
>>263
テンプレをまず読んでから質問しましょう
>>1-3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com, example.net, example.org, example.jp などを使いましょう。
これに好きなサブドメインをつけて説明するのは可。
×hogehoge.com
○example.com
hogehoge.comは第三者が所有しているドメイン名です
所有者に無断で例示に使わないよう、ここだけでなく他所でもご注意を

265 :
http://example.com:80/ とwwwのデフォルトのポート80にアクセスさせる場合は
URLの:80の部分をせっせと削るブラウザがあるから.htaccessでは対処できない。
ということでサーバー丸ごとの設定ができる環境ならIPベースのバーチャルホストを
同一IPアドレスの異なるポートで設定、あるいは異なるポートをリッスンする別のサーバーを起動し、
さらに http://example.com:49152/http://192.0.2.1:49152/ 等で別のドキュメントルートを
使いたいならネームバーチャルホストの設定もする。
方法はこのスレの管轄外。

266 :
>>264
hogehoge.comはhogehoge.comらしい運用をされてないみたいだから
勝手に使われた方が都合が良いんじゃね?w

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

268 :
よろしくお願いします
ttp://wavlac.net/oinari-uploader/src/oinari0221.txt

269 :
適切なスレが見つからなかったので、こちらで質問させて下さい。
現在携帯サイトを作っていて、特定のページからのアクセスのみ許可したいのですが何か手法はありますでしょうか。。
リファラーでの処理はドコモは拒否されてしまいます。。
よろしくお願い致します。

270 :
>>269
ドコモは、新しいブラウザーでは、リファラを吐く
auとSBは、かなりの機種がリファラを吐く
それらに限定すればおk

271 :
現行機種限定ではきついです・・
ありがとうございました。

272 :
basic認証においてIDとパスワードを盗聴された場合にそなえたいのですが
どのようなガードをしておけばいいでしょうか?

273 :
>>272
basic認証をやめる
文字列を入力するような盗聴の可能性の高い認証をやめ、
証明書等を使った認証に切り替える
basic認証なんて子供の玩具みたいなものですから、
もしお金の絡むビジネスシーンで使っているのでしたら、
早急に変更を検討された方が個人的には良いと思います

274 :
>>272
IPアドレスで制限する
不特定多数が対象なら厳しいけど

275 :
basic認証の盗聴って具体的にどういうふうにやられるの?

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

277 :
アクセス許可は国内のみです
国内でも画像の直リンクは弾きたいのですが
以下の指定ではうまくいかないようです
どこがまちがっているのでしょうか?
order allow,deny
allow from(国内IP)
deny from(弾くIP)
SetEnvIf Host "example\.com" ref_ng
SetEnvif Referer "^example\.com" !ref_ng
SetEnvif Referer "^$" !ref_ng
<Files ~ "\.(gif|jpe?g|png)$">
deny from env=ref_ng
</Files>

278 :
人生が間違ってる

279 :
>>277
さくら鯖のFAQによく似たのが載ってた
SetEnvIf Host "example\.com" ref_ng
SetEnvif Referer "^example\.com" !ref_ng
SetEnvif Referer "^$" !ref_ng
order allow,deny
allow from(国内IP)
<Files ~ "\.(gif|jpe?g|png)$">
deny from env=ref_ng
</Files>
deny from(弾くIP)

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

281 :
img srcで実際ない画像を指定している場合、not_found.jpg等
固定で用意している画像を出力する設定を.htaccess等で行う
ことは可能でしょうか。
もしできる場合、ご教示いただけますと助かります。
よろしくお願いします。

282 :
>>281
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .*¥.jpg$ 画像へのURL
とかじゃないかと...
適当だけどね

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

284 :
>>282
ありがとうございます。
WordPressの設定が予め書かれていたので、それに
  RewriteRule \.(jpg|png|gif)$ /image_not_found.gif [NC,L]
と追記してみたところ、500エラーになってしまいました。
初歩的な質問ではございますが、ご教示いただけますと幸いです。
下記がその箇所です。
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule \.(jpg|png|gif)$ /image_not_found.gif [NC,L]
  RewriteRule . /index.php [L]
</IfModule>

285 :
日本語のディレクトリのリダイレクトが動作しません。
http://www.*********.com/サイトマップ/

http://www.*********.com/sitemaps/
にリダイレクトしたいです。
Redirect permanent /サイトマップ/ http://www.*********.com/sitemaps/
Redirect permanent /%E3%82%B5%E3%82%A4%E3%83%88%E3%83%9E%E3%83%83%E3%83%97/ http://www.*********.com/sitemaps/
両方試しましたが、うまくいきませんでした。
何か方法はありませんか?

286 :
レンタルサーバの@Pageって.htaccessを編集できない?

287 :
>>286
スレ違い
@Pageを使っているような人しか分からない
↓で@Pageのスレを見つけるか立てて聞いてください
レンタル鯖
http://pc11.2ch.net/hosting/

288 :
普通にブラウザでアクセスされた場合と<img src=〜でアクセスされた場合で
振り分け可能でしょうか?

289 :
>>288
??
<img src=〜
は、Webブラウザーが解釈・実行しているわけだが...

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

291 :
よくわからんが俺ならバッチファイルでftp

292 :
>>290
file/.htaccessへ
ForceType application/octet-stream
とか。

293 :
>>292
遅くなりました。ありがとうごさいますー

294 :
ほとほと困り果ててまして、間違いをご教授頂けるとありがたいです。
.htaccess許可サーバ使用で、単純に特定ホストだけ拒否したいんですが、
なぜか設定後に接続出来ているみたいなんです。
一体どこを間違ってるやら。試しに自IPでやった時は拒否できたんですが。
order allow,deny
allow from all
deny from souka.saitama.ocn.ne.jp

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

296 :
>>295
ありがとうございます。まさか.一個とはスレ汚し失礼しました。
あと、重ね重ね初歩で申し訳ないと思いつつ、
もう一つだけお願い出来れば幸いなんですが。
例えば上記で弾きたいのが
a(任意の四桁数字)-aaaa(任意の三桁数字)sample.sample.aaa.ne.jpって場合でも、
それでいけるんでしょうか。或いは数字部分の指定が必要でしょうか。

297 :
できるかのかどうか教えてください。
htaccessでコピペやドラッグ&ドロップの禁止とかかけられますか?

298 :
>>297
できるわけねーだろww

299 :
RewriteEngine On
RewriteRule ^register\/(.+)$ http://example.com/dev/register.php$1 [L]
/devにこれをおきます。
http://example.com/dev/register/?location=xxxxx
にアクセスすると404になります。なぜでしょうか?

300 :
>>299
?がないからじゃね?

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

302 :
>>301
だから、
http://example.com/dev/register.php$1
ってやってるからだろ

303 :
?以下を取り出すにはRewriteCondでQUERY_STRINGとマッチさせて%1などに入れる。

304 :
ファイルが有無でRewrite先を変えたいンですけど、出来ますでしょうか
http://******/hoge/a/123456.jpg にリクエストが有った際
http://******/hoge/b/123456.jpg が、
1:あったら、 http://******/hoge/b/123456.jpを表示
2:なかったら http://******/hoge/a/123456.jpg をそのまま表示
という動作をmod_rewrite で行いたいのですが可能でしょうか?
見よう見まねで下記を http://******/hoge/ の.htaccessに書いたのですが
〜/b/123456.jpg がない場合にループ?におちいるようで実現できません。

RewriteEngine On
RewriteBase /hoge/
#取り合えず b/を見に行く
RewriteRule ^a/(.*).(jpg|gif|png)$ b/$1.$2 [L]
#b/に無かったら aを表示
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^b/(.*).(jpg|gif|png)$ a/$1.$2 [L]

305 :
ひとつめの[L]いらないんじゃないかな

306 :
ヽ(^◇^*)/
出来ました! 
そうか![L]や[R]にすると、2度目のリクエストでもう一度、新たに実行しちゃうんですね。
感謝です! ハマりまくって18時間です。これで寝れます
ペコm(_ _;m)三(m;_ _)mペコ 
本当にありがとうございます!

307 :
実際にトライしないで答えちゃったけど、解決したならなにより。
思うに、クライアント側から直接
http://******/hoge/b/123456.jpg
をリクエストされることがないのであれば、本来は1番目の
RewriteRuleは[C]でチェーンする(その規則にマッチした
場合のみ次の規則に進む)ほうがよいのかもね。
RewriteCondは無指定でも次規則にチェーンするので、
条件節で書くと
if ( $url matches RewriteRule1) {
$url = RewriteRule1( $url )
if ( $url matches RewriteCond ) {
$url = RewriteRule2( $url )
}
}
ってな流れの処理になり、2番目のRewriteRuleが
実行されるのは、1番目のRewriteRuleが実行された
時のみになる…はず。チェーン本格的に使ったことが
ないので、実際こうなるかわからんけど。

308 :
おはようございます。
[C]を使っても無事動きました!
[C]を使うほうが処理がまとまってイイですね。
重ね重ね、ありがとうございます。
眠い......o(~o~;) 
mod_rewrite の和訳本、誰か出して欲しいなー
http://www.amazon.co.jp/exec/obidos/ASIN/1590595610/

309 :
ドキュメントの和訳はあった方がよさそうだが、
本を出すまでもないと思う。

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

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

312 :
>>310
.htaccessでIncludeディレクティブは使えないけど、
.htaccessファイルをシンボリックリンクなどを使って
ファイルシステム上でリンクしてしまうのはあり。

313 :
>>311
>>312
僕には難しそうなのでhost名で許可して様子見てみます
ありがとうございました。

314 :
>>312
ちょっとスレ違いでスマソだが、シンボリックリンクを使えば、例えば別々の
.htaccessで制限したディレクトリ(例:\aaa\ と \bbb\)でファイルを共有
する事は可能ですか?
\aaa\hoge.html を \bbb\hoge.html と指定しても同じファイルにアクセス
出来ると有りがたいですが。
勿論、\bbb\top.htmlから a href="hoge.html" で相対ハイパーリンクした
場合もオケでないと困るのですが。
ただレンタルサーバーで実現したいので、その制限に「ln」コマンド利用が
引っかかると駄目?でしょうけど。因みにサクラのライトです。

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

316 :
1.htaccessで特定のディレクトリ(contactとmail)を自動的にhttpからhttpsへ
2.その他のディレクトリはhttpのまま
上記の処理を行いたいです。
1は対応できたのですが、2のhttps://www.hogehoge.com/contact/からその他ディレクトリへ
アクセスした際にhttp://www.hogehoge.com/〜と
自動的にhttpにする処理で行き詰っております。
ご教授いただければ幸いです。
<Files *>
RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^https://www.hogehoge.com/(.*)$ http://www.hogehoge.com/$1
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/contact/(.*)
https://www.hogehoge.com/contact/ [R]
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/mail/(.*)
https://www.hogehoge.com/mail/ [R]
</Files>


317 :
はじめまして。質問させて下さい。
すみません、316です。
書き込みの途中で送信してしまいました。

318 :
>>316
RewriteRuleの前項には、https://なんてはいらん

319 :
>>318
> RewriteRuleの前項には、https://なんてはいらん
ですね。

320 :
>>315
おお、サンクス
じつわIPアドレス制限で携帯のみアクセス可能なディレクトリに、xhtmlなwebを
作ってますが、これに裏口みたいにPCで接続可能なディレクトリを造ろうと考え
てる次第です。
サクラのライトでレンタルサーバーお初なド素人状態なので、全然構想が進まな
い訳ですが、裏口はまず利用プロバイダのホストURLで制限し、更にVBScriptで
MACアドレスを取得し、cgiで判定する?方法を考えてます。
当然ながらブラウザはIEのみ対象になりますが。
http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200711/07110020.txt
多分、その際にcgiも関与せざるを得ないかな〜、くらいにしか分からず、まだまだ
調査や勉強が必要ですがcgiでもシンボリックリンクを使えそうな話は有り難かった
です。(cgiはちょっと齧った程度で、スクリプトは全然作った事が無いですし。)
あ、勿論MACアドレスの偽装が簡単に可能なのは知ってますし、PCに固定IPアドレス
を使うのが一番良いのも分かってます。(結局、コストと完璧さのせめぎ合いな訳で。)

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

322 :
>>321
Basic認証は携帯専用ディレクトリにもかけてるので、PC用裏口ディレクトリ
にも当然かけるつもりです。
ただIDやpassを別管理したくないから、.htpasswdもシンボリックリンク出来る
と嬉しいですが。
あと裏口ディレクトリの.htaccessには、利用プロバイダのホストURLで制限を
かけるつもりなので、それで携帯電話のアクセスは出来ない筈です。
ただ.htaccessと、cgi又はVBスクリプトでの判定で、ホストURLの二重管理が
必要そうなのがやや心配ですが。
.htaccessに例えば下記の様にMACアドレスをコメントで記述して、それを判定処理で
読み出して使う様にすればよいかな?と思ってますが。
allow from .adsl.ppp.infoweb.ne.jp # MAC=00:11:22:33:44:55
判定処理ではホストURL&MACアドレスのペアで判定しないと、MACアドレスの
偽装だけで簡単にクラック出来てしまうので。

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

324 :
>>318-319
ご返答ありがとうございます。
RewriteRuleの前項を/home/〜にすると
http〜のアクセスをhttp〜へ転送する処理になり
自動転送がループしてエラーが出ます。
/home/〜 の記述法でhttpsを指定することが出来るのでしょうか?
<Files *>
RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/(.*)$ http://www.hogehoge.com/$1
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/contact/(.*)
https://www.hogehoge.com/contact/ [R]
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^/home/hogehoge-com/public_html/mail/(.*)
https://www.hogehoge.com/mail/ [R]
</Files>


325 :
>>324
>RewriteRule ^/home/hogehoge-com/public_html/(.*)$
          ↑
  これは、サーバーのディスク上のファイルパスだろ?
  ここには、httpでアクセスした時のドキュメントルートからだ
ググれば、このくらいのことはすぐ出てくるだろう

326 :
[R]のときとそうでないときとか,
右項と左項とかで参照するパスが変わるのが
直感的でない,というのはありますね…。

327 :
>>324
httpへ戻すRuleのCondが!^80$じゃないと駄目っしょ?

328 :
>>323
イロイロと情報有難う御座います。
htpasswdは共有出来るんですね。もしかしたら可能かとは思ってましたが、
ハッキリ分かって助かります。
ただ共有するとPCでIDやpassを探るtoolを使われ捲りそうだから、セキュ
リティを考えると携帯用とPC用は別々にすべきかも知れませんが。
htaccessのコメントにMACアドレスを追加する件は、同じホストURLに複数
のユーザーが居るパターンも考えられるので、別の行にしようと思います。
allow from .adsl.ppp.infoweb.ne.jp
#00:11:22:33:44:55
#00:66:77:88:99:11
ただcgiとかで.htaccessファイルを見れるかどうかの条件や手段は未だ
分かりかねますが。
MACアドレスの偽装に関しては、IDやpassほどには探るtoolが充実して
ないのでは?と思ってる次第で、まあそれなり程度のガードくらいで
考えてます。

329 :
パスワードで保護された領域下で
特定のディレクトリのみ直リンクできるようにするにはどうすればよいのでしょうか?
test
├ .htaccess
├ .htpasswd
├ test.html
└ pngフォルダ →このフォルダだけ直リンクOKにしたいのです
  ├ 5963.png
  └ 4649.png

330 :
329質問は認証かからない位置に置いて対応することにしました。

331 :
質問です。サーバーはさくらを使用。
<Files ~ "¥.(log|dat|csv|txt)$">
deny from all
</Files>
を記載し、内容、パーミッションなどは同じでファイル名だけが異なるファイルが二つあります。
なぜかある特定のディレクトリ・特定のファイル名の時だけdenyされません。
× www.sample.com/a/abcd.csv(これだけダウンロードになる)
○ www.sample.com/a/abcd_.csv
○ www.sample.com/a/_abcd.csv
○ www.sample.com/a/abc.csv
またサブドメインを抜いてのアクセス、別ディレクトリでのアクセスは正しくdenyされます。
○ sample.com/a/abcd.csv
○ www.sample.com/b/abcd.csv
他のファイルではこのような現象が起きないため、
なぜこの2ファイルが特定の条件でダウンロードになるのか頭を悩ませています。
ご助言がありましたらお願いいたします。

332 :
すみません、example.comとすべきところを寝ぼけてsampleとしてしまいました。
ご用捨ください。

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

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

335 :
>>334
ありがとうございます。
助言通りにしばらくしてやってみたら、たしかに403になりました。
まさかキャッシュだったとはorz
お蔭様ですっきりしました。もっと精進します。

336 :
>>333
情報ドモです。
まあMACアドレスを使うのは、WindowsよりLinuxの方がウイルスに強いかな?
くらいの感覚ですね。
ID&passwordは既に利用してるから、よりマシになればオケ程度のレベルです。

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

338 :
クライアントのNICに割り振られているMACを抽出して
スクリプトに検知させて挙動のトリガーに使うってことでしょ

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

340 :
>>337
>>320

341 :
>>339
ある。
.htaccessの地の部分を読んだあと<Filesで特定のファイル名に限定した部分を読む。

342 :
>>341
ご回答ありがとうございます。

343 :
いざやってみたところ500エラーが出てしまいました。
order allow,deny
allow from all
〜以下 deny from で好ましくないホストを列挙
その後に
<Files example.log>
order allow,deny
deny from all
<Files>
を入れています。
その他には最初の方に
ErrorDocument等を入れています。
見れなくなってしまう原因がわからず困っておりまして
どなたかわかる方いますでしょうか?

344 :
×<Files>
○</Files>

345 :
>>344
ありがとうございます。エラー出なくなりました。
ですが、Filesで指定したファイルに直接アクセスしても
普通に見れてしまいます・・・

346 :
×見れてしまう
○見られてしまう
○見えてしまう

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

348 :
>>347の先頭2行の記述以外には全く記述間違いがない
という前提で答えると、
twなど、トップレベルドメインだけで該当国からのアクセスを弾く事は不可能です
名前解決され必ずtwのドメインを含むHost名でアクセスがある
という保証がインターネットには無いため、
該当国からのアクセスをdenyしたい場合はNetwork address rangeで
deny設定する必要があります

349 :
>>348
検討違いだったら申し訳ないのですが、
ホストが***.adsl.dynamic.seed.net.twという方からアクセスがある状態です。

350 :
twと一見名前解決されているように見えて、
他セッションで名前解決されていなければすり抜ける
それと>>347の先頭2行の記述以外には全く記述間違いがない
という前提で>>348を答えている事はご理解を

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

352 :
特定のユーザエージェントで、かつ特定言語の場合のみ弾きたいのですが
and条件はどの様に記述するのでしょうか…
SetEnvIf User-Agent "hogehoge" deny_ua
SetEnvIf Accept-Language en deny_ua
order allow,deny
allow from all
deny from env=deny_ua
と書いたらエラーになってしまいました

353 :
これまで例文どおりに適当に使ってましたが
どうしてもOrderを使う意味が分からず
質問させてください。
例えば下の3つは同じく全拒否になると思うのですが
Orderはどういうときに使うのでしょうか?
例1
Order allow,deny
deny from all
例2
Order deny,allow
deny from all
例3
deny from all

354 :
>>352
必ず真になる条件を用意して
SetEnvIf Request_URI .? allow_ua
偽にしたい条件で偽にする。
SetEnvIf User-Agent "hogehoge" !allow_ua
SetEnvIf Accept-Language en !allow_ua
そして否定側で使う
order allow,deny
allow from env=allow_ua
>>353
Order allow,denyはデフォルトでDeny from allであり、Order deny,allowは
デフォルトでAllow from allである。
例1はOrderで既にDeny from allと同じ状態になっているから
Deny from allは全てのアクセスを拒否する判定が入る分冗長である。
例2はOrderがAllow from allと同じ状態になって全てのアクセスを許可しているところを
Deny from allで全てのアクセスを拒否するようにしている。
例3はOrderがどちらになっていても(デフォルトはDeny,Allow)
明示的に全てのアクセスを拒否する。

355 :
>>354
詳しくありがとうございます。
すっきりしました!
deny fromとallow fromの各行を書く順番って
関係ないんですね。
勘違いしてました。恥ずかしい・・・

356 :
>>354
上段、or条件になって>>352の望む動作にならないような
and条件はmod_rewrite使えば簡単だけど使える鯖が限られるしな

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

358 :
>>352の、ツッコミだけじゃなんなので少し考えてみた
SetEnvIf Request_URI .? allow_ua
SetEnvIf User-Agent "hogehoge" !allow_ua
SetEnvIf User-Agent "hogehoge" allow_ua2
SetEnvIf Accept-Language en !allow_ua2
order allow,deny
allow from env=allow_ua
allow from env=allow_ua2
こんな感じでどうだろう
hogehogeの行が続いて見た感じ気持悪いけど

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

360 :
allow_uaでhogehoge以外の全てのUA許可
allow_ua2で言語enを除くhogehogeを許可なので
hogehogeかつenだけが拒否される…はず
動作確認はしてないけど
3つ以上の条件になると面倒臭いだろうな
mod_rewrite万歳

361 :
一応>>358でシンプルにいけるのか。
これ以上andで条件を増やそうとするとやっぱりアレだけどw

362 :
質問です。
http://example.com/
にアクセスがあった場合に
http://example.com/wiki/
に飛ばすにはどうしたらいいでしょうか?
試したのはこれです
RewriteEngine On
RewriteCond %{THE_REQUEST} ^/$
RewriteRule ^*$ /wiki/index.php [L]
アドバイスお願いします > <
/.htaccess には既にmediawiki用のコードあります。
RewriteEngine On
RewriteRule ^wiki/(.*)$ /wiki/index.php?title=$1 [PT,L,QSA]
RewriteRule ^wiki/*$ /wiki/index.php [L,QSA]


363 :
質問させて下さい。
<meta http-equiv="Content-Script-Type" content="text/javascript" />
を.htaccessに記述するには、どうすればいいのでしょうか?
また、これとは別件なのですが、.htaccessの文法をチェックしてくれるソフトやサイトはあるのでしょうか?
よろしくお願いします。

364 :
難しく考えすぎ
Redirect permanent http://example.com/ http://example.com/wiki/
だけでも飛ぶ
RewriteEngine on
RewriteRule ^/(.*) /wiki/$1 [R=301,L]

365 :
>>364
ありがとうございます!

366 :
神様お願いします。
現在携帯からPCのアドレスにアクセスをした場合redirect
させているのですがこれをRewriteMapを使ってやりたいのですが無理ですか?
RewriteMapでtxtかなんかにDoCoMoとか記述するだけで
RewriteCond %{HTTP_USER_AGENT}を使わないで出来たらいいなと。
スレチならすみません。でもホントアドバイス欲しいです。。
今はこんな感じです。
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^DoCoMo [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^KDDI [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Up.Browser [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^vodafone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^SoftBank [NC]
RewriteRule ^/$ http://example.com/mobile/ [R,L]

367 :
まとめて書いても良い訳だが
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^(DoCoMo|KDDI|DDIPOKET|UP\.Browser|J-PHONE|Vodafone|SoftBank)
RewriteRule ^$ http://example.com/mobile/ [R]

368 :
>>363
mod_headersが有効になってるサーバなら
Header set Content-Script-Type text/javascript
で同じ意味になりそうだけど、そもそもそれを書く意味ってあるの?w
.htaccessの文法チェックはサーバが500 Internal Server Errorを返すかどうかで判断する。
そのチェック用のApacheをPCにインストールする。

369 :
>>364
/から/wikiみたいに中に入る場合は難しく考えないとループしちゃうんじゃないか?
RedirectMatch 301 ^/$ /wiki
とか。

370 :
>>366
RewriteMapは.htaccessでは使えないし、更新した時もサーバを再起動して
反映させないといけなかった気がしたから、まずはそのあたりから。

371 :
>>367,370
どうもありがとう。
携帯のキャリアはMapじゃないほうが楽かね・・
%{HTTP_USER_AGENT}のサーバ変数がMap使うとやっかいになりそう。

372 :
mod_rewriteに関する質問です。
http://example.com/app/にアクセスした際、実際はhttp://example.com/app/app.cgi/が呼ばれるようにしたいと思い、以下のように.htaccessに記述しました。
RewriteEngine on
RewriteBase /app/
RewriteCond %{REQUEST_URI} !app\.cgi
RewriteRule ^(.*)$ app.cgi/$1 [L]
しかし、これではhttp://example.com/app/app.cgiにアクセスした際、http://example.com/app/app.cgi/app.cgiが呼ばれるのではなくURLと同じhttp://example.com/app/app.cgiが呼ばれることになってしまいます。
http://example.com/app/app.cgi/app.cgiが呼ばれるようにしたいのですがどうすればよいのでしょうか。

373 :
>http://example.com/app/にアクセスした際、実際はhttp://example.com/app/app.cgi/が呼ばれるようにしたいと思い
>URLと同じhttp://example.com/app/app.cgiが呼ばれることになってしまいます。
??
意味不明だなぁ

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

375 :
そういうのはリライトして空間をねじ曲げるより
Actionとか使った方が楽なのかもしれない。

376 :
>>375
分かりました。別の方向で検討してみることにします。
みなさんどうもありがとうございました。

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

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

379 :
たまにYouTubeにリンクとかもしてるんで、URLはNGワードにしたく無いんですよねぇ
htaccessって許可と不許可を同居出来ないのでしょうか?

380 :
テンプレに記されてるサイトくらい熟読してから質問しろカス

381 :
そんな言い方ってないじゃないですか。
別に私はあなたの友達でもなんでもないんですよ。
失礼だと口のきき方をわきまえたまえよ。

382 :
何言ってんだこの屑は。
友人でもない人に教えを請うているのに礼節もルールも守れないのか。
質問自体くだらなすぎるしRばいいと思うよw

383 :
ID:kxwMT1kR

384 :
吉野家に入って、「俺はハンバーガーが食いたいんだ!」とわめいてるようなもんだな。

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

386 :
掲示板の機能でIPでの書き込み規制くらいできるだろ
書き込みをID制にして個別に許可を与えるとか

387 :
掲示板がIP規制対応していないので、htaccessでなんとかならんですか?

388 :
同じ奴だろこいつw

389 :
そんなことも出来ないカスはRばいいと思うよ

390 :
>>387
対応してる掲示板を使え
フリーCGIのでも対応してるのは多いからサーバー借りて導入しろ

391 :
糞レスは無視して.htaccessでやるなら、たぶん今はこうなってるだろうから
Order deny,allow
Deny from all
Allow from .jp
こうする
Order allow,deny
Allow from .jp
Deny from spam.example.ne.jp

392 :
質問です。
現在 example.com/ にアクセスがあったら全て
example.com/blog/ に飛ばすようにしています。
#Redirect permanent /index.html http://example.com/blog/index.html
今回WordPressを設置したので
example.com/wordpress/ にアクセスした時だけWPを表示させたいのです。
そこでこのようにしたのですが
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/(.*)$ /blog/index.html [R=301,L]
試したら403 Forbiddenになってしまいblog/に飛ばなくなってしまいました。
どうしたらいいのでしょうか

393 :
>>392
そのRewriteCond 2つはたぶん必要ない。
そして
RewriteCond %{REQUEST_URI} !^/wordpress/
みたいなRewriteCondが必要だと思う。

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

395 :
>>393
ありがとうございました!

396 :
>>394
Satisfy Any としてユーザー認証とホストのアクセス制限の
どちらかを通過すればアクセス可能という状態にはできる。

397 :
>>396
ををを、これは完璧な解決策。ありがとう!

398 :
ド素人です。
検索や過去ログ確認しましたが解決しないので質問させていただきます。
携帯からのアクセスを全て同じディレクトリに転送したいのですがうまくいきません。
ルートに以下の.htaccessを設置しました。
<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
Options -Indexes
ErrorDocument 404 http://www.sample.com/not_found.html
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "DoCoMo" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "J-PHONE" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "KDDI" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "UP.Browser" [NC]
RewriteRule ^$ http://www.sample.com/m/
その他m/ディレクトリの.htaccessに
RewriteEngine off
と記述しました。
ドメインへのアクセスはm/index.htmlを表示するのですが
それ以外のPC用の.htmlファイルへのアクセスが転送されずにPC用のファイルを
そのまま表示します。
皆さんにとっては初歩的な質問かと思いますが、よろしくお願いします。



399 :
PC用のindex.htmlへのアクセスも転送されません

400 :
>>398
基本的な設定は>>367の通り
基本的な動作が確認できたら他のを付け足していくと良い

401 :
すみません
コピペしていろいろ試しましたがやっぱダメです。
ドメインへのアクセスのみ転送されます。
kagoyaなんですがサーバーの設定かなんかですかね?

402 :
kagoyaに問い合わせてみた。
↓を試してみてくれといわれてやってみたが
何も変わらなかった。
RewriteRule !m/* http://www.sample/m/ [R]
なんか根本的な間違いがあるような気がしてきた。

403 :
リライトは前後のルールからの影響も受けられるから
他のルールが原因で適用したいルールが避けられてるかも。

404 :
http://example.com/〜.cgi/~user/をhttp://example.com/でCGIを開くようにするにはModRewriteをどう書けばよいのでしょうか?
ご教示ください。

405 :
>>404
もうすこしちゃんと書け

406 :
>>405
CGIをhttp://sub.example.com/などサブドメインで運用したいって言ったら
http://example.com/ で CGI が開くように ModRewrite を設定しろと言われました。
使ってるCGIはこれです ttp://adiary.org/


407 :
一部のIPだけを制限し一部のUA以外を許可する場合はどのように書けばいいのでしょうか

408 :
一部のUA以外を許可する場合……ということは、ああやればいい

409 :
WordPressで、単一の記事、例えば「http://hogehoge.com/?p=20」へリンクを貼られた際に、
そのURLの末尾に「#blog」を追加したいと思っています。
「?p=」が含まれているURLの末尾に追加する、ということで、
RewriteRule ^?=(.*)\$ /$1#blog [R=301,L]
で大丈夫でしょうか?
どなたか教えて下さい。よろしくお願いします。

410 :
RewriteRule ^?p=(.*)\$ /$1#blog [R=301,L]
でした。すみません。

411 :
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上の制限では規制できるのですが、なるべくトップページも閲覧してほしくないので、
上記のもので規制がかからない場合の原因の候補を教えていただければ幸いです。

412 :
>>409
#〜の部分はHTTPプロトコルとは関係なかったりもするので
付け足してブラウザが正常に動作するかは知らない。
>>411
まず適当なゴミの文字とか間違った設定を書いてみて
500 Internal Server Errorになるかどうかで
.htaccess自体が効いてるかどうか調べるとか。

413 :
独自ドメインでサブドメインを使いたくて、一番上のディレクトリに
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 にならないのかが不思議で、腑に落ちない感じがします。
正常な動作でしょうか?

414 :
wwwではその2つの.htaccessを読んでるけど、subはsub/の中の1つだけしか読んでないからとか。

415 :
結局問題ないんですかね?
2つが読み込まれるタイミングによって・・・、とかはないですよね?

416 :
ディレクトリを掘り下げていく途中で.htaccessがあれば
その中に書かれた設定を上書きしていくという動作だから
タイミングではなく必ず上のディレクトリの設定が先。

417 :
ということは、いま意図通りに動いていればこのままでいいということですかね。

418 :
動いていればいいんじゃない?
としか答えられないほど最近は.htaccessとかApacheとかを触ってなくてごめんねw

419 :
>>418
今のところ問題ないみたいだからこのままにしとくよ。

420 :
考えているうちによくわからなくなったのでアドバイスをお願いします。
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に
飛ばすにはどういう設定にすればいいでしょうか。

421 :
>>420
こんなんでだめか?
試してないので上手く動くかわからんけど
RewriteCond %{REMOTE_ADDR} ^aaa¥.bbb¥.ccc¥.ddd$
RewriteRule ^(menu¥.html) /usomenu.html [L]

422 :
>>421
試せよw

423 :
>>422
断る

424 :
あるフォルダ中の条件1に当てはまるファイルはアクセス禁止、
条件2に当てはまるファイルはBASIC認証という風には出来るのでしょうか?

425 :
その条件がクライアント側の条件でないなら
条件ごとにファイル名に特徴を付ければいける。
ただ、ブラウザ側はフォルダごとで認証をするので、
ファイルごとに違うユーザー名やパスワードが必要な状態にすると
ファイルを見るたびに認証をしないといけない状態になるから、
認証が必要なファイルは1つのフォルダにまとめてしまうのがおすすめ。

426 :
質問です。
.htaccessを設置しようとしているサーバーの説明で、
「LimitをAuthConfigのみを許可しているのでその設定で」とありました。
LimitをAuthConfigのみにする、とは具体的にどういう記述をすればいいのでしょうか?
ぐぐってもよく分からず理解できなかったので、どうかよろしくお願い致します。

427 :
AllowOverrideがAuthConfigのみ設定されているってことじゃないかな?
ttp://httpd.apache.org/docs/2.2/mod/core.html#allowoverride
だから普通にBASIC認証の設定が出来ますよという感じ。
Apacheのドキュメントの上書きのところにAuthConfigと書かれている
ディレクティブが使えますよと。

428 :

「さくらサーバ」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ファイルにはどんな記述をすればいいでしょうか?

429 :
なぜそのfaqページをちゃんと読まないの?

430 :
>>427
>>426です、ありがとうございます!
なんとかなりそうです、助かりました

431 :
中国と韓国がなかったらネットの世界はもっと平和で美しかっただろうにと思うわ

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

433 :
fc2の仕様です

434 :
すいませんです。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が発動しない・・・
なんでなのか分からなくて頭が割れそうです。。
すいませんどなたか教えて下さい。。



435 :

↑ごめん/m/は忘れて下さい。
てかグダグダですいません。
つまり独自ドメインでアクセスしたら.htaccessが発動
しないんです・・助けて下さい。


436 :
そういうのはfc2に問い合わせないとどうにもならんだろ。
htaccessが利く対象や範囲も、所詮はサーバーの大元の管理者次第なのだから。

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

438 :
どっか別のコミュニティにも>>437のようなことしか言わない奴とかいるよね?w

439 :
リライトで、送られてくる
%E9%A3%9B%E8%A1%8C%E6%A9%9Fという文字列を、
xE9xA3x9BxE8xA1x8CxE6xA9x9Fのように返還したいのですが
どうやってもできませんでした。
知ってる方教えてください。
RewriteRule ^(.*)%26(.*)$ $1x$2 [N]
RewriteRule ^(.*)%(.*)$ $1x$2 [N]
RewriteRule ^(.*)¥%(.*)$ $1x$2 [N]
全部ダメでした。

440 :
疲れたので諦めました

441 :
リライト内部では%E9%A3%9B%E8%A1%8C%E6%A9%9Fが
もう飛行機に置き換えられちゃってるんじゃなかったかな?
忘れた。

442 :
/home/aaa/www/bbb/ccc/
に置いたのに
/home/aaa/www/bbb/index.html
を開くとパス聞かれるんだけど…
〜/ccc/を含む下層にしか効かないはずですよね
聞かれなくて済む方法教えてください

443 :
テンプレも読まずに質問する人には答えないだけです>>438

444 :
>>442
とりあえずcccの中の.htaccessをリネームして
bbb/index.htmlを開いてみてまだ認証が効いてるようなら
別のところで認証に関する設定が施されてるとか。

445 :
>>441
htaccessで飛行機をまた%E9%A3%9B%E8%A1%8C%E6%A9%9Fにできませんか
ファイル名を作るのに、飛行機ではまずいかなと。

446 :
>>444
レスありがとうございます
リネームしてやってみたけど結果は同じでした
なので、〜/ddd/を作って改めて最初からやってみたところ
今度はうまくいった様子です
〜/ccc/だけは何度やっても何やっても駄目なのに……
さくらネットのファイルマネージャーを使ってやっているから
文法ミスやパーミッション、転送形式違いはないはずですが


447 :
>>446
/ccc/
が、サーバー側で設定されている特別な名前なんじゃね?
manual
とか
server-info
がそうであるように。。

448 :
>>447
/example/ とか例示用の名前を使うべきところですか?w

449 :
>>447
/ss/ という特別じゃなさそうな名前なんですが…
自力で設置してもマネージャ使っても同じ症状だったんで
自分の認識が間違っているのかと思ってここに質問した次第です
何故だったのか理由はわからないけど
再度同じことが起こらないよう祈るばかりです

450 :
あるサイトのリンクからの来訪を制限したいのですが、
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
でもだめでした…どうすればいいのでしょうか。

451 :
>>449
/bbb/.htaccessにSatisfy Anyと書いて認証が外れるなら
サーバ側で既に認証がかけられてることになるかも。
>>450
Limitのディレクティブだけが上書きを許可されているなら
OrderとAllowとDenyくらいしか使えない。

452 :
>>451
>>450です。
アドバイスありがとうございました。
おかげさまで設置できました!

453 :
>>451
〜/bbb/内には.htaccessがありません
〜/bbb/ddd/作成以降、〜/bbb/eee/も作って同じくパスをかけてみたけれど、そちらもOK
/bbb/index.htmlも同じものをそのまま使用しているから、/ss/のみがうまくいかない感じです
嫌われる名前なのだか、何かやらかして嫌われちゃったか……
とりあえず今回は解決したので、あまり深く考えない事にします
ご協力くださったみなさま、ありがとうございました

454 :
深く考えるなら<Files index.html>〜</Files>で囲んで
そのファイルだけ認証を必要とするように出来たような出来なかったような。

455 :
質問させてください
拡張子phpのページでもSSIを使えるようにするにはどうすればよいのでしょうか?
http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/ssi.html#ssi2
こちらにあるhtmlをphpに変えてみてもinternal server errorになってしまいました

456 :
test

457 :
.htaccessを適用をディレクトリ毎に変えたいのですができますか?
ディレクトリ構成
root(.htaccessが入っている)
┣hoge1┳piyo
┃    ┗huga
┣hoge2┳piyo
┃    ┗huga
┗hoge3┳piyo
     ┗huga
piyoとhugaに別々の設定をしたいのですがどうすれば良いでしょうか…
hogeフォルダが大量にあり、またディレクトリの構成も変えられません/(^o^)\

458 :
ディレクトリが大量にあるからと.htaccessを各ディレクトリに置こうとしないのは甘えw
/root/hoge*/.htaccessに両方で有効な基本となる設定を書いて
/root/hoge*/{piyo,huga}/.htaccessへそれを上書きする小さい.htaccessを置けばいいかも?

459 :
>>458
レスありがとうございます!
hogeディレクトリは日々増えていくんで
各ディレクトリに.htaccessを置くのは途方も無い作業になるんですorz
rootにある.htaccessにpiyoにはこの設定、hugaにはこの設定、って分けて書けたら良いんですが…

460 :
そこで楽をしたいというなら始めからこうすべきじゃない?
┣piyo┳hoge1
┃   ┣hoge2
┃   ┗hoge3
┣huga┳hoge1
      ┣hoge2
      ┗hoge3

461 :
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が表示されます。
なにか原因として考えられることを
ご存じのかたがいらっしゃいましたら。
ぜひ教えてください。

462 :
トップディレクトリに.htaccessしかない状態で
example.com/ にアクセスがあった時に example.com/m/c/index.php にアクセスさせるには
どうしたらいいでしょうか?

RewriteEngine On
RewriteRule ^/$ /m/c/index.php
これだとできませんでした。。

463 :
>>462
RewriteLogを設定して、URL書き換えのログを吐き出すようにして、動きを調べてみれば?

464 :
やってみます><

465 :
すみません。宜しくお願いします。
地域を特定して、アクセス禁止したいのですが、
p****-ipngn*****kobeminato.hyogo.example.com (***は変動します。)
このホストのkoubeminato までを規制対象にすることは出来ますか?
Order allow,deny
allow from all
deny from kobeminato.hyogo.example.com
書いてみたんですが、kobeminatoの先頭に 「.」ドットは要るのでしょうか?

466 :
以下のアドレスを
http://example.com/category/info/page/2/ (数値のみ変動します)
以下のようにしたいのですが、
http://example.com/info/page/2/ (「category」を削ってシンプルにしたい)
どのように記述すればいいでしょうか。

467 :
RewriteRule ^category/(.*) $1
とか? 

468 :
勘違いごめんなさい
RewriteRule ^info/(.*) category/info/$1

469 :
>>468
ありがとうございます。これでいけました

470 :
OCNでhtmlをphpに偽装する方法を教えてください。
以前は、
AddType application/x-httpd-php .html
でよかったのですが、気づいたらこれでは出来なくなっていました。
OCN側で行ったPHPのバージョン5への変更が関係しているかと思うのですが、
何か情報は無いでしょうか?

471 :
OCNに聞け

472 :
AddHandler php5-script .html
だっけ?

473 :
>>472
追加して見ましたがダメでした。。。

474 :
>>473
URL書き換えて、
RewriteRule (.*).html$ $1.php [L]
みたいなんはダメ?

475 :
htpasswdに生成スクリプトで暗号化したIDとパスを書くんだがログイン出来ないよ?
aaa:bbbを暗号化してaaa:hogebbb
htpasswdに"aaa:hogebbb"と記述
ログイン画面でユーザーaaaパスbbbでログイン出来るものと認識してるんだが出来ない
ユーザーaaaパスhogebbbならログイン出来る
htpasswdにそのままaaa:bbbと書くと当たり前のようにユーザーaaaパスbbbでログイン出来る
ど素人ですまんがどうすればいいか教えて欲しい

476 :
自己解決しました
xamppを使ってローカルでやってたのですがどうもxamppはう暗号化方式が違うみたいで
xampp付属のhtpasswd.exeで生成したら通りました。失礼しました

477 :
アルゴリズムは同じだけど、Apacheのaprの方がちょっと最初に違う文字を突っ込むせいで
結果が違うって感じだったと思う。

478 :
質問です。
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だけにする方法はないのでしょうか?

479 :
Not Foundの時をなんとかするのならCondでそのファイルがあるかどうか
あらかじめ確かめておくとか?

480 :
.htaccessでの設定を下層ホルダで影響させないようにするにはどうすればいいでしょうか?
携帯サイトでトップページをPCから閲覧できないように.htaccessの設定をして下層ホルダーにQRコードのページを置いたのですが
当然のごとく、そのままではQRコードのページをPCで表示させることは出来ません。

481 :
下層のフォルダの.htaccessで上層から受け継がれた設定をキャンセルする。
大抵のディレクティブは再設定することでキャンセルできるけど、Basic認証とか
キャンセルできないものもある。
というか、キャンセルできない設定をキャンセルしたくなるのはそもそもフォルダの割り方がおかしいw

482 :
禿同
下層フォルダに置く事がどうかしてるわな。

483 :
保守

484 :
   , v、ヘM 'リ"ノンミ/ソMv、
   ソVvミ ヘ/Wv彡vV/ ミ∠ミ::
  ミミ  _   ミ:::
  ミ    二__, --、r'"___、 ヾ ト、::ヽ
  ミレ'"~ ,-,、 !  ! ' '" ̄ .ノ \ヾ:、
  K/ー'~ ^~_/  ヽミ:ー‐‐'"   ヽ i.
  !〉ー― '"( o ⊂! ' ヽ   ∪   Y
  i  ∪  ,.:: :二Uニ:::.、.       l i
  .!     :r' エ┴┴'ーダ ∪    !Kl  
  .i、  .   ヾ=、__./        ト=
   ヽ. :、∪ ゙ - ―-    ,; ∪ ,!
    \.  :.          .:    ノ

485 :
ごばく。まじすまん

486 :
>>485
なんと情けない誤爆内容ww

487 :
私のサイトのjsファイルをまるパクリされておりまして、(しかも数十サイト)
ソースもそのままなので私のサーバーの画像に直リンクされている状態。
ログを見ると毎日すごい量のアクセス数なので、良い解決策があれば教えていただきたいです。
なんちゃら.gifが読み込まれた時点で、ほんにゃら.htmlに強制転送などはできないのでしょうか?


488 :
>>487
直リンされているファイルを消すのは面白くないから、
とんでもない内容に差し替えたら?

489 :
>>488 これ思い出した
ttp://www.webcreatorbox.com/webinfo/king-unko/

490 :
>>489
おしゃれですね!
しかし今回は全国各地のfu-俗店のHPで使われておりまして、
ポップアップするlightwindowの背景画像なのです。
全部合わせるとアクセス数が一日あたり1万くらいあります。

491 :
普通に画像のRefererチェックを.jsにもやるだけだろ。
とんでもない内容にするならErrorDocument。

492 :
>>490
小沢、石破、大島、石原あたりの強面政治家の顔画像から、
「風俗遊びなんてやめろ!」という吹き出しの出た画像に
差し替えてくれ

493 :
RedirectMatch すると、URLの末尾にパラメータ「?id=〜」が
付いてしまうのだけど、これは回避できないのですかね?
リダイレクトした先でリライトしてるせいでしょうか。
-------------------------------------
RewriteRule ^e/([0-9]+)$ log.php?id=$1 [L]
RedirectMatch blog/([0-9]+)$ http://example.com/e/$1

494 :
Redirectはパラメータを引き継ぐよ。
Rewriteが足してるかもしれないけどw

495 :
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 でしょうか?

496 :
確か上から順番。
一番上から / をリダイレクトさせようとするとそれに喰われておしまいのような。
…1.は間違ってるような。

497 :
>496
有難うございます。
でも、http://www.old.jp/ (index.html省略)のリンク
からのアクセスが一番多いので、1.の記述がないと。。。。
でも、確かに1.を最初に書くと2以下を書く意味がないじゃんって気もしてます。

498 :
1.のhttpの手前のhtmlという部分が単なる間違いなら
たぶん2.以下は消してもちゃんと動いてると思う。
ファイルとかディレクトリとかの位置関係はまったく同じなんでしょ?

499 :
>498有難うございます。
1.のhttpの手前のhtmlという部分は単なる間違いでした。
ファイルとかディレクトリとかの位置関係はまったく同じにするつもりです。
「旧サイトのページからそれに対応関係のある新サイトのページに対して301リダイレクト行うと、
Googleページランクが変動することを妨げる。」ていう記事を検索でよく見かけたもので。。。

500 :
そんならたぶん1.だけあれば問題なし。
リダイレクト元のpathに/で終わるような設定をしたならリダイレクト先のURLも/で終わるようにしておかないと
/が増えたりするくらいかな?気をつけることは。

501 :
特定ディレクトリのみ別サーバーで運用することはできますでしょうか?
現在、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 をご教示ください。

502 :
>>501
reverse proxyでいけると思う

503 :
>>502
ありがとうございます。
ProxyPass /a http://a.example.com
といった具合でしょうか?
Apacheモジュールなので sixcore や coreserver にインストールされてるか
まだ確認できてませんが、チャレンジしてみます。

504 :
>>501です。
>>502
coreserverにて、.htaccessに
<IfModule mod_proxy.c>
ProxyPass /test http://example.com
</IfModule>
としてみましたが、testディレクトリがそのまま表示されました。
共用レンタルサーバーでは一般的には
mod_proxyを使えないようにしてあるのでしょうか?

505 :
>>504
サーバー屋にサポートに聞きなっせ

506 :
>>501です。
>>505
ありがとうございます。
聞いたところ非対応でした。
次の手を考えます。

507 :
>>504
mod_proxyが読み込まれていてもProxyPassディレクティブは.htaccessでは使えない。
できるとしたらmod_rewriteのRewriteRuleの[]の中にPと書く。
mod_rewriteは使用したいという要望が多いのか使えることが多いが
mod_proxyは脆弱になり易いから使えることはほぼない。
基本的にどちらも使えないのがデフォルト。
ということでサーバサイドのプログラムとかでソケット接続するくらいしか。

508 :
>>507
ありがとうございます。
とてもわかりやすく説明いただいて助かりました。
ソケット接続、調べて試してみます。

509 :
質問させてください。
今まで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/
このような表記を行ってみましたが全てダメでした。
どのように表記するのが良いのでしょうか?
どうぞご教示ください。

510 :
Redirectはexample.com側専用の場所がないと使いにくいんじゃない?
CondのHTTP_HOSTはexample.org以外という感じで
%{HTTP_HOST} !example\.org(:[0-9]+)?$ [NC] かな?
最近使ってないから違ってるかもw

511 :
ある特定URLをリファラ参照して
こちらの指定のhtmlへ強制的にジャンプさせる記述を教えてください。

512 :
RewriteCond %{http_リファラ} むにゃむにゃ
RewriteRule ^(.*) こっちいけ [R,L]

513 :
てs

514 :
質問させてください。
さくらインターネットサーバーを利用しています。
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ありに変換してくれる良い方法がありましたらどうぞご教示ください。

515 :
>>514
HTTP_HOSTに/以降は入ってこない。
その代わり:80みたいなポート番号は入ってくることがあるけどw
で、その/hogeな部分はCondではなくRuleの担当になるね。

516 :
cgi-binディレクトリを省略させる下記のようなmod_rewriteを使った場合の負荷って
そんな気にする程度のものではないのでしょうか。
それともレスポンスが悪くなるので、安易に使うものではないのでしょうか。
RewriteRule index\.cgi /aaa/cgi-bin/index.cgi [S]

517 :
>>516
index.cgiは全て同じプログラムで処理させるの?
abc/index.cgi
xyz/index.cgi
0123/index.cgi
いずれも
/aaa/cgi-bin/index.cgi
に飛ばす?

518 :
>>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

519 :
そこはExtensionモジュールのrewriteよりBaseモジュールのdirをおすすめしたい。
DirectoryIndex /aaa/cgi-bin/index.cgi

520 :
>>519
DirectoryIndexはディレクトリも一緒に設定できるんですね。
勉強になりましたありがとうございます。

521 :
質問です。
@下記.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が反映されるのでしょうか?

522 :
>>521
cssを相対で参照するの止めたら?

523 :
>>521
もういっちょRuleが要る。
RewriteRule ^(\S*\.css)$ /exsample/cgi-bin/$1
再帰は無視w

524 :
>>522
提案ありがとうございます。
今回は絶対パスにすると変更したときが面倒なのでできるなら相対で設定したいと考えています。
>>523
ありがとうございます。
cssその他ファイルでパスが変わるもの全てrewriteが必要なんですね。
解決しました。

525 :
お願いします。
ググっていて、同じ悩みのここの>>104さんの質問レスを見つけたのですが
>>108の書き方をしてもうまく弾けないです。
p00000-ipbf0000niigatani.niigata.ocn.ne.jp
(0000の部分は数字で、変動する。
pの後の数字は桁数固定みたいだけど、ipbfの後のほうの数字は桁数も変わる。)
これをSetEnvIf Remote_Hostで弾くのって、
どう書けばいいでしょうか。
変動の数字の部分を*にしてみたり、[0-9]を使ってみたりして試しましたが
どうしても自分を弾けません。(自分も、新潟じゃないけどocnです。)

526 :
p[0-9]{5}-ipbf[0-9]{2,4}niigatani\.niigata\.ocn\.ne\.jp$
pの後の数字が5桁限定で
dの後の数字は2〜4桁変動の場合はこうだと思う
桁数ははじきたいリモホに合わせて書き換えて

527 :
>>526
ありがとう!

528 :
SetEnvIfを使う方法はサーバが常に逆引きをする設定になってないと
接続してから1回目のアクセスを取りこぼすとかAllowやDenyに
ダミーでもホスト名の設定をしてなければ逆引きは基本されないとかで
やってはいけないものという結論になってなかったっけ?
だから途中の数字が変わるようなものはIPアドレスで指定するしかないはず。

529 :
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]

530 :
>>529
public_html
はどこから来たの?

531 :
>>530
.htaccessを設置するところから見て、DocumentRootへの相対パスがpublic_htmlです
public_html の絶対パスは /home/example/public_html になってます。

532 :
なんかもっと条件を付けておかないと永久に再帰しちゃわね?

533 :
それが怖いのですが、条件の付け方が分からないのでここで質問させていただいています。

534 :
>>531
http://exapmle.com/
は、public_htmlの中を表示するのか?
それとも、
http://exapmle.com/public_html/
でアクセスできるの?


535 :
前者です
分かりにくくてすみません><

536 :
だったら、少なくとも
RewriteRule ^/public_html/cgi-bin/(.*)$ /public_html/$1 [L, R=302]
みたいにpublic_htmlを入れる必要は無いね

537 :
そもそもなんでその延々とループしそうなルールが必要かだね。
/cgi-binの中にあったものを/へ持ってきたのか逆なのか?
で、それを行ったからルールが必要になったのか、
それを行うためにルールが必要になるのか?
ないところにアクセスされたときの処理でルールが必要というなら
もとのルールに
RewriteCond ${REQUEST_FILENAME} !-f
を足すとか?

538 :
cgiがcgi-bin内でしか動かないので、cgi-binをドメイン直下のように見せかけたいと思っています(/にアクセスすると/cgi-binの中身を呼び出し、/hogeにアクセスすると/cgi-bin/hogeという風に)
今まではcgi-binをトップページとして扱ってきたので、従来通りそちらにアクセスしてきた方は、cgi-binの入らないアドレスにリダイレクトしたいと思ってます

539 :
それなら/cgi-binにCGIプログラムがそのまま入ってるんなら
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/(.*)$ /cgi-bin/$1 [L, R=301]
かな?
/へのアクセスを優先して、その中にないファイルは/cgi-binへ探しに行くとか。

540 :
ありがとうございます。うまくいきました

541 :
お願いします。
/.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を実行できるようにするにはどうしたら良いでしょうか。

542 :
>>541
httpd.confのSSLのほうで、
allowoverride none
になってるとか

543 :

>>542
ご回答ありがとうありがとうございました。
レンタルサーバなのですが、調べてみたら、その設定にはなっていませんでした。
普通上位ディレクトリでSSI許可になってたら下位でも引き継がれますよね。。。
ちょっと解らずに困ってます。


544 :
/a/じゃなくて/aaaaaaaaaaaa/とかにしたらどうなる?
/a/がサーバの会社の特殊なディレクトリ扱いだったりしてw

545 :
ガードプロクシ以外で
プロクシ経由のアクセスを禁止する方法はありませんか?

546 :
NATだってレイヤ3あたりのプロキシだと思うw

547 :
今まで画像をまとめて格納していたフォルダ名を
「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/ 下の画像が開かれてしまうということです。

548 :
あれできた?
.htaccess は上書きじゃなくて、
削除してから再アップってことありますか?
使用しているサーバはロリポップです。

549 :
>>548
.htaccess以外のファイルも、削除して再アップしてるのか?

550 :
>>549
いえ、まさかそんなことはないです。
でも、この .htaccess は昔っからずっとチャレンジし続けてできず、
なぜか今できてしまった。。

551 :
あるディレクトリを隠したいんだけど、指定IP以外からのアクセスには404を返す方法ってある?
404ページじゃなくてちゃんと404ステータスを返したい。
rewriteでPHPにアクセスさせてヘッダー弄るしかないかな?

552 :
質問します。
直リンクをされている方が多いので、聞きかじりでネットを調べ、
作品ページに、htaccessを書いてアップしました。
SetEnvIf REFERER "自サイトアドレス" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith
けれどもいざサイトにアップしてみると、
多数の携帯の閲覧者から、「作品ページを見ることができなくなった」
という報告を受けたのですが、これは携帯を弾く仕様になっているのでしょうか?
正直自分ではまったく原因が分からないので、お力を貸していただければ嬉しいです。
初歩的な質問で本当にすみません。

553 :
ドコモの携帯はリファラを吐かない機種が多いって聞いたことがある

554 :
>>553
552です。確かに確認してみたところ、リファラを吐かない機種のようでした。
もう一つ質問です。スレチになっていたらすみません。
つまり直リンクをはじくには、これらに目を瞑るしかないのでしょうか?

555 :
>>551
リライトにはステータスを変える機能があったはずだからPHPとかはいらない。
>>554
目を瞑ってくださいw
ブラウザからのリファラを削るポリシーを貫き通すため
そのような設定の施されてるどこぞのニュースサイトは画像が出ないという苦情が来ないように
アクセスしても別のニュースサイトを利用しなさいというメッセージのページを返されるという
児童ポルノサイトのような扱いにしてしまいましたw

556 :
画像は除く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]

557 :
DirectoryIndex index.cgiを書くと500エラーが出てしまいます。
どうすればいいでしょうか。

558 :
>>557
allowoverride none
になってるんじゃね?

559 :
>>558
ありがとうございます。
アパッチの設定は変えれそうにないのですが、
どうすればいいのでしょうか。
とりあえず、http://アドレス.jp/を入れると
http://アドレス.jp/index.cgiを読み込むようにしたいのですが。

560 :
ググったら23秒で見つかったよ
ttp://www.systemania.biz/kiso/htaccess/defaultindex.html

561 :
>>560
>>557=>>559です
DirectoryIndexが使えなくて困っていました。

562 :
>>556
Cond %{QUERY_STRING} ^$ の行が
Cond %{QUERY_STRING} !guid=[Oo][Nn] とか?

563 :
質問です。
.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"」なのか分かりません。
どちらが正解でしょうか。教えて下さい。

564 :
^〜 は、〜で始まる、だから違う
.はドットの意味で使ってるなら\でエスケープしないと
↓でいけないかな。試してないけど
SetEnvIf Referer “^http([s]?)://[a-z\.]*\.ru” ref_ng

565 :
RewriteRule ^$ /aaa/ [R]
上のように「/aaa」にに飛ばす設定をしているんですけど
特定のディレクトリ以下はこのhtaccessを有効にしてたくありません。
無効化する方法はあるのでしょうか?

566 :
RewriteEngine off

567 :
>>565
ありがとうございます。

568 :
>>566

569 :
ファイル名で3桁と4桁の数字があるのですが
3桁の場合は先頭に0をつけるにはどう記述すればいいですか?

570 :
それは頭に0付き4桁でアクセスされたら3桁ファイルにアックセ〜スさせるということ?

571 :
>>570
検索エンジンにインデックスされている
999.htmlをクリックすると0999.htmlに
1000.htmlは1000.htmlのままにしたいのです。

572 :
それならたぶん
RedirectMatch 301 (.*/)([0-9][0-9][0-9]).html $10$2.html
とかで行けるんじゃないかな?

573 :
質問です!
さくらのレンタルサーバーで301リダイレクトさせたくて
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com
RewriteRule (.*) http://example.com%{REQUEST_URI} [R=301,L]
こんな感じで書いたんですが実際アクセスしてみると
http//example.com
こんな感じになり;が抜けてしまいます
ぐぐってみても全く出てきません
なんとかできないでしょうか

574 :
あ、ぐぐって出てこないというのは類似症状のことです。
あと
Redirect 301 / http://example.com
こう書いてもダメでした。
お願いします。

575 :
http://example.com/defaultでアクセスしてきたらhttp://example.com/index.htmlにアクセスしているものとする場合
RewriteEngine on
RewriteRule ^default$ index.html
と書きました
そしてhttp://example.com/default以外のurlでアクセスしてきたらhttp://example.com/error.htmlにアクセスしているものとする場合どのように↑のルールに付け足せばよいのでしょうか?
(例えばhttp://example.com/testhttp://example.com/index.htmlhttp://example.com/sitemap.xmlなどのurlですがurlに使える文字全てを想定しています)

576 :
RewriteEngine on
RewriteRule ^default$ index.html
RewriteRule !^default$ error.html

577 :
!を使う方法もあるのですね
勉強になりました

578 :
質問させて下さい
今まで国外をアクセス拒否をしたくて↓のように書いていたのですが
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

のように各国ごとに書いていかないとダメでしょうか?

579 :
>>578
国内のアドレスって全てjpで終わるの?

580 :
htaccessのサイトに
国内以外弾く方法に書いてあったのでこう記述していますが
別にjp以外は弾きたいのでこのままで良いんです
質問の方はこれでいけるかどうか分かりますか?

581 :
>>579-580
それだと.bbtec.net(Yahoo! BB)が巻き添えくらっちゃうよね。

582 :
特に支障ない

583 :
>>578
ttp://www.cgis.biz/tools/access/ にあるやつをいただいて使うのがいいんじゃね?

584 :
>>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
のようにできる。

585 :
サイトによってOrder allow,denyの順番の説明が違うのですが正しい意味を教えてください

586 :
>>585
deny from allは不要になるんですね知りませんでした
このとおりに書いて
# but don't allow from bbtec.net
Deny from bbtec.net
のbbtec,netの部分をIPアドレスにすれば良いんですね
教えて下さりありがとうございました

587 :
>>586


588 :
>>585
それくらい自分で調べろよw

589 :
今気付いた
アンカミスごめんなさい
>>586>>584宛てでした

590 :
>>588
調べても説明が逆なサイトをどちらも見かけるのでどちらの情報が正しいのかよくわからないんです

591 :
正しいものの原本はこれだけ。
http://httpd.apache.org/docs/2.2/en/mod/mod_authz_host.html#order
翻訳されたものがこれ。
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order

592 :
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 - この二つ以外はアクセス拒否

593 :
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]

594 :
自己解決しました

595 :
質問なんですが
あるページをIPアドレスで入室者を限定する形にしていたんですが、
そのページに一名だけ入室出来ないと言われました。
order deny,allow
deny from all
allow from XXX.XXX.X.XX
(こんな記述の仕方です)
他の人も入室出来ないなら書き込みミスなど分かるんですが、
そういうわけじゃなさそうです。
そしてその一名のIPアドレスがどうやら単一ではなくて幅のあるIPアドレスのようで…
ホストを調べたところ末尾が0/24となっていたのでどうやら0~24の間をいったりきたりするIPアドレスのようなんです。
なのでホスト許可に切り替えて入室出来るようにしたんですが、それでも入れないと言います。
これって原因は何だと考えられますか?
自分で調べてなんとかしようとしていたんですがなんとも出来ず、
どなたかお力お借りできればと思います。
宜しくお願いします。

596 :
allow from XXX.XXX.X.XX/24
と書けば良いと思うよ。

597 :
>596
それやったんですがなんか無理なんですけどって言われたんですよ。
なのでホストに書き変えてそれでも駄目だったんです。
わけがわからないんです本当に…

598 :
じゃ、諦めてください

599 :
質問です。
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でテストしました。


600 :
http://example.com/6桁の英数字/を
http://example.com/1/6桁の英数字/
にリダイレクトする方法教えてください。
どうしてもhttp://example.com/1/1/1/1/と無限ループになってしまう・・・

601 :
[L]を付ける

602 :
6桁の英数字なんだから[0-9A-Za-z]{6}だよね?

603 :
>>602
apacheのmod_rewriteって{6}みたいな書き方は通ったっけ?

604 :
mod_rewrite云々じゃなくて正規表現が通らなかったら大変だろ

605 :
6桁に縛るのも回避できるけど、基本は/1/でなければのCondの追加だよね?

606 :
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] #最後に"/"を入れる


607 :
/user/test/img -> /user/img のRuleも作る。

608 :
<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>

609 :
<Filesはファイル名が一致したら発動だから下のやつを上位のディレクトリの
.htaccessに書いても有効になるよ。

610 :
>>609
ありがとうこざいます
つまり<Files>にディレクトリ名は含んではいけないんですかね?

611 :
含んではいけない。
というか、ディレクトリ単位で設定をするものが.htaccess。
wp-admin/以下のupdate.phpだけを対象にするならwp-admin/.htaccessに
<Files update.php>を書く。

612 :
>>611
なるほど、よくわかりました!
ありがとうこざいます

613 :
ttp://example.com/にアクセスしたときに、

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

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

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

と表示されるような.htaccessの設定方法ってありますか?

614 :
nai

615 :
deny from All

616 :
>>614
やっぱり無いですかね
>>615
それだと403エラーが表示されちゃうよね?

617 :
何をやろうとしてるのかわからんけど、同じ404ページでいいんじゃないの
URL表示そのままにしたいってのがちょっとうさんくささも感じる

618 :
>>617
レンサバのデフォドメイン(レンサバのサブドメ)を非表示にしたい。
そのレンサバでは、
存在しないサブドメは403とか404ではなく、
上に書いた「このページは表示できません」って表示されるから、
そのように設定できないかなと思って。

619 :
>>618
ホスティングサービスで共有SSLを使っている場合のアクセスの振り分け例を参
考にすればいいと思うよ

620 :
しかも問題は
ttp://example.com/
にアクセスがあったときじゃなくて
ttp://example.com/*
にアクセスがあったときだろJK
本人に問題の切り分けができていない

621 :
何がやりたいのかよくわからない

622 :
ttp://faq.sakuratan.com/wiki/wiki.cgi?.htaccess#i16
こういうことがしたいだけだろ

623 :
簡単にいえば>>622なんだが、
さくらの場合、
使用されていないドメイン
(たとえば、 http://a1234567890123456.sakura.ne.jp/ )
なら、エラーは返さないから、
403エラーを返すとそのドメインを使用中なのが分かる。
実用的にはそれでも問題ないけど、なんとなく気持ち悪いので、
エラーを返さずにページを表示できなくする方法はないかなと。
>>619
たとえば?
>>620
切り分けが必要なら複数の設定でもいいよ

624 :
> 設定でもいいよ
なんで上から目線なんだこいつ?
少なくともてめえには無理だ

625 :
>たとえば?
検索エンジンって知ってる?w

626 :
>>623
俺も知りたい

627 :
indexページを/に置かないだけでいいのでは無いかと

628 :
>>624
気分を害されたら申し訳ないです
「複数の設定でも構いません」の表現の方がよかったですね
>>625
ググってみたのですが、ヒントになりそうなものが分かりませんでした。
もうちょっと調べてみます。
>>627
/にindexページを置かないと、フォルダが見えてしまう仕様なので。

629 :
まだ続くんかーい

630 :
やる気なさ杉

631 :
ぐぐることもできないこんな無能がWebサイト・・・だと?

632 :
>>619
それ使っても無理じゃね?
>>629-631
イジメるしか能のない無能はスルーw

633 :
デフォルトのホスト名のA(AAAA)やCNAMEレコードあたりを消すとか
そういうレベルになっちゃうね。
.htaccessとはレイヤーが全然違うw
とかそういう答えくらい用意すればいいのに煽ってるだけの
基地外うましかは何なの?w

634 :
ディレクトリインデックスを表示させないようにするのは.htaccessでは
Options -Indexesかな。
Optionsが通らないサーバならDirectoryIndexに指定されたファイルを置くしかないか。
インデックスのエントリから消すのはDeny from allやRedirect 403などで
アクセス制限を掛けておけば消える。

635 :
>>628
それっぽいダミーページを/に置けば簡単よ
見つかりませんでしたページ
のソースパクって作れ

636 :
>>633
根本的に勘違いしていないか?
それを言うなら hostnameを変更して逆引きも変えないと意味がない

637 :
下記の.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

638 :
すみません、書き方がわかり難いので追記させてください。
やりたい事はドコモ・AU・ソフトバンクのガラパゴス携帯以外からの
アクセスをヤフーに飛ばしたいと考えています

639 :
ErrorDocument 403 やふぅ
とかで良いんだろうけど、いきなりやふぅに飛ばすのはどうかと思うw

640 :
>>639
ありがとうございます
上手くできました

641 :
>>637
IPアドレスではじきたいなら、各キャリアのサイトに書かれているIPアドレスを記述せれ
逆引きで.ezweb.ne.jpなんて返ってこないぞ

642 :
質問です。
http://www.なんとか.com/
   ↓
http://www.なんとか.com/index.html
へ無条件に飛ばす方法を教えてください。


643 :
RedirectMatch 302 ^/$ http://www.example.com/index.html

644 :
>>640
ふ〜ん。ネット知識(笑)?

645 :
>>644
日本語でOK

646 :
アクセスログを調べると、.htaccess でIPアドレスがブロックされている
はずのやつが、自動化しているようで片端から「こんなファイルはないか」と
ありもしないあらゆるファイルの問い合わせをしてきます。
さすがに.htaccessの指示により、サーバーは存在するファイルを見せることは
拒否しますが、存在しないファイルに対していちいち「それはありません」
404(Not Found)を返しているようです。 
存在する場合としない場合で返事が異なると、繰り返しやられたらやがては手の
内が暴露されてしまう恐れがあります。
いずれの場合でも常に「お前には見せてやらん」403(Forbidden)を返す
ようにはできないでしょうか?

647 :
Redirect 403 /forbiddenarea

648 :
>>647
ありがとうございます、
.htaccessにdeny from IPアドレスをうんじゃら入れていますが
その最後にご指摘の行をそのまま追加して様子を見ていますが
それでよろしいのでしょうか?
IPブロックしていないユーザーが間違って存在しないページを
見に来た場合にも403が返されるのでしょうか?

649 :
いや、>>647全員強制403。
404が返ってるという事はDenyが効いてないという事だよ。
リライトが掛かって制限を掛けてないところにアクセスしてるとか
下の階層の.htaccessにOrder, Allow, Denyを書いてしまってて
上で設定した制限を解除してしまってるとか。

650 :
>>649 404が返ってるという事はDenyが効いてないという事だよ。
眼力恐れ入りました! rootに.htaccessを置いてありますが、問題にしていた
サブドメインを構成するフォルダーにも、かつて分からないままにrootの
.htaccessをコピーしたままになっていました。 そのためrootの.htaccessだけを
膨らましていても、そのサブドメインだけが古い.htaccessに従い、隙間だらけの
ブロックをしていたのだと納得いたしました。
と言うことで>>647でご教示いただいた方法はひとまず止め、サブドメインに置いた
.htaccessも消した状態で様子を見ることにします。 ご支援ありがとうございました!

651 :
すいません、低レベルで申し訳ないのですが質問させて下さい。
ブラウザの表示では
 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/...
となってしまいます。どうすればいいでしょうか?
どなたか教えてください・・・!

652 :
301でそれをやる意味がわからん

653 :
なんか自分で読み返してみると分かりにくかったので、ちょっとだけ直させて戴きます
ブラウザの表示では
 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

654 :
>>652
すいません、サーバ管理は初めてなもので。。
301ってリダイレクトってやつですよね?
ググっていてrewriteとredirectがあるのは何となく分かったのですが、
具体的にどうすればいいのかがいまいちピンと来ません;
どういった関数(?)を使えばいいかなど教えて戴ければ嬉しいです。

655 :
ちょw

656 :
その話だと301である必要もないしむしろGoogle様を怒らせそうだしというか今すでにあれだしというかループで鯖管怒らせそうだしというか今どきループ実行できるようなサーバーて
>>654
まずテンプレの参考サイトを読んで基礎を勉強するんだ!
.htaccessは基本的な知識がないと壮大にやらかしてしまうぞ!

657 :
>>653
焦らずに急がばまわれで基本やったほうがいいよ
正規表現とか見よう見まねで書くと危険だし、
正直どこから説明して良いのか難しい

658 :
難しいじゃなくて
Cond %{REQUEST_URI} !^/~username/2012/
で再帰をせき止めて
Rule (.*) http://www.example.com/~username/2012/$1 [L]
で内部だけでリダイレクトさせる程度のことも答えられないだけだろ?
example.jpはJPRSが例示用として予約してるだけだから
example.comのほうがより良いというあたりの薀蓄くらいしろよw

659 :
携帯からのアクセスを弾きたいと思い、
以下のように記述しているのですが
解析を見るとどうも弾くことができていないようです。
おかしいところ、付け加えるべきことがあれば教えてください。
よろしくお願いします。
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

660 :
そのUAじゃ一致しないから無理だろ
それよりはIPかせめてhostnameで弾いた方がらくじゃね?
でもhostnameは引き損なうことがあるからIPの方が確実

661 :
>>660
レスありがとうございます。
order allow,deny
allow from all
deny from 123.108.236.0/24
・・・以下ip羅列
でいいんですよね。やってみます。

662 :
質問させてください。
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
 ここにリダイレクトしたい
ご回答のほど、よろしくお願いします。

663 :
すみません、(多分)自己解決しました。
RewriteRule ^([0-9]+.*)\.html /hogehoge/$1.html [R=301,L]
で行けました。
この書き方だと下層ディレクトリにも影響を及ぼすんじゃないかと思ってましたが、
違うみたいですね。

664 :
上位ディレクトリからのrewriteを無視してrewriteを走らすにはどうしたらいいでしょうか
上位ディレクトリの.htaccessからのリダイレクトのせいで下位のディレクトリが影響をうけてリダイレクトされてしまいます
因みに上位ディレクトリの.htaccessは弄れません

665 :
rewritecond

666 :
すみません教えて下さい
最近当方の掲示板に対して
223.144.***.***.just***.com
というようなアドレスから爆撃を受けているため
.htaccessで
order allow,deny
allow from all
deny from 223.144.
deny from .just***.com
※一応***と伏字にしておりますが実際には記載しています
と記載しているのですが未だに掲示板へ書き込みがあります
(つまり弾けていないようです)
ためしに自分のIP等を記載してみたところ
私はアクセスできないのでhtaccess自体は機能していると思うのですが
これが弾けないのは他にどんな理由が考えられるでしょうか
どなたかご教示頂けましたら幸いです
どうぞよろしくお願い致します

667 :
>>666
> deny from 223.144.
これだとIPアドレスで
213.144.0.0/16を拒否していることになるからこの場合無意味
理由はjust***.comをlookupかければわかるとは思います
host名で弾くのはそこで常に名前解決処理が発生するため
処理速度が落ちます
/16で弾いてしまっていいのなら
deny from 46.21.0.0/16
で良いと思いますが

668 :
>>667
なるほど!223.144.***とついていたので
てっきりIPアドレスなのかと思ったのですが全然違うのですね
すっかり騙されましたw
deny from 46.21.0.0/16
として様子を見てみます
※それにしても伏字にしたのにドメインがばれているのですねw
※これってスパム?として有名なのでしょうか・・・
ご回答頂き、本当にどうもありがとうございました

669 :
> 223.144.***.***.just***.com
これでぐぐってみればわかるだろJK
> てっきりIPアドレスなのかと思ったのですが全然違うのですね
> すっかり騙されましたw
IPアドレスの逆順を使ったhost名って結構あると思うけど

670 :
特定ファイルを読みに来るやつを撃退するには? (長文で失礼します)
すでに閉鎖したサイトにあった特定のページをしつこく読みに来るやつがいて、
アクセスログを埋めています。 現在は、「このサイトは閉鎖しました」との
インデックスページがあるだけです。 当然404 NOT FOUNDが返ります。 
そのページはビジネスがらみのなんら興味を引くような内容ではなかったの
ですが、どうも怪しいやつと管理人はにらんで、あるときからIPアドレス、
国を見て.htaccessでブロックするようにしました。
ところがそれがお気に召さなかったようで、次々と新たなIPアドレスから
探りを入れてくるようになり、ゲームをやっている感覚でIPアドレスの
ブロック枠をその都度増やして対応していました。インデックスページを
見ればもうこのサイトはないことが分かるはずなのにサーチしてきます。
このごろは相手も巧妙になってきて、世界各国のIPアドレスから同時多発的に
探りを入れてきます。どう見てもどこかの組織のフィルターにかかってしまい、
自動プラグラムでやられているような感じです。
この特定のファイルを見に来たらこちらにログを残さずに、403を返すような
ことは出来ないでしょうか?
いまのところは実害としてはアクセスログに割り込んできて邪魔だなぁ、
程度なので下手な反応をして、「どうも胡散臭いやつだ、きっと怪しい情報を
持っているに違いない」と更なる注目を浴びるよりは放っておいたほうが
よいのかなとも思います。 
自分のほかのサブドメインのサイトが攻撃されたり、サーバーに迷惑をかけてもいけません。 
同じような経験をされた方のご意見をいただけましたら幸いです。

671 :
特定ファイルを読みに来るやつを撃退するには? (長文で失礼します)
すでに閉鎖したサイトにあった特定のページをしつこく読みに来るやつがいて、
アクセスログを埋めています。 現在は、「このサイトは閉鎖しました」との
インデックスページがあるだけです。 当然404 NOT FOUNDが返ります。 
そのページはビジネスがらみのなんら興味を引くような内容ではなかったの
ですが、どうも怪しいやつと管理人はにらんで、あるときからIPアドレス、
国を見て.htaccessでブロックするようにしました。
ところがそれがお気に召さなかったようで、次々と新たなIPアドレスから
探りを入れてくるようになり、ゲームをやっている感覚でIPアドレスの
ブロック枠をその都度増やして対応していました。インデックスページを
見ればもうこのサイトはないことが分かるはずなのにサーチしてきます。
このごろは相手も巧妙になってきて、世界各国のIPアドレスから同時多発的に
探りを入れてきます。どう見てもどこかの組織のフィルターにかかってしまい、
自動プラグラムでやられているような感じです。
この特定のファイルを見に来たらこちらにログを残さずに、403を返すような
ことは出来ないでしょうか?
いまのところは実害としてはアクセスログに割り込んできて邪魔だなぁ、
程度なので下手な反応をして、「どうも胡散臭いやつだ、きっと怪しい情報を
持っているに違いない」と更なる注目を浴びるよりは放っておいたほうが
よいのかなとも思います。 
自分のほかのサブドメインのサイトが攻撃されたり、サーバーに迷惑をかけてもいけません。 
同じような経験をされた方のご意見をいただけましたら幸いです。

672 :
掲示板の管理人様、
誤ってダブリ投稿をやってしまいました、申し訳ありません。
671と本文を抹消していただけませんか。

673 :
正真正銘の阿呆かよ

674 :
Redirect そのぺーじ http://どっか適切なページ
でどっかに飛ばしてみるとか。

675 :
672: 正真正銘のあほ
確かに仰るとおりですね、実害もないのにわざわざ注目を浴びるようなことをして
自分で問題を拡大している、、、、
インターネットによる情報サーチの世界がいかに露骨ですさまじいものかを
知ったことがせめての成果、と考えて有害な攻撃を受けない限りは
沈黙を守ることにします。 サイトを運営する場合のイロハでしたかね。
お騒がせしました。

676 :
拡張子を.phpから.htmlにしたいのですが、
RewriteRule ^あああ.html+ hoge.php\?bb[A-Z][-][A-Z]
「あああ」の部分を「[A-Z][-][A-Z]」の部分と同じにしたいです
どうしたらいいでしょうか

677 :
すみません、あげ忘れました

678 :
>>670
そのページにアクセスしたらgoogleにでも飛ばすようにすれば

679 :
>>676
RewriteRule ^(.*)\.php$ /$1.html [R=301,L]

680 :
回答ありがとうございます
>>679さんのを参考にして、以下にするとできました
RewriteRule ^(.*)\.html /hoge.php\?=bb$1
2回目ですみませんが、>>679さんのを見て今度はリダイレクトさせたいと思いました
「hoge.php\?=bb$1」にアクセスすると「(.*)\.html」に飛ばしたいのですが、
いろいろ試してみてもだめでした
結局書き方がわからなかってので、よろしくお願いします

681 :
予想通りの流れ

682 :
いろいろ試したというやつを書いてみろよw

683 :
リダイレクトのさせ方なんてぐぐれば一発だ

684 :
>>680
なんでそんなに検索嫌いなん?

685 :
すみません
検索してもわからなかったんです…
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
いろいろ組み合わせたりしてたんですが、できる限り試しても何が間違ってるのかわからなかったです

686 :
RewriteCond %{HTTP_HOST} ^example.com/hoge.php\?=bb$
RewriteRule ^(.*)$ http://example.com/$1.html [R=301,L]

687 :
RewriteRule ^aaa.html+ bbb.php?=aaa
ここまではわかるのに、うまく書き換えられない
RewriteRule ^(.*).html$ /bbb.php?=$1 [L]
もうだめぽ

688 :
いろいろ()

689 :
正規表現わかってない?

690 :
自分で調べる気も勉強する気もないんだからもう放っておいてやれよ

691 :
レスが遅くなってしまってすみません
正規表現を勉強します
厳しいコメントも含め、ありがとうございました

692 :
いつもの答えだけさらっと出す人来なかったねw

693 :
いや、来てた、というか見てたけど…じゃね?w

694 :
特定のフォルダだけKeepAliveをOffにしたいですがどうやれば良いですか?

695 :
ファーストサーバー ttp://www.fsv.jp/
にて、拡張子がhtmlのファイルをPHPとして動かしたいと思い、
AddType application/x-httpd-php .php .html
と書いているのですが、うまくいきません。
サーバーに問い合せたところ、使用できるが、書き方はネットで調べてくれとのことでした。
おわかりになる方がいらっしゃいましたら、教えて頂けますでしょうか?

696 :
apacheでmod_expiresを有効にした後、.htaccessにて
ExpiresActive On
ExpiresDefault “access plus 7 days"
と記述したのですが500エラーとなってしまいます。
htaccess自体は使用できるのでexpiresをhtaccessで使用するには他にもなにか必要なのでしょうか?

697 :
>>696
accessの手前が"じゃないとかそういうのじゃなくて?

698 :
ああ、AllowOverrideにIndexesが必要。

699 :
>>697
ご指摘通りでした……
まさか文法ミスという初歩的なミスだったとは……いったいいつ全角になっていたんだ
お早い指摘ありがとうございます。

700 :
>>695
デフォルトではAddTypeにapplication/x-httpd-phpで実行、
application/x-httpd-php-sourceでソースのハイライト表示、
AddHandlerにphp5-scriptで実行の接尾辞を設定できるけど、
PHPをビルドするときに-DPHP_MAGIC_TYPE=application/x-example-httpd-php
のような独自オプションでパッチされていたりすると
.htaccessからの設定ではその値を探り当てなければ
どうしようもない。

701 :
動的ページを静的ページに見せかけたいのですが
www.example.com/1.htmlへアクセスしたら
パソコンからのアクセスの場合
ww.example.com/pc/test.php?id=1の内容を
スマホからのアクセスの場合
ww.example.com/sp/test.php?id=1の内容を表示するにはどうすればいいですか?

702 :
ちょっとくらいググるか自分で考えろや

703 :
>>702
ぐぐってわからないからここで質問しているんですが・・・

704 :
答えだけ書いてく人ラッシュだったみたいなのにw

705 :
>>703
こんなのぐぐって分からないくらいならセンスないと思うよw

706 :
>>701
各種フレームワークのhtaccessを見れば、ヒント山盛りだぜ

707 :
>>705
何のためのスレだよ。
偉そうに口だけならなんとでも言えるからか。
分かっているなら答えを書いてやれよ。

708 :
>>707
無駄な書き込みしないで早く答え書けばいいだろwww
あ、本人様でしたかwwwwww

709 :
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になりました。
おかしい部分が多々あるとは思いますが、宜しければ指摘等お願い致します。

710 :
ところで激安中古ソフト屋さんでググると使えるソフトがかなり安い
おススメ!!使えた

711 :
>>709
とりあえずRuleは?以降にマッチさせられないと思った。

712 :
特定の拡張子へのアクセス制限についての質問です。
txtファイルにアクセス制限をかけています。
もちろん直接URLの入力ではアクセスできません。
が、そのまま他のページへとび、ブラウザの「戻る」ボタンで戻ると
txtファイルが表示されてしまいます。
これを防ぐ方法はありますか?
よろしくお願いします。

713 :
>>712
それはアクセスできることを確認した時のブラウザのキャッシュを引っ張ってきてる可能性が高い。

714 :
>>712
即レスありがとうございます。
初歩的なミスでした…。
キャッシュは消したつもりでしたが、レスのとおり残っていました。
完全にキャッシュをなくして確認したところ、
きちんとアクセスを拒否してくれました。
ありがとうございました。

715 :
www有り無しを「有り」で統一したいのですが、
ドメイン名を記載せず、汎用的?に統一する記述の仕方はありませんでしょうか。

716 :
DNSになんて書いてるん?

717 :
>>715
正規表現なら^から\.までがwwwとマッチするか否かをチェックすればいいし、
とにかく先頭からドメイン手前の.までの.の数を正しく数えるだけだと思う。

718 :
www.ne.jpをne.jpにするわけにはいかないとかの問題があるけどそこまでやりたいのかなあ

719 :
>>718
なるほど、そういう問題点があったのですね。

720 :
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]

721 :
それぞれのCondのパターンを書き換えるのが面倒だという話なら
そのCondをSetEnvIfに置き換えてCondはそのSetEnvIfの
環境変数のフラグが立ってるかどうかに変えるとか?

722 :
創価R
創価R
創価R
創価R
創価R 
創価R
創価R
創価R
創価R
創価R
創価R 
創価R
創価R
創価R
創価R
創価R
創価R
創価R
創価R

723 :
>>721
SetEnvIfですか。ちょっと厄介そうですが、その厄介を回避したいという気持ちから
今、改善策が閃いたような気がします。ご回答、ありがとうございます。助かりました

724 :
お願いします

order allow,deny
allow from all
deny from xxx.xxx.xxx.xxx

との記述で、アクセス拒否をしています。
自分のIPを試しに拒否してみたのですが、
パブリックに置くと、パブリックに置いてあるhtmlは拒否出来るのですが
パブリックに置いてある任意のCGIフォルダのCGIは制限できず
動いてしまいます。
CGIにアクセスした時表示される画像ファイルだけは、表示されなくなります。
CGIのフォルダにhtaccessを入れても同じ状態です。
cgiそのものをhtaccessで表記したIPを拒否したいのですが
何が原因なのかわかりません。
お願いします。

725 :
>>724
そのCGIのフォルダの中にも画像ファイルが置けるというタイプ?
正常に動作するCGI(500にならない)と「R」とだけ書いた.htaccess(要は文法間違いw)を
CGIのフォルダにおいて、そのCGIにアクセスした時に500にならなければ
そのCGIのフォルダでは.htaccessは使えない。
何か余計な制限の掛かった特殊なフォルダ名にしてしまってるとかあるかも?

726 :
ブラウザのキャッシュじゃね?

727 :
>>725
ありがとうございます。
Rだけの記述のhtaccessを入れたら
500 サーバーエラーになりました。
cgiフォルダ名は任意で作れるサーバーです。
>>726
再読み込みしても、しっかりcgiが動きます
ブラウザ変えても然り。
パブリックのトップページ等はhtaccessで制御出来ているのですが。
テストで入れた自分のIPも、プロバイダ丸ごとでも試したりですが
パブリック直下のCGIはどうしても動いてしまいます。
CGIで指定しているCSSは読み込まれてない状態にはなります。
CGIそのものはhtaccessで制御出来無いサーバーなのでしょうか・・・。

728 :
>>726
CGIはHTTPヘッダ周りまでしっかり作り込まれたものじゃないとほぼキャッシュされないよ。
>>727
CGIのフォルダの中の.htaccessでその結果なら.htaccess自体は働いてるとして。
フォルダの特定階層以下から設定の上書き可能範囲を変えるという回りくどいこともできるけど、
とりあえず
<Files "cgiのファイル名">
</Files>
で囲んだ中でアクセス制限の設定をしてみるとか?

729 :
>>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エラーが出てしまうので
困りました・・・。

730 :
500エラーはあからさまにRと書いた時みたいに文法上の間違いがある可能性が高いから、
空白とか改行とか単語のスペルミスとかがあるとか。

731 :
該当するIPで制限をかけているんだけど、何故か弾けていないようなので質問します
order allow,deny
allow from all
deny from IPアドレス
と記載しているのですが、弾けていないようです
試しに自分のIPアドレスを記載してみたところ、
403が返ってくるのでhtaccess自体は機能していると思うのですが
何故弾くことができないのか、理由が全くわかりません
どなたか宜しくお願いします

732 :
>>731
はじきたいIPが記載されてないだけでは?

733 :
>>732
731です。
何故だかわかりませんが色々弄ってみた結果、解決いたしました。
IPはしっかり記載されていましたし、何が原因だったのかちょっとわかりませんが、
もしかしたらただアップロードできていなかっただけかもしれません。
ありがとうございました。

734 :
色々弄ってると出来ちゃう事てよくあるよね
この板参考になるな
ところで激安PCソフトダウンロードマートでググると使えるソフトがかなり安い
おススメ!

735 :
aguseからの閲覧を禁止したいのですが
どうすればいいでしょうか

736 :
>>735
自意識過剰君、誰もお前のところなんて見ないって

737 :
>>736
aguseばかりから何十回も来ました。それで気づきました
たぶん自己解決しました

738 :
そうまでしてブラクラさせたいの?

739 :
馬鹿なんでしょ

740 :
ホームページNinjaの普通のサイトで、作ったばかりです
ブラクラ仕掛ける技術があればこんな事聞きません

741 :
確かにブラクラなんて馬鹿じゃなきゃ思いつかないな

742 :
>>740
aguseを蹴りたい理由は?
それなら百度蜘蛛だのGoogle botの方がよほど気持ち悪い

743 :2012/10/22
>>742
ただでさえ閲覧者が少ないのに何人見てくれたのか分からなくてつまらないからです
それとそういう方法があるかどうかが気になって質問しました
Google botも時々来ます
百度蜘蛛はまだ一度も来ていません
TOP カテ一覧 スレ一覧 2ch元 削除依頼
【アクセス解析】AccessAnalyzer.com Part7【XREA】 (702)
恐くて見れない画像解説スレinWEB制作板 (470)
SEOのパワーテクノロジー (703)
※右クリックブラクラチェッカー※ (865)
Web制作に役立つフリーソフト part 3 (673)
VBscriptについて語りましょう (290)
--log9.info------------------
小島孝治 (388)
東レアローズ(女子)75 (850)
☆☆☆NECブルーロケッツ part13☆☆☆ (794)
【春高】高校女子バレー総合スレ part 7【総体】 (915)
【東レ】 大山未希 4 【長身セッター】 (851)
【鴎】岡山シーガルズ 24羽【ウィンディー】 (302)
@@@ デンソー・エアリービーズ蜂19匹 @@@ (423)
【デンソー】 熊谷桜子 【かわいい】 (646)
【AMG】 上尾メディックス 5 (507)
【オールラウンダー】狩野舞子【SでもMでも】 (553)
【上尾】滝沢ななえ 9【リベロ】 (385)
【!ninja】忍法帖テストスレLv=2 【バレーボール板】 (376)
■ 堺ブレイザーズ/17th ■ (784)
JTサンダース (403)
【USA】アメリカ男子【北京金】 (708)
【封殺】木村沙織は全日本の癌!【無限大】 (864)
--log55.com------------------
プラスティック・メモリーズ 61
【本スレ】ユーリ!!! on ICE 第123滑走【ワッチョイ有り】
ガンダム Gのレコンギスタ 212機目
探偵オペラ ミルキィホームズ 総合 317トイズ
トミカハイパーレスキュードライブヘッド機動救急警察part8
【アニメ】ドリフェス!R★8
すのはら荘の管理人さん 5
百錬の覇王と聖約の戦乙女 17錬目