.htaccess質問コーナー Part7

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

前スレ
.htaccess質問コーナー Part6
http://pc11.2ch.net/test/read.cgi/hp/1176912246/
2Name_Not_Found:2008/03/20(木) 23:59:02 ID:???
【Apacheドキュメント】
・ Apache チュートリアル: .htaccess ファイル
http://httpd.apache.org/docs/2.2/howto/htaccess.html
・ Apache 2.2ドキュメント
http://httpd.apache.org/docs/2.2/
・ Apache 2.0ドキュメント
http://httpd.apache.org/docs/2.0/
・ Apache 1.3ドキュメント
http://httpd.apache.org/docs/1.3/
・ Apache Trunkドキュメント
http://httpd.apache.org/docs/trunk/
・ Apache チュートリアル:認証、承認、アクセス制御
http://httpd.apache.org/docs/2.2/howto/auth.html
・ Apache モジュール mod_access(アクセス制御)
http://httpd.apache.org/docs/2.2/mod/mod_access.html
・ Apache モジュール mod_auth (認証)
http://httpd.apache.org/docs/2.2/mod/mod_auth.html
・ Apache URL Rewriting Guide (Rewrite)
http://japache.infoscience.co.jp/rewriteguide/
・ Apache module mod_rewrite  (Rewrite)
http://japache.infoscience.co.jp/japanese_1_3_6/manual/mod/mod_rewrite.html
3Name_Not_Found:2008/03/20(木) 23:59:33 ID:???
【参考サイト】
・ ミケネコの htaccess リファレンス
http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/
・ メモランダム MultiX.jp
http://multix.jp/html/memo/
・ futomi's CGI Cafe - .htaccessの小技編
http://www.futomi.com/lecture/htaccess/
・ .htaccess実践活用術
http://www.shtml.jp/htaccess/

【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
4Name_Not_Found:2008/03/21(金) 00:01:26 ID:???
当分スレなしでもいいかと思ったんだけどなんとなく立ててみた。
5Name_Not_Found:2008/03/21(金) 03:31:17 ID:???
>>4
これはありがたいです。

初心者スレでも伺ったのですが、固体識別番号での
アクセス制限について聞きたい事があります‥
特定の携帯電話(主にDoCoMo)だけを入室可にしたいのです。
Basic認証だと入室の際、手間が掛かるので固体識別番号で
振り分けが出来ればなと思ってます。
しかし、そのままicc又はserを記述しても出来ませんでした。
やはり公式サイトでしか出来ないのでしょうか?
6Name_Not_Found:2008/03/21(金) 09:18:09 ID:???
>>5
RewriteCond %{HTTP_USER_AGENT} ser[0-9a-zA-Z][0-9a-zA-Z]
みたいなのでできね?
7Name_Not_Found:2008/03/21(金) 16:21:32 ID:???
>>6
レスありがとうございます
帰り次第速攻で試してみます
8Name_Not_Found:2008/03/21(金) 20:31:58 ID:???
携帯はいつでも識別番号吐きながら GET や POST してるわけじゃないですよ。
9Name_Not_Found:2008/03/21(金) 21:04:48 ID:???
>>8
知ってる。
だから>>6は、utn属性でpost/getしてきた時だけに有効。
105:2008/03/22(土) 00:51:07 ID:???
度々すみません
私の固体識別番号が
serxxxxxxxxxxxxxxx(iccの場合なら、iccyyyyyyyyyyyyyyyyyyyy)だった場合、
私のみを入室可能にするにはどのように記述すればいいのですか?

.htaccessは無知でして、質問ばかりすいません。
お暇であれば回答お願いします。
11Name_Not_Found:2008/03/22(土) 09:07:57 ID:???
>>10
マジレスしてやろう。

ドコモの勝手サイトの場合は、端末IDを取得する場合は、必ず警告が出る。
mod_rewriteのURL書き換えで対応する場合は、サイトの入り口だけでなく
全ページで端末IDを確認するとなると、ページ遷移のたびに警告が出るって
ことだけど、それでも良いのかえ?

現実的には、mixiがやってるように、サイト入り口で端末IDで認証して、そ
れ以降は、セッションで持ち回るしかないんじゃね?
12Name_Not_Found:2008/03/22(土) 18:24:26 ID:???
A.html  →  B.html

B のページに行くとき、A.html経由じゃなきゃ行けないようにしたいです。
つまり、リファラが A のアドレス以外は全てアクセス拒否にしたいのですが、
このとき B.html があるディレクトリ内の .htaccessには
何て書けば良いのでしょうか

お願いします。
13Name_Not_Found:2008/03/22(土) 20:27:08 ID:???
age
14Name_Not_Found:2008/03/22(土) 21:13:40 ID:a3FnqSDt
>>11
レスありがとうございます。
毎ページで警告となると考えものになりますね‥
しかし一度試したい気にもなります。
もしよろしければ、教えて頂きたいです。
そこから工夫してみます。

ちなみに
簡単ログインプログラム(サンプル?)は持ってはいるんですが、
sendmailという未知なものが必要で避けました‥
1512:2008/03/22(土) 21:37:17 ID:???
自己解決しました
16Name_Not_Found:2008/03/23(日) 00:13:27 ID:???
>>1おつです 早速使わせていただきますね

サイトを表示した際(特定の形式のファイルを)キャッシュしないようにしたいのですが、
<Files ~ "\.(gif|xml)$">
Header set Pragma no-cache
Header set Cache-Control no-cache
</Files>
これですとOpera使用の場合にキャッシュしてしまいます
グーグル先生に聞いてみたのですが同様の質問は幾つか見つかるのですが回答が見つかりませんでした
Operaのキャッシュの挙動が特殊で、構築側での制御が無理なのでしょうか?
17Name_Not_Found:2008/03/23(日) 00:55:22 ID:???
>>14
User-Agentに含まれるものはSetEnvIf User-Agent
X-UP-SUBNOに含まれるものはSetEnvIf X-UP-SUBNOを使って
後はいつも通りのOrder allow,denyとAllow from env=よぉ?

>>16
mod_headerはmod_rewrite以上にインストールされている確率が低いわぁ?
キャッシュ期間の設定はmod_headerより先にやっぱりインストールされている確率が低い
mod_expiresを使うべきよぉ?
ExpiresActive On
ExpiresByType image/gif A0
ExpiresByType text/xml A0
mod_headerはHeader set Cache-Controlの方をno-cacheではなく
max-age=0にした方がよさそうよぉ?
あと他にもHeader set Expires "Sat, 22 Mar 2008 15:55:00 GMT"も
試してみる必要がありそうよぉ。
18Name_Not_Found:2008/03/23(日) 01:21:15 ID:???
ttp://jp.opera.com/support/search/supsearch.dml?index=82
> You can use META tags to prevent Opera from caching pages, for example:
> <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
> <META HTTP-EQUIV="Expires" CONTENT="-1">
> Opera will follow those meta tags, but using the HTTP headers is the preferred way to do this.

Expires: -1 ねぇ。
19Name_Not_Found:2008/03/23(日) 11:47:15 ID:???
>>12
ノートン大先生使っている場合、リファラが出ないことが多くない?
20Name_Not_Found:2008/03/24(月) 16:22:44 ID:???
特定のパラメータをもったURIをリダイレクトしようとしているのですが
リダイレクト先にパラメータを引き継いでしまいます。
パラメータを引き継がない方法はありますか?

【現在の設定】
RewriteEngine On

RewriteCond %{REQUEST_URI} ^/home/hoge\.cgi$
RewriteCond %{QUERY_STRING} ^id=3$
RewriteRule ^.*$ http://hogehoge/hoge/index.html [R]
21Name_Not_Found:2008/03/25(火) 03:28:28 ID:???
RewriteRule ^.*$ http://hogehoge/hoge/index.html? [R]
と?で終わらせると消えるってコラムに書いてあるわぁ?
22Name_Not_Found:2008/03/25(火) 07:26:13 ID:???
クエリーは、[QSA]を指定しなければ、消えるんじゃないのかね?
23Name_Not_Found:2008/03/25(火) 13:17:47 ID:???
リダイレクト先にも、消えずに、くっついて、来ます、よ。
つーか、試せばわかる話で。

RewriteEngine on
RewriteCond %{QUERY_STRING} ^q=%E7%9B%86%E3%81%AE%E7%AA%AA$
RewriteRule .* ttp://www.google.co.jp/search [R,NE]
24Name_Not_Found:2008/03/25(火) 16:28:25 ID:???
乳酸菌の摂り過ぎで脳ミソが腐ってしまってやがるですぅとか書こうと思ったら
ドキュメントにマジで最後を?で終わらせると消せるって書いてありやがったですっ!
ちょっと前までSetEnvで茶を濁してばかりだったのにいつの間にこんな細かいところまで
読んでやがったですかぁ!

>>22
QSAはクエリー付きのURLに置換した後さらに元のクエリーをくっつけるっぽいですぅ。
25Name_Not_Found:2008/03/25(火) 16:40:01 ID:QZVJ63A1
http://pc11.2ch.net/test/read.cgi/hp/1199610455/832
832 Name_Not_Found New! 2008/03/25(火) 15:43:15 ID:QZVJ63A1
TOPページ以外のページからサイトに来た場合に
強制的にTOPページに移動するようにするにはどうすればいいのでしょうか


34 Name_Not_Found sage New! 2008/03/25(火) 16:30:53 ID:???
>>832
ビルダーではちょっと厳しいので、このあたりへ行った方が早いと思います。

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


ということなのでよろしくお願いします
2616:2008/03/25(火) 21:00:10 ID:???
>>17,18
レスサンクスです 調べたところサーバにmod_headerとmod_rewriteは入っていました(mod_expiresはなし)
期間設定でなくキャッシュそのものを作らないようにしたいのですが、その場合はno-cacheのままでよさげでしょうか?
そして Header set Expires -1 も書き加えてみたのですが、相変わらずキャッシュしてしまいます…
そもそもOperaの設定自体でキャッシュ無効にしても、終了時に消えるだけでキャッシュ自体はしているようなので
キャッシュを作らないように出来ないのがOperaの現仕様なんでしょうかねえ…
2718:2008/03/25(火) 23:49:31 ID:???
>>26
Expires: -1 ってそんな指定教えるなよ、と思って書いただけなので -1 は忘れてください。
>>17のような HTTP-Date 形式で吐くことになってます。

mod_headers が使えるんだったら Cache-Control に no-store もつけて
Header set Cache-Control "max-age=0, no-store"
でどうでしょ。

でも>>26後半を読むと、キャッシュしてようが If-Modified-Since なしで GET をかける
動作になれば Opera にとっては「キャッシュしてないよ」なのかもしれない。
2818:2008/03/26(水) 00:17:42 ID:???
連投スマソ。

手元の apache で mod_headers 効かせて Firefox/2.0.0.12 で試してみたら
・Cache-Control: no-cache → リロードすると 304 Not Modified …ってキャッシュしてる
・Cache-Control: max-age=0 → 304 Not Modified
・Cache-Control: max-age=0, no-store → 200 OK
こんな感じに。
29Name_Not_Found:2008/03/26(水) 12:21:52 ID:???
誘導されてきますた

ロボ避けとBASIC認証を使いたいんだが、書き方は間違ってないと思うのに発動しなくて困ってる
ロボ避け用の.htaccessファイル、パス用の.htpasswdファイル、.htpassedの位置を指定するbasic認証用ファイルが必要なんだよな?
自分のPC上だと.htaccess.txtで保存されるから、アップロードしたあと.htaccessに名前変えればいいんだよな?

いまいちよく分かってないのがフルパスだからそこに原因があるのかもしれない…
ホームディレクトリまでのフルパスが /home/example1/public_html
だったら、basic認証のファイルには

AuthUserFile /home/example1/public_html/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user

と書けばいいってことか?
index以外の全ページに制限かけたい時は

AuthUserFile /home/example1/public_html/inde.html/.htpasswd

になる?
初歩的な質問ですまないが助言くれると助かります
30Name_Not_Found:2008/03/26(水) 14:10:52 ID:???
国外からの接続を切ろうとしています。
攻撃を受けたことはないので、一応の希望ということで考えています。

SetEnvIf Request_URI .* ng
SetEnvIf Accept-Language ja !ng
Order allow,deny
Allow from .jp
Allow from .net
Allow from .com
Deny from env=ng
ErrorDocument 403 /error/403.html

Accept-Language はおまじないのようなものだと思うのですが、
実際、プロキシ経由の接続が通ったようです。
これだけでは不足でしょうか。

ttp://www.cgis.biz/tools/access.php
ここからダウンロードしたhtaccessにはIPが羅列されていますが、
これをそのまま使ってもよいのでしょうか。
ずいぶん長い列ですが、これでなければならないのかと気にしています。
31Name_Not_Found:2008/03/26(水) 14:48:18 ID:???
>>30
apacheのhttp.confでHostnameLookupsがonになってなかったら、
Allow from .jpなんてのは使えないと思うけど、それは大丈夫?

それと、国外からのアクセスを全て拒否なら、
order deny,allow
deny from all
で、全てを拒否して、それから、
allow from 国内のISP
として、国内だけを許可するほうが良いと思うが。
32Name_Not_Found:2008/03/26(水) 16:35:06 ID:???
>>29
自分用語を使わずに書いてください。「index以外全ページ」が何を指すのかとか、わかりにくい。

> ロボ避け用の.htaccessファイル、パス用の.htpasswdファイル、.htpassedの位置を指定するbasic認証用ファイルが必要なんだよな?
ロボ対策+認証用の .htaccess と パスワードを書いた .htpasswdがそれぞれ1つ。

/home/example1/.htpasswd ← public_html 内には(なるべく)置かない。

/home/example1/.htaccess の内容
--
ロボ避けだかなんだかの記述がずらずら

AuthUserFile /home/example1/.htpasswd ←置いた場所
AuthName "Restricted Area"
AuthType Basic
require valid-user
--

> index以外の全ページに制限かけたい時は
<FilesMatch "^index\.(txt|pl|rb|exe|cgi|php|s?html?)$">
Order Allow,Deny
Allow from all
</FilesMatch>
みたいなのを追記して認証の制限から除外しておく。この記述だとロボットも歓迎するけど。
3332:2008/03/26(水) 16:36:30 ID:???
ていせい。
× /home/example1/.htaccess の内容
○ /home/example1/public_html/.htaccess の内容
34Name_Not_Found:2008/03/26(水) 18:04:18 ID:???
>>31
HostnameLookups off でも Allow|Deny にホスト記述があれば引こうとする。
ただ REMOTE_HOST の値を使う記述での keep-alive 時の挙動がアレ。
「一旦全拒否」は Order Allow,Deny だけで足りるよ。
マニュアルの Order ディレクティブのところ参照。

>>30
個人的には Accept-Language 見てる時点で
Order Deny,Allow
Deny from env=ng
だけでいいかなと。
その記述だと逆引き未設定なだけの国内IPは allow してもらえない。

国外をどうしても蹴りたくて、国内IPはどうしても蹴りたくないのなら
その「ずいぶん長い」のを使うのが無難かも。
3529:2008/03/27(木) 01:48:22 ID:???
>>32
初心者丸出しでスマソorz
レスありがとう、やってみます。
3630:2008/03/27(木) 02:50:45 ID:???
どうもありがとうございます。
.net と .com のプロバイダを調べるのが面倒で、
うろ覚えですが、Accept-Languageを入れておけば
とりあえず問題ないかと考えていたような気がします。
Accept-Languageだけで規制するならば、
確かにホストやIPを見る必要はなさそうですね。
容易に偽装できるのであまり役に立たないかもしれませんが…。

プロキシを使って接続するのは自分のホストを知られたくないからだろうかと思うと
無理に規制するのもどうかとは思うのですが、
なんとなく気持ちが悪いので>30のリストを使うことも考えてみます。
37Name_Not_Found:2008/03/27(木) 06:21:12 ID:???
JPNICの国内アドレス全部とBBQで海外と国内のプロクシ含めた国内以外全部弾けるよ うちはそうしてる
38Name_Not_Found:2008/03/27(木) 15:40:47 ID:???
特定のIPからの接続を許可し、かつ リクエストのHostが特定の
ものの場合だけアクセスを許可したいのですが、そのような設定は
可能ですか?

SetEnvIf Remote_Addr "127\.0\.0\.1" ok_ip
SetEnvIf Remote_Addr "192\.168\.0\." ok_ip
SetEnvIf Host "ex\.hoge\.com" ok_host

までは分かるのですが、Order以下をどのように書けばよいのか
分かりません。
39Name_Not_Found:2008/03/27(木) 16:18:09 ID:???
>>38
なぜにそんな面倒くさいことを・・・

order deny,allow
deny from all
allow from 127.0.0.1
allow from 192.168.0.0/24

ではダメなのか?
40Name_Not_Found:2008/03/27(木) 16:20:09 ID:???
どうせあいつの事だから
SetEnvIf Host . ng_host
SetEnvIf Host ex\.hoge\.com !ng_host
Order allow,deny
Allow from 127 192.168.0
Deny from env=ng_host
なんて答えを用意しやがりそうですぅw
41Name_Not_Found:2008/03/27(木) 16:52:16 ID:???
>>38
>Hostが特定のものの場合だけ
Virtual Hostにして、HOSTが特定のものじゃない時には別サイトを表示
すればいいのじゃまいか?
42Name_Not_Found:2008/03/27(木) 17:42:55 ID:???
質問です。

現在、独自ドメインでサイトを運営しています。
自分のサイトにアクセスする際に、wwwなしのアクセスをwww有りのほうへ
転送させたいと思ってます。

そこで、以下のように.htaccessファイルに記述しました。
 RewriteEngine on
 RewriteCond %{HTTP_HOST} ^(mydomain¥.com)(:80)? [NC]
 RewriteRule ^(.*) http://www.mydomain.com/$1 [R=301,L]

これで、http://mydomain.com/ へアクセスが有った場合に
http://www.mydomain.com/ に転送させようと思ったんですが、
相変わらずhttp://mydomain.com/ にアクセス出来てしまいます。

上記の記述の何が悪いのか、分かる方がいたら教えてください。
4338:2008/03/27(木) 17:46:41 ID:???
みなさん回答どうもです。

IPでのアクセスや、こちらが用意したHost名以外からの
アクセスを禁止したかったのですが、>>40さんの方法で
無事できました。
先に全てをNGに設定しておいて、許可する場合だけ
NGの環境変数を無くすというのは目から鱗でした。
ありがとうございました。
4426:2008/03/27(木) 21:23:09 ID:???
>>27
教えて頂いたものを試したら無事出来ました!どうもありがとうございました
45Name_Not_Found:2008/03/28(金) 01:16:36 ID:???
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
MySQL 総合 Part13 [データベース]
qsv系のスパムメール被害 qsv03 [架空請求・spam]
46Name_Not_Found:2008/03/28(金) 22:27:19 ID:???
>>3の後半を書いたのは無意味だったような気がしています。

>>42
前にも似たような書き方を見たから
 RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC]
どこのサイトでこういう書き方を教えてるのかなと気になる程度で
記述の問題ではなさそう。

・www ありのほうのドキュメントルートにそれを置いていないか
・ドメイン屋のおまけ機能のフレーム転送たら言うのが www なしのほうで効いてないか
・その他いろいろ
・日頃の行い
この辺を確認してください。
4742:2008/03/29(土) 14:56:20 ID:???
>>46
レスありがとうございます。

.htaccessの記述に関しては、以下のサイトで作成しました。
ttp://www.htaccesseditor.com/

>・www ありのほうのドキュメントルートにそれを置いていないか
レンタルサーバー業者からは、ドキュメントを置くフォルダを指定されていて、
wwwありとか無しとかの区別がよく分かりません。
もしかしてこの辺が問題なのかもしれないです。

とりあえず、いろいろやってみます。
48Name_Not_Found:2008/03/31(月) 19:12:21 ID:???
質問させて下さい。
・refererが外部サーバだった場合、トップページにリダイレクト
というのはどう書けばいいのでしょうか?
テンプレに載っているリンク先を読みましたが、
・refererによるアクセス制限で、外部サーバからの呼び出しを禁止
・あるディレクトリ(または古いサーバなど)にアクセスしたら今のサーバのトップにリダイレクト
というのは分かったのですが、両者の機能を足したやり方が分かりません。
どうか宜しくお願いいたします。
49Name_Not_Found:2008/03/31(月) 20:58:55 ID:???
特定のREFERERがトップページではない場合に
トップページにする方法を教えてください
50Name_Not_Found:2008/03/31(月) 22:20:40 ID:???
>>49
自サーバーがwww.example.comだとして、これでどうだ?
試してないから自信はないがw

RewriteCond %{HTTP_REFERER} !www¥.example¥.com
RewriteRule ^.*$ http://www.example.com/ [R,L]
51Name_Not_Found:2008/03/31(月) 23:18:46 ID:???
>>50
レスありがとうございます。
ちょっと今借りてるサーバーが落ちてて試せないので;;

自分のサイト
http://www.example.com/
他サイト1,2
example.jp 、example.net
他サイトが張っているリンク
http://www.example.com/hoge/

他サイトからのアクセスをhttp://www.example.com/にしたいのです

RewriteEngine on
SetEnvIf REFERER "example.jp" Ref
SetEnvIf REFERER "example.net" Ref
RewriteCond %{Ref} !www\.example\.com
RewriteRule ^.*$ http://www.example.com/ [R,L]

こんな感じでしょうか?
52Name_Not_Found:2008/03/31(月) 23:34:01 ID:???
>>51
ワラタ
53Name_Not_Found:2008/03/31(月) 23:35:08 ID:???
>>51
何がしたいのかわからんw
54Name_Not_Found:2008/04/01(火) 00:44:53 ID:???
何だよ。教えてくださいよ。

微妙だから
自分のサイト
http://www.example.com/
他サイト1,2
example.jp 、example.net
他サイトが張っているリンク
http://www.example.com/hoge/
他サイトからのアクセスをhttp://www.example.com/にしたいのです
って書いてるのに。
5551:2008/04/01(火) 02:54:46 ID:???
そうか!RewriteCondにRefを放り込んだらダメですよね。。w

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "example\.jp"
RewriteCond %{HTTP_USER_AGENT} "example\.net"
RewriteRule ^.*$ http://www.example.com/ [R,L]

こうかな。
まだ鯖落ち中orz
56Name_Not_Found:2008/04/01(火) 06:52:33 ID:DjL4NC5I
初心者スレから誘導されたので、こちらで質問させて頂きます。

トップページ以外へのアクセスをすべてトップページへ転送させたいのですが、
Refererが自分のサーバ以外の場合にしたいのです。
.htaccessを自分でも出来る限り調べましたが、Refererによる制限とリダイレクトを組み合わせる方法が分かりません。
組み合わせは出来ないのでしょうか。
どうかご教授宜しくお願いします。
57Name_Not_Found:2008/04/01(火) 09:03:52 ID:???
>>54
> 他サイト1,2
ってなんだよ。
参照元のことか?
58Name_Not_Found:2008/04/01(火) 09:55:23 ID:???
>>57
そうです。
特定の参照元からのトップ以下のアクセスは
すべてトップに飛ばしたいです。

59Name_Not_Found:2008/04/01(火) 14:18:04 ID:???
>>56さんと重なるかもしれないんですが
60Name_Not_Found:2008/04/01(火) 14:22:20 ID:???
>>56さんと重なっているかもしれません。
http://zen.example.com/をhttp://go.example.comに転送
http://zen.example.com/abcもhttp://go.example.comに転送
http://zen.example.com/abc/hoge.htmlもhttp://go.example.comに転送したいのですが
どうすれば良いのでしょうか?
要するに/zen/以下のアクセスを全てhttp://go.example.comに転送させたいのです
Redirect permanentを試してみたのですが、それだと/zen/の部分が/go/に代わるだけなので
htmlをphpに変えた場合などには有効なのですが、私がやりたいことには使えません。
ご存知の方がいれば教えていただきたいです。
61Name_Not_Found:2008/04/01(火) 14:37:04 ID:???
>>58
じゃ不特定の参照元から、トップ以下のページへアクセスがあった場合は、
トップに飛ばさずにそのまま見せるということでいいのか?
62Name_Not_Found:2008/04/01(火) 14:52:40 ID:???
HTTP_REFERER && Redirect な注文の中の人は何人いるんだろう。

>>60
zen.example.com 側で
RedirectMatch 301 .* http://go.example.com/
すれば go.examle.com の / に 301 してくれたような気がします。
63Name_Not_Found:2008/04/01(火) 15:02:55 ID:???
>>61
そうです。

REFERER無しの場合もそのまま見せます
64Name_Not_Found:2008/04/02(水) 00:56:50 ID:???
ここのうぷろだみたいに http://www.uploda.org/
音声ファイルを直リン禁止にしつつ
右クリでダウンロードできるようにするには
どうしたらいいだろ?

その辺のサンプルみてやったら
音声ファイルは左クリも右クリも駄目になった
65Name_Not_Found:2008/04/02(水) 08:14:41 ID:???
>>64
リファラみてるだけでしょ
66Name_Not_Found:2008/04/02(水) 13:07:33 ID:???
>>62
ありがとうございました!できました!感謝です。
671/2:2008/04/02(水) 15:34:39 ID:???
質問です。
今現在、以下のように2つの.htaccessを使ってアクセス制限をかけているのですが、
この.htaccess(A)と.htaccess(B)を一つの.htaccessファイルに纏める事は出来ませんか?


-/public_html/─┼─.htaccess(A)
           │
           ┼─/folder/─┼─.htaccess(B)
                    │
                    ┼─保護したいファイル.html

----------------
※.htaccess(A)の内容※

# 日本人のみをアクセス許可
order deny,allow
deny from all
allow from .jp
allow from .bbtec.net #Yahoo BB
allow from .il24.net #Interlink

682/2:2008/04/02(水) 15:35:12 ID:???
※.htaccess(B)の内容※

#ブラックリスト
order allow,deny
allow from all
deny from ***.***.jp
deny from ***.***.il24.net


----------------
検索をかけても他のページばかりが引っ掛かり、
目的の情報が見つからず途方に暮れています…。宜しくお願いします。
69Name_Not_Found:2008/04/02(水) 15:47:22 ID:???
.htaccessって
<Directory>
は使えなかったっけ?
70Name_Not_Found:2008/04/02(水) 16:03:42 ID:???
>>67-68
それでは(A)を読んだ後で(B)を読んだ時に(B)にOrder, Allow, Denyの
いずれかのディレクティブが現れた時点で(A)のアクセス制限が
解除されてしまうですぅ。
ですから(B)の方に(A)のAllowをくっつけるという事になるんでしょうけど、
Orderがallow,denyの時はDeny from allの、deny,allowの時はAllow from allの
意味を持つという基本かつWebサーバのドキュメント以外で説明されているところを
見たことが無い動作を使って
Order allow,deny
Allow from .jp
Allow from ...
Deny from ***.***.jp
Deny from ***.***
と書けばうまくくっつくです。

>>69
.htaccessが<Directoryで囲まれている部分の中身のようなものですぅ。
厳密には解析される順序が違うですけど。
71Name_Not_Found:2008/04/02(水) 16:35:49 ID:???
公式のドキュメント以外で s/(allow|deny) from all$//ig; な話が
一番たくさん書かれてるのは歴代のこのスレかもしれない。
7267-68:2008/04/02(水) 18:06:44 ID:???
>>70
教えて頂いた方法で上手く行きました。
ありがとうございました!

海外弾きを入れる前まではOrder allow,denyだけを使って弾いていて、
階層別に記述した.htaccessも何となく上手く行っていたので
解答が得られなかった場合はそのままで行くつもりだったのですが、
すでに落とし穴に嵌っていたのですね…。
早めに気付けて良かったです。本当に助かりました。
73Name_Not_Found:2008/04/02(水) 22:07:06 ID:???
>>65
特に細工しなくてもできるってことか
じゃ使ってるXREA鯖の仕様の問題かな
7474:2008/04/03(木) 04:35:59 ID:???
/home .htaccess1(検索避け+jp他日本ドメイン許可・ロボテキ参照可)

├─/hoge 403等エラードキュメント用ファイル

├─/dir_1/index.html (リンク等でここにアクセス多々有)
│  │   .htaccess2(検索避け+jp他日本ドメインok・403エラーメッセージ指定)
│  │
│  ├─/dat
│  │
│  └─/img  .htaccess3(reffererが自サイトの時だけ表示を許可) 

└─/dir_2 

おおまかにこのような状態です。続きます
7574続きです:2008/04/03(木) 04:38:37 ID:???
■.htaccess1の内容(検索避け+jp他日本ドメイン許可・ロボテキ参照許可)
SetEnvIf User-Agent "××bot" shutout
SetEnvIf REFERER "http://www.××.jp" shutout 
  :
order allow,deny
allow from .jp
allow from .××.net
  :
deny from env=shutout
deny from ××.net
  :
<Files robots.txt>
order deny,allow
allow from all
</Files>

■/dir_1/index.html ←最もアクセスされるディレクトリ
に設置する.htaccess2の内容(検索避け+jp他日本ドメインok・403エラー指定)

(.htaccess1と同じものを書いた上で)
deny from env=shutout
deny from ××.net
  :   の後に
ErrorDocument 403 /home/hoge/403.html

<Files robots.txt>以下は削除

この1と2のように、多重に少しずつ違う.htaccessを置くことは
避けたほうが良いのでしょうか?
回線のせいか自分では非常に重くなったと感じませんが、サーバに大きな負担になるものでしょうか。
76Name_Not_Found:2008/04/03(木) 12:56:04 ID:???
/d/.htaccess
/d/d/.htaccess
/d/d/d/.htaccess
/d/d/d/d/.htaccess
/d/d/d/d/d/.htaccess
/d/d/d/d/d/d/.htaccess
/d/d/d/d/d/d/d/.htaccess
/d/d/d/d/d/d/d/d/.htaccess
という.htaccessがある状態で
/d/d/d/d/d/d/d/d/page.html
へアクセスした時は結構遅滞する感じがあるですけど、2〜3階層程度なら
今のサーバなら問題ないレベルだと思うですぅ。
もちろん
/d1/.htaccess
/d2/.htaccess
   :
/d100/.htaccess
のように同じ階層でもたくさんあるとディスクキャッシュから落ちた分を
読み込みなおす分の遅滞が起きやすくなるですぅ。
7774:2008/04/03(木) 14:22:10 ID:???
>>75
なるほど、あまりにも多重にならなければ
現在ではそんなに差がないのですね。

読み直す分の遅延、という点のほうを気をつけることにします。
ありがとうございました。
78Name_Not_Found:2008/04/03(木) 17:58:00 ID:???
ダウンローダほんとうざいな。偽装してもバレバレだっつうの
http://news23.jeez.jp/img/imgnews25685.png
79Name_Not_Found:2008/04/03(木) 23:39:27 ID:???
29でBASIC認証について質問した者です
おかげで思い通りに設置出来ました。ありがとう。
すみませんがまた質問をさせてください。

設置は出来たんだけど、今度は何故か正しいPASSを入力しても中に入れないんだ…
普通に.htpasswdにIDとPASS書いたんだけどな。
PASSはネット上の暗号化ツールを利用させてもらって暗号化しましたし…。
何度も試してるんだけど何が良くないんだろう…
何か思い当たる原因などあるでしょうか。
80Name_Not_Found:2008/04/04(金) 12:09:42 ID:???
このスレでは.htpasswdの質問まで受け付けてくれるのでしょうか?
.ht*関連対応かという、スレに挙がる質問全般についての疑問です

スレタイ".htaccess"に忠実なのか、意外とファジーなのか
今後質問する際の参考にしたいと思い質問させてください
81Name_Not_Found:2008/04/04(金) 16:37:31 ID:fWriW/iS
ErrorDocumentの後ろにQUERY_STRINGつけて飛ばしたいんだけど、
どうやればいいの?

こんな感じのことしたい
ErrorDocument 401 /404.php?%{QUERY_STRING}
82Name_Not_Found:2008/04/04(金) 16:48:31 ID:???
解決しました
83Name_Not_Found:2008/04/04(金) 18:50:49 ID:???
>>81>>82

>>79
考えられる原因は
・改行とかパーミッションとか
・諸事情でパスワードの暗号化方式に種類があって(以下略
・.htpasswd が AuthUserFile で指定された場所に、ない ←たぶんこれ。

今まで同じ質問が来るたびに ID=nanasi / PW=aaaa 時の記述・数パターンを提示しても
「全部通りません」が大半なので、暗号化にミスって云々の可能性は低そうです。
配置確認用のCGIでも書いておけば、スレで使い回せるのかな。

>>80
単に正規表現の話になってたり RFC2616 の話をしてたりするぐらいの忠実さです。
.htpasswd の質問はここでいいと思うけど /usr/sbin/htpasswd の質問がどうなるかは不明。
84Name_Not_Found:2008/04/04(金) 21:47:15 ID:???
AuthUserFileが読めない時はInternal Server Errorになるから
Authorization Requiredが返ってくるならAuthUserFileの
中身の問題になるわぁ。

$apr1$で始まるMD5ハッシュと{SHA}で始まるSHAハッシュ以外は
サーバのOS依存になるわぁ。
パスワードをそのまま平文で登録する→Windows, BeOS, NetWare? のみ
OS付属の関数でハッシュ化する→上の3種以外のOSのデフォルトで通常はDESが使われる
htpasswd以外での暗号化ツールのほとんどはDESによるものだから
Windows上でちょっと実験用にというときにパスワードが通らなかったりするわぁ?
8583:2008/04/04(金) 22:10:31 ID:???
> AuthUserFileが読めない時はInternal Server Errorになるから

「あれっ、勘違いしてた?」と思いながら試してみたら

AuthType Basic
AuthName "test area"
AuthUserFile /dev/urandom/.htpasswd
Require valid-user

401 の進呈を受けました。うーん。
86Name_Not_Found:2008/04/05(土) 00:53:04 ID:???
「あれっ、勘違いしてた?」と思って探してみたら、ファイルが読めなくても
Authorization Requiredが返る条件があるわぁ。
Authorization Requiredが返ったからファイルが読めていると勘違いされた方々には
深くお詫び申し上げますわぁ。
8779:2008/04/05(土) 12:28:57 ID:???
>>83-86
返答ありがとうございます!
Authorization Requiredが返ってきてます
つまりは

AuthUserFile /xxx/eample/.htpasswd

の部分の記述がおかしい可能性が高いってことでしょうか。
指定場所は今ので合ってるつもりなんだけど…、うーん…
とりあえず、色々やってみます。レスありがとうございました!
8879:2008/04/05(土) 12:53:18 ID:???
解決しました!!

配置指定にpublic_htmlが足りなかっただけのようで。
何やら稚拙な質問ばかりしてしまいすみません。
反応くださった方々、本当にありがとうございました!
スレ汚し失礼しました!
89Name_Not_Found:2008/04/05(土) 14:12:50 ID:???
                           ヽ
              _,,.,、、,.ィ-- ti- 、、、....,,,,_   ',
         ,,..、、ri':'゙/~   レ     '  ゙ヘ:l : : : :~,>
   _,...r:::''"::/ l/ .l:/-=ニ二,'_ー- 、、   !l!;: r '"
'''<:::::::::::::;、r'          `'' ‐-`.、 /
-、 l::::::::::::l           <"゙'i;ソ'   ',
~.ヽ l:::::::::::l             ~'     '、
/ .) .l::::::::::!                    '、
 ヽ .l:!l:::::l ヽ                  '、
\ '  l! l::!l! ヽ                    ,'
  ゙    ヾ               ‐'" ,. r ゙
ー-‐i               ,.r,,iilll鬚髯ヲ    そんなに何も見えてないんじゃ
.   l            `''' ‐‐ ---t‐'     
 ̄ ̄ ̄ ̄ ̄ ̄~"''、' ‐ 、       ー‐ノ      生きてても面白くないでしょう
             ',  ヽ       l
               l   l       l
              l    l     ノ
90Name_Not_Found:2008/04/05(土) 14:39:20 ID:???
しかしなんだな。文末に!を連発されると、なんかこう.....
91Name_Not_Found:2008/04/05(土) 18:30:41 ID:???
若いっていいじゃないか┐(´ー`)┌フッ
92Name_Not_Found:2008/04/05(土) 18:49:16 ID:???
すみません。
ファイルの一覧表示を禁止し、エラーページを表示出来るようにするために

Options -Indexes
ErrorDocument 401 error/401.html
ErrorDocument 403 error/403.html
ErrorDocument 404 error/404.html
ErrorDocument 500 error/500.html

という記述をしたのですがどうにもこうにもインターネットエラーになってしまいます。
93Name_Not_Found:2008/04/05(土) 20:48:07 ID:???
>>92
Options は使える環境?
レンタルサーバだと Options が使えない場合があるよ

.htaccess の最後の行は改行してる?
94Name_Not_Found:2008/04/05(土) 21:25:56 ID:???
>>92
こういうときは、1行ずつ試してみるものさ
95Name_Not_Found:2008/04/06(日) 10:50:24 ID:???
.jpと.bbtec.netなど日本のプロバイダ限定にしています。
今まではそれで海外や串からのアクセスを弾けていたのに
昨日中国のIPが入ってきました。韓国など他のIPは弾けています。
.cnをいれても中国IP(変動)だけが弾けません。特別な方法などありますか?

宜しくお願いします。
96Name_Not_Found:2008/04/06(日) 11:24:49 ID:???
1) deny,allow
2) allow,deny
の書いている順序は上記どちらになっていますか?

過去ログをさかのぼれば分かると思いますが、
上記の順序によっては設定が筒抜けになっているのかもしれませんね
97Name_Not_Found:2008/04/06(日) 12:59:04 ID:???
95です。レスありがとうございます。

deny,allowになっています。他の国は弾けているんですけどね…
98Name_Not_Found:2008/04/06(日) 13:11:10 ID:???
何度もすみません。記述の仕方はこうです。↓

Order Deny,Allow
Deny from all
Allow from .bbtec.net
Allow from .jp
99Name_Not_Found:2008/04/06(日) 15:01:31 ID:???
APNIC
100Name_Not_Found:2008/04/06(日) 16:53:55 ID:???
>>93
さくらインターネットなのでOptions使えないみたいでした。。

ErrorDocument単独でやってみたのですがそれもできませぬ・・・。
うーん、さくらインターネット。。。


ちなみに最後の行は改行してます。
一行ずつも試してみたのですが。。。
101Name_Not_Found:2008/04/06(日) 17:15:07 ID:???
4/1からiモードIDが導入されたのでそれを使って携帯の自動認証をしたいのですが、

RewriteEngine on
RewriteRule ^(.*)$ $1?guid=on

SetEnvIf HTTP_X_DCMGUID "*******" mypage
allow from env=mypage
deny from all

このようにhtaccessで、自動的にiモードIDをURLに付加して、認証まで終わらせる事は
可能でしょうか?
中のページ全部にguid=onとX_DCMGUIDを入れるのは大変すぎです。
ちなみに上記の記述ではuidは付加してくれないし、読み込んでもくれません(涙
102Name_Not_Found:2008/04/06(日) 17:15:39 ID:???
Options使えなきゃ一覧隠せないなぁ・・・。

あぁ、まじさくらインターネット、まじさくらインターネット。
103Name_Not_Found:2008/04/06(日) 17:31:39 ID:???
>>100
ttp://httpd.apache.org/docs/2.2/mod/core.html#errordocument
> URL の場合は、スラッシュで始まる (/) ローカルの web-path ( DocumentRoot からの相対パス ) か、

スラッシュで(略)らしいです。

-Indexes のほうは DirectoryIndex に 403 か 404 が返るはずのファイル名を
追加すれば、なんとなく似たような動作になります。
よくわかんなかったら0バイトの index.html でも置いとく。
104Name_Not_Found:2008/04/06(日) 18:40:31 ID:???
>>101
>SetEnvIf HTTP_X_DCMGUID "*******" mypage
おまい、この記述が好きだなw
105Name_Not_Found:2008/04/06(日) 20:15:24 ID:???
>>100
さくらでも ErrorDocument 使えますよ

設定のどこかで挫けているはずなので、以下の手順でいかがでしょう?

1) 適当なディレクトリに ErrorDocument の記述だけした .htaccess を設置
2) <アカウント名>.sakura.ne.jp/<適当なディレクトリ> へのアクセスで実験
3) 手順 2) が成功した後、独自ドメイン等でもテスト

あとは他の方のアドバイスを参考にしつつ、
さくら独自の設定でこけていると感じたらこちらへ

さくらインターネット 質問にマジレスするスレ Part15
http://pc11.2ch.net/test/read.cgi/hosting/1204808205/
106Name_Not_Found:2008/04/06(日) 20:17:25 ID:???
>>102
Options 使えなくてもファイルやディレクトリの一覧は隠せますよ
違うことの一覧をおっしゃっているのでしたら失礼


質問される方は質問した最初のレス番号を名前欄に入れておくと
回答側から分かりやすくてよいと思いますので参考まで
107Name_Not_Found:2008/04/06(日) 21:19:25 ID:???
>>103 >>105
どもっす。
相対パスでうまくいかなかったので絶対パスでやったらうまくいきましたです。
どうもよくわからんなぁ・・・、なんで相対パスが上手くいかないのか・・・。

>>106
DirectoryIndex index.html .ht
これを使ってみたら成功しました♪
回答ありがとです。
108Name_Not_Found:2008/04/06(日) 22:55:16 ID:???
>>104
一回使うと、特に理由がないけど、次からも同じような記述をしてしまう・・・
同じパターンで使えば、不具合箇所を探すのも楽だし。
109Name_Not_Found:2008/04/09(水) 10:44:37 ID:???
IEとそうでないブラウザで別の拡張子のファイルを提示、なんてことできる?
110Name_Not_Found:2008/04/09(水) 13:16:21 ID:???
>>109
できる。
111Name_Not_Found:2008/04/09(水) 23:39:15 ID:6gFkkBWp
Ubuntu 7.10 デスクトップに、 Apache/2.2.4 をインストールしてあります。
CGIとコンテントネゴシエーションの併用したいので、下記の記述をしました。

.htaccess
──────────
Options +ExecCGI +MultiViews
AddHandler cgi-script .cgi
──────────

確認用のファイル
──────────
sample.html
hello.cgi
──────────

sample.html と sample でアクセスすると sample.html が表示され、
hello.cgi でアクセスすると、hello.cgi の実行結果が表示されます。

hello でアクセスした際に、hello.cgi の実行結果が表示されることを
期待しているのですが 404 Not Found の表示となってしまいます。
(The requested URL /hello was not found on this server.)
ブラウザのキャッシュを消去して確認しても同様です。

ログには下記エラーメッセージが出力されます。
==> /var/log/apache2/error.log <==
[Wed Apr 09 23:29:26 2008] [error] [client 127.0.0.1] Negotiation: discovered file(s) matching request: /home/user/www/hello (None could be negotiated).

CGIとコンテントネゴシエーションの併用するには、他に何か必要ですか?
112Name_Not_Found:2008/04/10(木) 12:21:14 ID:???
>>110
どうやるの?
113Name_Not_Found:2008/04/10(木) 12:49:38 ID:???
mod_rewrite
114Name_Not_Found:2008/04/10(木) 13:52:30 ID:vDjoaP21
>>112
↓これどぞ。

RewriteCond
http://www.net-newbie.com/trans/mod_rewrite.html#RewriteCond
> リクエストの中の ``User-Agent:'' ヘッダにしたがって ホームページサイトの書き換えを行なう

Browser Dependend Content
http://japache.infoscience.co.jp/rewriteguide/#ToC25
115Name_Not_Found:2008/04/10(木) 14:13:57 ID:???
質問させてください

(1) RewriteCond %{REMOTE_ADDR} ^xxx\.xxx\.
で弾くのと、
(2) deny from xxx.xxx.
で弾くのと、
サーバにかかる負荷は(2)の方が若干軽いといったことはありますでしょうか?

色々と調べてみたのですが該当する記述を見つけることができず、
どこかに該当情報がありましたら教えていただけますと助かります
よろしくお願いいたします
m(_ _)m
116Name_Not_Found:2008/04/10(木) 14:14:34 ID:???
あるよ
117111:2008/04/10(木) 14:16:26 ID:???
>>111 の件、解決しました。
AddType text/html .cgi
を追加したらhello でアクセスした際に、hello.cgi の実行結果が表示された。

参考:
[Apache-Users 1451] Re: DirectoryIndex and Content Negotiation in 2.x
http://mm.apache.jp/pipermail/apache-users/2002-June/001451.html
118Name_Not_Found:2008/04/10(木) 14:42:15 ID:???
>>115
Deny ディレクティブがアクセス制限用のものであることからも、
RewriteCond よりは負荷は少ないと思われ。実環境で試すしかないんじゃね?

使い方では同じことできるけど、元々利用目的が違うから比較の情報はないかも。


Deny ディレクティブ
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#deny

RewriteCond Directive
http://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritecond

RewriteCond で正規表現を使わずにプチ最適化
http://norainu.net/mt/archives/2008/03/rewritecond.html
119Name_Not_Found:2008/04/10(木) 16:05:04 ID:???
softbank000123456789bbtec.netを規制するのだったら
2chがSoftBankBB規制する時と同じ要領でsoftbank000123を規制すればいい

softbank000123XXXXXXbbtec.net
           ↑
        ここは変動しても

softbank000123XXXXXXbbtec.net
       ↑
ホストの先頭6桁は地域固定されてるから変動しない
120Name_Not_Found:2008/04/10(木) 20:18:01 ID:???
質問です。

PHPを組み込んだXHTMLを動作させるためには、
必ずMIMEタイプはapplication/x-httpd-phpでないといけないのでしょうか。
できればXHTML文書としてapplication/xhtml+xmlを指定したいのですが・・・。
121Name_Not_Found:2008/04/10(木) 20:31:48 ID:???
>>120
IEが表示できないと思うが

ま、それはさておき、phpから、ヘッダーを出すときに、
application/xhtml+xml
を指定すればよいだけでは?
122120:2008/04/10(木) 20:37:16 ID:???
>>121
ごめん、どうやったらPHPからヘッダーを出すときにMIMEタイプを指定できるの?
123edry(えどりぃ):2008/04/10(木) 20:51:18 ID:vDjoaP21
>>122
↓これはどお? header()関数で指定するらしい。
http://oshiete1.goo.ne.jp/qa1689585.html
124120:2008/04/10(木) 20:54:46 ID:???
>>123
なるほど、専用の関数が用意されているんですね。
ありがとうございました。
125Name_Not_Found:2008/04/10(木) 21:03:16 ID:???
お前らってどうやって.htaccessについて勉強してるんだ?
なんか基礎的な文法から体系的に説明しているサイトなり書籍なりは存在しないものか。
126Name_Not_Found:2008/04/10(木) 21:26:17 ID:???
日本人の情報は真偽が確かじゃないからマニュアル
127Name_Not_Found:2008/04/10(木) 21:50:17 ID:???
>>122
phpは、スクリプト中でprintやechoが出てきたとき、ヘッダーが
送られてなかったら、勝手に
Content-type: html/text
を送るあるよ

なので、phpからhtml/text以外のコンテンツをはき出す場合は、
header
で、適切なヘッダーを送り出さないといかんのです
128Name_Not_Found:2008/04/10(木) 21:55:01 ID:???
>html/text
129Name_Not_Found:2008/04/10(木) 21:57:08 ID:???
>>128
アイムソーリー、フクダソーリー
text/html
だなw
130edry(えどりぃ):2008/04/10(木) 22:01:03 ID:???
>>125
>>2-3辺りはスルーですか...

↓基本的にはここ見てる。
http://httpd.apache.org/docs/
http://httpd.apache.org/docs/2.2/howto/htaccess.html

見てもわかんない部分はあるので、実際に試してる。
試して分からないときは、ググる。
ググって分からないときは、質問してみる。>>111

それでも理解できないときは、もっかいググってる。
>>111>>117 で解決したのはそんな流れ。

なんだかんだ調べたり試したりしているうちに覚えるね。
習うより慣れろってことなんだと思う。
131125:2008/04/10(木) 22:41:37 ID:???
うーん、やっぱり体系的に説明されているものはないのか。
プログラミング言語とかXMLとかはそういうサイトなり本なりがあるのに、
なんで.htaccessに限ってないんだろうね。
不思議だ。
132Name_Not_Found:2008/04/10(木) 23:14:21 ID:???
>>131
.htaccessでやることは、httpd.confでできるからな。
.htaccessで探さずに、httpd.confでさがしたほうが良いかも。
133edry(えどりぃ):2008/04/10(木) 23:21:19 ID:???
>>131
↓これ体系的だとおもうけど。体系的ってどういうことを指してるの。
http://httpd.apache.org/docs/

もしかして解説しているサイトとか知りたいのかな。
「.htaccess 解説」でググるとそれなりにあるけど。
134Name_Not_Found:2008/04/10(木) 23:25:56 ID:???
>>133
「俺様のやりたいことが、すぐに見つかる」
じゃないかと
135Name_Not_Found:2008/04/11(金) 00:30:46 ID:???
>>125
人によって違うんだろうけど、>>126>>130に同じ。
http://localhost/manual/ で済む回答者は自分だけじゃないと思います。

・DNS 方面のお話。
・PCRE な正規表現。
・主に RFC2616。
・まだ何かありそう。

本気で解説しようとすればこんなめんどくさい事柄まで言及しないといけないから
「どっかで見たようなネタだけ」の解説サイトになりがちなのかもしれません。

(allow|deny) from all を教えて Order で「原則(許可|拒否)」が変わることを教えない
解説サイトが多いのは謎ですが。
136Name_Not_Found:2008/04/11(金) 03:18:48 ID:???
>>130
>>2-3辺りを時々見直す時があるけど、正直分かりにくい
すまん
137edry(えどりぃ):2008/04/11(金) 11:46:33 ID:???
>>132 それちょっと罠あるよね。初めにはまったw
サーバー設定ファイルと .htaccess との関係とか前提知識がないと
.htaccess に設定したものが有効にならなくて困惑する。

前提知識がないままに(正しいと思って)解説しているサイトがあるので、
>>126 のように信じられないと言われるのも仕方がないのかな。

.htaccess に関して情報を必要としているのは、サーバー管理ではなく、
レンタルサーバーとかのユーザーだろうから、>>134 の言う通りで、
何ができるかが解りやすく説明されていると、>>136 の求めているもの
になるのだと思う。

私はさくらインターネット使っているので、有志のサイトとかも参考にしてる。
http://faq.sakuratan.com/

たとえサーバー設定ファイルをいじれないユーザーであれ、ウェブサイトを
運営するなら、>>135 の挙げたことは理解している方が望ましいけれど、
正直、それは情報量が多いし深い知識が必要なので、このスレで質問をする
人が求めているものではないのかもしれないし、その見解の相違があるから
質問者と回答者の間で不毛なやりとりになってしまうこともあるのだと思う。

そんなところかな。

それらを踏まえて、このスレのテンプレをちょっと考えてみます。
いい感じで誘導できて、質問者と回答者がうまいこと話せるもの、
日曜までには素案書くよ。

このスレの住人居る? いなければ次のスレ立てるまでは面倒みるけど、
住人が居るなら、テンプレの件を気に留めておいてもらえるとありがたい。
138Name_Not_Found:2008/04/11(金) 13:19:05 ID:???
勉強のためずっと居座ってはいるけど、
サーバを持っているわけでないので実際にひとつ試すだけでも手間がかかり、
結果なかなか身につかないという印象はある。
アクセス制限だけでも、
書いたものが希望通りに機能しているか調べるには時間がかかることがあるし。

せっかく勉強してもサーバごとに使用が許可されていたりされていなかったり、
同じ書き方でもレスポンスが違ったりするらしいので、なおさらわかりづらい。

目的別に書かれていてわかりやすいテンプレがあればうれしいとは思います。
139Name_Not_Found:2008/04/11(金) 16:58:14 ID:???
>>137
お願いします。頑張ってください。
140Name_Not_Found:2008/04/12(土) 02:16:23 ID:???
ちょっと前から自サイトに
外国からのアクセスが非常によく来るようになりました。
これを機にアクセス制限したいと思い
解説サイトやスレなどを参考に書きましたが
これをこのままアップしていいか今ひとつ自信がないので
どなたか詳しい方、添削・採点をお願いします。
したいことは
直リン防止・日本語使用者のみ許可・jpで終わる人のみ許可・
国内の許可したいIPのみ許可・検索サイトの「百度」を弾く
です。よろしくお願いします。

#直リンを禁止する
SetEnvIf Referer "www.example.org/" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

#日本語以外の人を弾く
SetEnvIf Accept-Language ja Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

#jpで終わる人だけ許可する
Order Deny,Allow
Deny from all
Allow from .jp

#国内の許可したいIPのみ許可する
order deny,allow
deny from all
allow from 国内の許可したいIP
141140:2008/04/12(土) 02:17:57 ID:???
すみません、長過ぎたので分けました。上の続きです。

#「百度」を弾く
SetEnvIfNoCase User-Agent "Baiduspider" shutout
SetEnvIf User-Agent "baiduspider" shutout
SetEnvIf User-Agent "Baiduspider" shutout(略)

よろしくお願いいたします。
142Name_Not_Found:2008/04/12(土) 02:35:06 ID:???
>>140
直リンというのが何を意味しているのでしょうか?
・検索エンジン結果からのサイトの各ページへのダイレクトリンク
・掲載している画像など、txt系ファイル以外のコンテンツファイルへのリンク
・その他

百度以外も "spider" という UA (User-Agent) を使っているところが多いので、
"baiduspider" よりも
"spider" で弾いてしまってもよいかもしれません

それ以外のことについては他の方↓のアドバイスをご参考に〜
143Name_Not_Found:2008/04/12(土) 02:45:00 ID:???
やってみて不具合があったら質問しろよ
144Name_Not_Found:2008/04/12(土) 05:39:04 ID:???
めんどくせーから俺の使ってる奴晒してやるよ

#百度
deny from 122.152.128.0/23
deny from 202.96.0.0/12
deny from 202.108.0.0/16
deny from 220.181.0.0/16
deny from 60.24.0.0/13
deny from 61.135.0.0/16
deny from asd.tj.cn
deny from bta.net.cn
deny from asianetcom.net
145Name_Not_Found:2008/04/12(土) 08:42:59 ID:???
>>140
deny from all
をやった時点で、それまでの設定は全て無効になっているんだがw

ちゃんころはじくなら、apacheでやるより、iptablesでやるほうがいいぞ
ttp://www.hakusan.tsg.ne.jp/tjkawa/lib/krfilter/index.jsp
146Name_Not_Found:2008/04/13(日) 16:45:19 ID:???
147edry(えどりぃ):2008/04/13(日) 18:44:39 ID:???
>>140 直リンク以外の設定は下記でいいかと。
ドキュメントルートだとサイト全体に関わるので、まずは適当なディレクトリで試してね。
──────────↓ここから
##### Order で評価の順番とデフォルト(初期状態)の設定をする。
# 下記は Allow を先に評価し、Deny を後に評価する設定。
# デフォルトは Deny form All となるため、以降 Allow で許可したものしかアクセスできない。
# Allow で許可したアクセスのなかで拒否をしたいものは、続く Deny で拒否すること。
Order Allow,Deny

##### Allow で許可するもの
## 日本語使用者を定義(SetEnvif)して、アクセスを許可(Allow)する。
## 日本語使用者とは、ブラウザの言語設定に ja があるものを想定している。
SetEnvif Accept-Language "ja" Accept_Langage_ja
Allow from env=Accept_Langage_ja
#
## .jp ドメインのアクセスを許可する。
Allow from .jp
#
## 特定のIPアドレスを許可する。(xxxは例だよ)
Allow from xxx.xxx.xxx.xxx
#
## 日本国内のIPアドレスに関しては下記が参考になるかも。
# http://akionweb.com/archives/2005/04/post_88.shtml
# http://akionweb.com/myobjects/apache_allowjp.txt

##### Deny で禁止するもの(Allow で許可されたものを上書きして禁止する)
## 特定のIPアドレスを拒否する。(xxxは例だよ)
Deny from xxx.xxx.xxx.xxx
# 許可したものに当てはまらない百度はアクセスがないと思いますが、
# すり抜けてきたものは個別に拒否するしかないかな。
──────────↑ここまで
148edry(えどりぃ):2008/04/13(日) 18:51:41 ID:???
>>140 直リンクの禁止も書いてみたけど、一度にやると訳分からなくので >>147 試した後でどぞ。
>>147 に追記することを想定してます。単独では機能しないので注意してね。
──────────ここから
### 直リンクの禁止
# 直リンクとは、自分のウェブサイト以外からのリンク全てと想定しています。
# 直リンクの禁止は、リファラが自分のサイトではない場合に拒否をすることとします。
# 直リンクの禁止の例外として、直接URLを入力した場合やブックマークなどのアクセス、
# ファイアウォールやセキュリティソフトによりリファラが空の場合があることからも、
# そういったアクセスを拒否しないために、リファラが無い場合は許可とします。
# この設定は、拒否する対象をファイル名で指定するため、ページそのもの(html)や、
# 画像だけ(jpg)などを拡張子で選べます。
###
## example.com へのアクセスすべてを対象とするため ref_ng にホスト名を定義する。
SetEnvIf Host "example\.com" ref_ng
# Allow で許可したものでも直リンクさせないため、すべてのアクセスを対象とします。
# 正規表現で指定しているので . の前にはエスケープするため \ を書くこと。
#
## 自分のサイト内でのリンクを拒否しない。
# リファラが http://example.com/ で始まるなら ref_ng を未定義にする。
SetEnvif Referer "^http://example\.com/" !ref_ng
#
## リファラが無い場合(ブックマークなど)を拒否しないために ref_ng を未定義にする。
SetEnvif Referer "^$" !ref_ng
#
## 拒否する対象のファイル
# () の中に対象の拡張子を | で区切って列挙する。
# 画像の直リンクだけ拒否したいなら (gif|jpg|jpeg|png) とかね。
# 下記はありそうなもの思いついた限りで拒否対象にしてみた例。
<FilesMatch "\.(gif|jpg|jpeg|png|lzh|zip|cgi|php|html|htm)$">
deny from env=ref_ng
</FilesMatch>
──────────ここまで
149Name_Not_Found:2008/04/13(日) 19:08:02 ID:???
>>147
>Allow from .jp
これは、apacheのhttpd.confの設定が
HostnameLookups On
でなければ、効かないですな
ホスティングはオンになってることが多いのかな?
apacheのデフォルはoffだけど。。。
150edry(えどりぃ):2008/04/13(日) 22:36:59 ID:???
>>149
Allow ディレクティブでドメイン名の設定をすると HostnameLookups
の設定に関わらず二重の逆引きを行なうそうですよ。
http://httpd.apache.org/docs/1.3/mod/mod_access.html#allow
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#allow

質問内容から質問者の知識が推し量れますので、いっぺんに何もかもを
成功させることは難しいと思いますから、とりあえず希望の設定を示し、
上手くいかない点があれば、それを掘り下げればいいかと思われ。

一発で上手くいけばしめたものですし、上手くいかなければやり直せばいいし。
回答はマターリが基本かなと。
151edry(えどりぃ):2008/04/13(日) 23:35:18 ID:???
>>137 ではテンプレの素案を書くって気分だったけど、
.htaccess に触れて間もない私が書くにはも少し勉強が必要だった。

スレの雰囲気を理解しつつ、6以前の過去ログにも目を通したりして
時間かけてちゃんと考え直します。

とりあえず思うのは、まとめサイトあるといいね。
レンタルサーバーとかのまとめサイトで個別に .htaccess の説明が
あったりするけど、レンタルサーバーに依存しない共通の情報あれば
使いまわしもできるだろうし。
152Name_Not_Found:2008/04/13(日) 23:56:07 ID:???
不特定多数の人間が編集できるようなまとめサイトを作ろうという人がいるのであれば、
.htaccess関連の情報はセキュリティ的にクリティカルなものが多いので、
アカウントを取得しなければ編集できない等の注意を払っていただければ
積極的に編集参加したいと思います
153Name_Not_Found:2008/04/14(月) 06:52:51 ID:uOtvAZ0q
質問です。
携帯からのアクセスは別ページに飛ばす、というのは
どうやればいいのでしょうか?
・特定のホストからのアクセスを制限
・転送
この2つを組み合わせるのが分からなくて…
個人的にも調べましたが、有用な参考サイトがあれば教えて頂けるとありがたいです。
154Name_Not_Found:2008/04/14(月) 08:39:57 ID:???
>>153
3キャリアにリダイレクトするだけなら、それほどでもないよ
User Agentで判別すればいい。

振り分けには、色んな場合というか条件があると思うので、それを
ちゃんとまとめて、書き換え条件を書いていけば、面倒ではあるけ
ど、難しくはないと思う。
155Name_Not_Found:2008/04/14(月) 08:42:43 ID:???
>>153
実験してみた?
(A) 実験用のディレクトリを掘る
(B) 実験用の .htaccess を置く
(C) 1.特定ホストのアクセス制限と 2.携帯からのアクセス転送、以上が働くことを実験すれば OK

例(1)
RewriteEngine on
--------------------(α)
# 特定のホストからのアクセスを制限
RewriteCond %{REMOTE_HOST} ^hoge\.example\.com$ [NC,OR]
# または、RewriteCond %{REMOTE_ADDR} ^10\.20\.3[1-9]\. のようにしても OK
RewriteRule ^.*$ - [F]
--------------------(α)
# 転送
RewriteCond %{Http_USER_AGENT} <携帯の User agent> [NC,OR]
RewriteRule ^.*$ http://example.com/ [R,L]

例(2)
Order Allow,Deny または Deny,Allow
<お好みで呪文をつらつらと>
deny from <特定のホスト>
例(1)の(α)部分を削除した Rewrite 分と組み合わせれば OK

参考サイトは .htaccess やアクセス制限などで検索すればゴロゴロ出てくるはず
# というか、今検索して参考になるような説明サイトがゴロゴロ見つかったんだけど…('A`)
156153:2008/04/14(月) 11:18:21 ID:???
>>154>>155
うわ!神が2人もいらっしゃる!本当にありがとうございます。

「.htaccess」で検索していても何処をどうすればいいか全く分からなかったのですが、
「.htaccess 携帯 振り分け」で検索したらやっと参考サイトが出てきました。
(恥ずかしながら「振り分け」というキーワードが思いつきませんでした。でもまだ自己解決したわけではありません…)

>>155さんが書いて下さったおかげで、自分が何をすればいいのかやっと分かりました。
ありがとうございます、頑張ってみます!
157Name_Not_Found:2008/04/14(月) 11:55:18 ID:???
携帯の振り分けの場合、User Agentを使うと、特にSoftbankは条件が面倒になる。
なので、俺は、ヘッダーのx-jphone-msnameで判別してる。
このヘッダーが存在してれば、Softbank端末として処理してる。

158Name_Not_Found:2008/04/14(月) 13:00:23 ID:???
■携帯電話(機器)情報サイト Mobile Guide
ユーザーエージェント(UA)について
http://mobile.np-os.net/index.php?p=ua

■各キャリアのユーザーエージェント情報
DoCoMo ユーザーエージェント情報(公式)
http://www.nttdocomo.co.jp/service/imode/make/content/spec/useragent/
au ユーザーエージェント情報(公式)
http://www.au.kddi.com/ezfactory/tec/spec/4_4.html
SoftBank ユーザーエージェント情報(公式)
http://developers.softbankmobile.co.jp/dp/tech_svc/info/useragent.php

これだけ情報があれば十分だね
159Name_Not_Found:2008/04/14(月) 14:57:10 ID:???
このJavaScriptと同じようなことは.htaccessで出来ますか?
リファラにhttp://www.hoge.jp/を含まないものはすべて
http://www.hoge.jp/のトップに転送したいのですが

var address = "http://www.hoge.jp/";
if((document.referrer == "") || (document.referrer.match(address) == null)){
window.location.href = address;
}

よろしくお願いします。
160Name_Not_Found:2008/04/14(月) 17:06:19 ID:???
>>159
たかだか158個の過去ログもよまんのか?w
161Name_Not_Found:2008/04/14(月) 18:06:50 ID:???
>>159
出来ます

>>56-からを読んでも分からなければ、

1.調べたこと
2.やってみたこと
3.その他、 .htaccess について知っていること(レベル)

などを書き添えて再質問してみてください


>>160
まぁねぇ
┐(´ー`)┌
162edry(えどりぃ):2008/04/16(水) 00:21:49 ID:???
>>159
これでどうだろ。mod_rewrite モジュールが使えることが使用条件だけど。
適当なディレクトリで試してみて。
──────────ここから
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^http://www\.example\.jp/ [NC]
RewriteRule .* http://www.example.jp/
──────────ここまで
163Name_Not_Found:2008/04/16(水) 01:43:47 ID:???
>>162
localhost で試してエラーログ見てみましょう。
164Name_Not_Found:2008/04/16(水) 03:00:49 ID:???
質問させて下さい

/home/example/.htaccess(A)※日本IPのみ許可&日本IPでも特定のIPやホストは拒否
/home/example/picture/.htaccess(B)※画像の直リンクを禁止
/home/example/secret/.htaccess(C)※BASIC認証(ロボ避けのための認証なのでIDとパスは公表している)

.htaccessは階層が深くなるごとに設定が上書きされてしまうとのことですが、上記のような構成では
picture、secretディレクトリは(A)のIP拒否設定は無効になっているということですよね?
それで(B)(C)にも(A)と同様のIP制限を書き加えようかと思っているのですが、(A)は60KBを超えているため
(B)(C)にも同じことを書くと負荷がすごいことになってしまいそうで不安です。
全てのディレクトリで(A)の制限を有効にし、かつそれぞれ直リンク禁止・認証を行うには
どのように記述するのが最も負荷が少なくてすむのでしょうか。
165Name_Not_Found:2008/04/16(水) 08:43:11 ID:???
>>164
ほんの一月ほど前にも同じような質問があったな
またおまいか?w
166edry(えどりぃ):2008/04/16(水) 11:20:48 ID:???
>>163
↓これ出力された。
File does not exist: /home/user/www/test/favicon.ico

そっちの環境でなんか問題があるなら、
試した環境と結果の内容書かないと言いたいことが伝わらないよ。
167Name_Not_Found:2008/04/16(水) 13:48:26 ID:???
>>166
言いたいことは
Request exceeded the limit of 10 internal redirects due to probable configuration error.
です。そちらの環境では壮大なループにならないんですね。

%{HTTP_REFERER} ^$ で GET / しようが RewriteCond にマッチするので
RewriteRule を適用されて内部リダイレクトされるんだけど
その結果がまた RewriteRule 適用で内部リダイレクトされてその結果がまた(ry

というのが起きる環境を書け、と言われるとは思わなかった。
168Name_Not_Found:2008/04/16(水) 14:07:11 ID:???
>>167
こんなじゃだめか?
RewriteRule !^/$ http://www.example.jp/ [R]
ルートじゃなきゃルートへってことで。
169edry(えどりぃ):2008/04/16(水) 17:26:48 ID:???
>>167
言いたいこと分かりました。
転送先のディレクトリに >>162 の .htaccess を置くとまずいよね。
ってことですね。

エラーログについては Apache/2.2.4 (Ubuntu) の環境ですが、
LogLevel debug と RewriteLogLevel 9 にしてループさせてもそれ出なかった。
プラットフォームやバージョンほか、設定次第でゴニョゴニョできるので、
みんな同じとは言えないですね。
http://httpd.apache.org/docs/2.2/logs.html

>>159 へのレスはできるかどうかだけ。"質問内容"に対する回答をしました。
> リファラにhttp://www.hoge.jp/を含まないものはすべて
> http://www.hoge.jp/のトップに転送したいのですが

>>159 = >>163 >>167 なのかな?
>>162 を試して期待した結果でなかったのなら、何を求めているのかを改めて
質問してくれないと、何がしたいのか伝わらないよ。

もし違う人なら、>>137 でも書いたけど、質問してきた人が何を求めてるか
確認して応えないと、話が脱線して不毛なやりとりになってしまいますので、
やりとりを見ていて気になるところがあるなら、その旨書いて別途質問よろ。
170Name_Not_Found:2008/04/16(水) 17:58:48 ID:???
>>163==>>167 (!=>>159) です。質問はないんですよ。
「不毛なやりとり」にならないよう、以上で。
171Name_Not_Found:2008/04/16(水) 18:25:42 ID:???
アニヲタさん(複数?)や無駄に腰が低い人(>>27とかの人)を
最近見かけなくなったように思う
>>86ぐらいまで?
172Name_Not_Found:2008/04/16(水) 19:07:50 ID:???
よく分からないけど、ID出ないから
今度から名前欄に自分が最初にレスしたレス番号入れたらどうでっしゃろ?
173edry(えどりぃ):2008/04/16(水) 23:35:10 ID:???
>>164
おまいが >>140 であり、>>147-148 に apache_allowjp.txt 追記したんだなと思うわ。
注意として、apache_allowjp.txt の order や deny の行は追記対象としちゃだめよ。

で、.htaccess の負荷について理解したいなら、>>74-77 が参考になるけど、
http://httpd.apache.org/docs/2.2/howto/htaccess.html ぐらいは読もう。
全てを理解するなんてのは私もできてませんけど、ちゃんと読めば大体分かる。


質問の件は、(A)のアクセス制御はサブディレクトリすべてに適用されるから、
同じものを置く必要はない。けど、サブディレクトリに置いた .htaccess で
設定は上書きできるので注意が必要ということ。

(A)でBASIC認証の記述が無いなら(C)は必要で、(C)にはBASIC認証の設定書く。
でも、そのロボット避けは(A)の Deny で十分じゃないかな?

わざわざBASIC認証を使う理由があるのか疑問が残るけど、当然のことながら
(A)のサブディレクトリにある(C)にアクセスする際は、(A)+(C)を処理するし、
(A)だけよりは負荷が高くなる。
起こりえる問題は、 http://httpd.apache.org/docs/2.2/howto/auth.html

だから(A)だけ使用して、BASIC認証を使用しないのが負荷が少ないと思われ。

とりあえず、(A)は試した?

"案ずるより産むが易し"とも言うけど、そもそも(A)で問題がないか、負荷が
どれくらいかを見るべきだと思う。それで負荷高くてダメな場合はそれ以上
できないわけだし。
174Name_Not_Found:2008/04/17(木) 00:24:56 ID:???
>>171
質問する人以上に回答する人がいても無駄が多くなるから
>>86以降は様子見モードに切り替えることにしたわぁ。
175Name_Not_Found:2008/04/17(木) 01:03:54 ID:???
>>174
時々出てきてくれないと寂しいです!><(いや、けっこーマジで)
176Name_Not_Found:2008/04/17(木) 05:43:49 ID:???
                           ヽ
              _,,.,、、,.ィ-- ti- 、、、....,,,,_   ',
         ,,..、、ri':'゙/~   レ     '  ゙ヘ:l : : : :~,>
   _,...r:::''"::/ l/ .l:/-=ニ二,'_ー- 、、   !l!;: r '"
'''<:::::::::::::;、r'          `'' ‐-`.、 /
-、 l::::::::::::l           <"゙'i;ソ'   ',
~.ヽ l:::::::::::l             ~'     '、
/ .) .l::::::::::!                    '、
 ヽ .l:!l:::::l ヽ                  '、
\ '  l! l::!l! ヽ                    ,'
  ゙    ヾ               ‐'" ,. r ゙
ー-‐i               ,.r,,iilll鬚髯ヲ    そんなに何も見えてないんじゃ
.   l            `''' ‐‐ ---t‐'     
 ̄ ̄ ̄ ̄ ̄ ̄~"''、' ‐ 、       ー‐ノ      生きてても面白くないでしょう
             ',  ヽ       l
               l   l       l
              l    l     ノ
177Name_Not_Found:2008/04/18(金) 11:48:04 ID:???
変なコテより断然中身が適切な>>174が必要なんです!
1781:2008/04/18(金) 14:14:35 ID:???
>>172案に従ってみたらこんな名前になるのが嫌です。

>>171
無駄に腰が低いらしき人です。(ですぅ|わぁ)さんが召喚されるのはわかるんですけど、なんで自分が。

>>83-86なやりとり(かなり動揺しながら試しました)のあとは、>>103>>135だけですね。
>>135へのレス見て「いえ、お客さんはめんどくさい知識不要というのを言いたくて…」と
思ったけど自分にはよくわかんない流れになってるっぽいので、傍観者モード。

まとめサイト云々の話で、昔のことを思い出しました。
.htaccess質問コーナー Part4
http://pc8.2ch.net/test/read.cgi/hp/1128774075/628-651
179Name_Not_Found:2008/04/18(金) 15:20:06 ID:???
>RewriteEngine on
>RewriteRule ^(.*/)$ himmel/sora.php?id=/$1
>RewriteRule ^$ himmel/sora.php?id=/

どなたかこのコードを日本語に翻訳してください・・・。
180Name_Not_Found:2008/04/18(金) 15:28:32 ID:???
>>179
リライトエンジンおん

以下次号
181Name_Not_Found:2008/04/18(金) 17:09:21 ID:???
.htaccessなのかわからないのですが、
教えてください。
.htaccessでできないのなら、誘導していただけると助かります。

直リンクはOK 直接呼び出しNGという事は可能でしょうか?
私のサイトが
http://abc.jp/だとして

他のサイトの人がhttp://xwy.net/だとします
このサイトの人が
<img src="http://abc.jp/abc.jpg" alt="">というタグを書き自分のサーバーに
アップした時は、画像を表示させたい。
でも、
ブラウザで
http://abc.jp/abc.jpg
っと呼び出したときは、エラーにしたいんです。

可能でしょうか?

182Name_Not_Found:2008/04/18(金) 17:38:40 ID:???
>>181
テンプレ>>3 の 【例示用ドメインについて】 にも記載しているとおり、
例に挙げただけでも、過去・現在・未来に存在する可能性があるため、
質問/回答時の例として使うドメインは、例示用として予約されている
example.com、example.net、example.org、example.jp などを使いましょう

これに好きなサブドメインをつけて説明するのは OK です
例) hoge.example.com

以上のことに注意しつつ質問や回答するよう次回から心がけましょう
183181:2008/04/18(金) 17:44:12 ID:???
>>182
申し訳ありませんでした。
引き続きわかる方がいらっしゃいましたら、お願いします。
184109:2008/04/18(金) 21:17:06 ID:???
確かにRewriteCondを使ったらブラウザごとに違うURIを出力できるみたいだけれど、
俺がやりたいのはコンテントネゴシエーションをしている場合のことで、
出力するURIが同一でファイルはブラウザごとに振り分けたいんだ。

具体例を出せば、ttp://kuruman.org/diary/latestになる
これ、普段はXMLを出力しているけれど、IEのときに限ってHTMLを出力しているんだよね。
URIはどちらも全く同じなのに。
これってどう設定しているのかな?
185Name_Not_Found:2008/04/18(金) 21:36:52 ID:???
>>184
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} MSIE
RewriteRule latest$ - [G,L]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/5\.0
RewriteRule latest$ /latest.html [L]
RewriteCond %{HTTP_USER_AGENT} (baidu|naver|spider) [NC]
RewriteRule latest$ /atom.xml [L]
186Name_Not_Found:2008/04/18(金) 21:38:24 ID:???
mod_rewriteについてすごく詳しく分かりやすく書かれたページを発見したんで、報告しとく。
ttp://tech.bayashi.jp/archives/entry/techweb/2007/001981.html
187Name_Not_Found:2008/04/18(金) 22:27:00 ID:???
>>184
RewriteCond %{HTTP_USER_AGENT} MSIE
RewriteRule !^(MSIE.*)$ /MSIE/$1 [QSA,L]

でどうだ?
UserAgentにMSIEが含まれるときだけ、/MSIE/以下を表示する。
それ以外はそのまま。

検証はしてないので、動かなかったら勘弁な。
188Name_Not_Found:2008/04/18(金) 22:35:38 ID:???
>>187
自己レス
RewriteRule !^(MSIE.*)$ /MSIE/$1 [QSA,L]
がおかしいね。
RewriteRule !^MSIE/(.*)$ /MSIE/$1 [QSA,L]
かなあ?
189edry(えどりぃ):2008/04/19(土) 16:17:55 ID:???
>>179
>>180 の第二号

URLの任意の文字0個以上と最後の/で終わるところまでを記憶し → himmel/sora.php?id=/"先ほど記憶したURLをここに展開" に書き換える。

以下次号
190Name_Not_Found:2008/04/21(月) 14:55:44 ID:KpnK4ald
php_flag display_errors On

AddType "text/html; charset=UTF-8" html

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9a-zA-Z\_]+)/([0-9a-zA-Z\_]+)\.html$ mod_rewrite.php?var1=$1&var2=$2 [L]

と書きましたが、うまく表示できません。
RewriteRule の部分以外は、動作するので、RewriteRuleの構文が間違っているのでしょうか?

【サーバーの状態】
エンコード:UTF−8

191Name_Not_Found:2008/04/21(月) 15:08:00 ID:???
教えて君でごめんなさい。
中国、台湾、韓国を弾く設定と
refererがないとアクセスできない設定は書けたのですが、
両方を満たす.htaccessが書けません。

検索のヒントでも教えてもらえたら嬉しいです。
192Name_Not_Found:2008/04/21(月) 15:18:55 ID:???
>>191
.htaccessに何を書いたかを出さないとコメントしようがないと思うが
193Name_Not_Found:2008/04/21(月) 15:20:40 ID:???
>>190
rewrite_logを見たら、ヒントがあるかもね
194Name_Not_Found:2008/04/21(月) 15:45:35 ID:???
>>192
SetEnvIf Referer "^ドメイン名" ref_ok
order deny,allow
deny from all
allow from env=ref_ok



order allow,deny
allow from all
deny from .ca
deny from .fr

すいません、すいません。これは例ですが、
これを一緒に書くにはどうしたらいいでしょうか?
195Name_Not_Found:2008/04/21(月) 15:53:11 ID:???
>>190
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)\.html$ /info.php?var1=$1&var2=$2 [R,L]
# R(=302) つけたのは見た目をわかりやすくするだけ。

これで "/存在しないディレクトリ/存在しない.html" を叩いたらリダイレクトしてくれたし
R 抜いても /info.php?var1=$1&var2=$2 が出る。
196Name_Not_Found:2008/04/21(月) 16:09:17 ID:???
>>194
SetEnvIf Referer "^ドメイン名" ref_ok
Order Deny,Allow
Deny from .jp
Allow from env=ref_ok
Allow from .cn
Allow from .tw
Allow from .kr
197196:2008/04/21(月) 16:11:45 ID:???
ていせい。
たぶん ref_ok && denied host も deny したいだろうから、こっちの Order で。

SetEnvIf Referer "^ドメイン名" ref_ok
Order Allow,Deny
Allow from env=ref_ok
Allow from .cn
Allow from .tw
Allow from .kr
Deny from .jp
198Name_Not_Found:2008/04/21(月) 16:17:57 ID:???
>>194
下のallow from allで、それまでの設定が全てチャラになるよ
199edry(えどりぃ):2008/04/21(月) 16:31:22 ID:???
>>181
> 直リンクはOK 直接呼び出しNGという事は可能でしょうか?

許可 = リファラが空でない = 直リンク
拒否 = リファラが空である = 直接呼び出し

と仮定するなら、リファラが空の時はアクセスを許可しないようにすればOKかと。

.htaccess
──────────
Order Deny,Allow
SetEnvif Referer "^$" ref_ng
deny from env=ref_ng

# 1: Deny を先に評価し、Allow を後に評価する設定。デフォルトはすべて許可となる。
# 2: リファラが空なら、ref_ng を定義する。
# 3: ref_ng が定義されているときはアクセスを拒否する。
──────────
200Name_Not_Found:2008/04/21(月) 16:47:24 ID:???
>>199
質問者がそれを doc_root に置きそうなことまで考えて
<Files> 使うぐらいのエスパーカ(えすぱーか)はあったほうがいいと思う。
201Name_Not_Found:2008/04/21(月) 16:56:56 ID:???
>>197
ああ、そうなんですね。
ありがとうございます。
早速試してみます!
202edry(えどりぃ):2008/04/22(火) 00:35:39 ID:???
>>200
直リンクはOK 直接呼び出しNG とする理由次第かな。

逆のことをやりたいという状況はよくあると思いますが、今回の内容は初めてなので、
とりあえず、可能かどうかを知りたくて .htaccess で実現ができるかを質問してる
ことから、どのように実現できるかに絞って書いてみました。

魚と釣り方のどちらを求めているのかにもよりますが、魚なら >>148 のとき同様に
拡張子で対象を絞れるように追加で示せば足りますが、釣り方なら混乱を避ける為に
最小限の方法を示すことが理解が容易になると考えました。

深読みが過ぎるかなとは思いましたが、画像サーバーと考えたときに、質問者が魚を
求めていて書かれたものをそのまま使うと、余計な記述は負荷にしかならないので、
最小限の記述にしたという背景もあったりします。

さらに深読みが過ぎるかなとは思いましたが、直リンクを許可したいサイトを特定の
ものとしたいとか(ry

不毛になりそうなんで。>>150 な感じです。
203Name_Not_Found:2008/04/22(火) 07:36:58 ID:???
画像やFlashファイルに対してなら直呼びNGにしてる

h抜きとかで画像貼られると転送量が無駄に浪費するんで
空リファラ弾いとけばhttp://で貼られようがttp://で貼られようが403
204Name_Not_Found:2008/04/22(火) 12:45:45 ID:1aCMAoDZ
58.14.1.2の場合は
RewriteCond %{REMOTE_ADDR} ^\58\.14\.1\.2 [NC,OR]
と書くことができますが
58.14.0.0/15
の場合どうかけばいいのでしょうか?
205Name_Not_Found:2008/04/22(火) 14:45:59 ID:???
>>15
kwsk
206Name_Not_Found:2008/04/22(火) 18:01:09 ID:???
^58\.1[45]\.
207edry(えどりぃ):2008/04/22(火) 23:38:00 ID:???
>>184 ( >>109 )
とりあえず、>>184 で示したサイトでやっていることは、
シンプルなコンテントネゴシエーションだと思われ。

latest.html  = text/html
latest.xhtml = application/xhtml+xml

とかがあって、ユーザーエージェントの Accept などにより最適なものを選択して
返しているだけだろうから、コンテントネゴシエーションを利用できる環境があって
試したいなら、xhtml の文書を sample.xhtml で、html の文書を sample.html で、
同じところにおいて、ファイル名 sample でアクセスすれば確かめられる。

Firefox/2.0.0.13
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5


IE/6
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*

Firefox だと application/xhtml+xml が text/html よりも優先され .xhtml が返される。
IE だとワイルドカードで */* となっているので、Apache ネゴシエーションアルゴリズムの
2-4 で最高レベルのメディアパラメータ(text/html)を持つ .html が返されるのだと思う。
とりあえず、localhost で実際に試すと期待したとおりの結果になったよ。
拡張子を .xhtml と .html で分けとけば、大抵は Apache のデフォルトで上手く行く気がする。


コンテントネゴシエーション
http://httpd.apache.org/docs/2.2/content-negotiation.html

Apache モジュール mod_negotiation
http://httpd.apache.org/docs/2.2/mod/mod_negotiation.html
208edry(えどりぃ):2008/04/23(水) 09:40:27 ID:???
>>207
訂正と補足。

> とりあえず、localhost で実際に試すと期待したとおりの結果になったよ。
試したのは localhost ではなく、さくらインターネットでした。Apache/1.3.39 (Unix)

> 拡張子を .xhtml と .html で分けとけば、大抵は Apache のデフォルトで上手く行く気がする。
デフォルトってのは MIME タイプのマップのことです。
↓こういう関連付け。
> latest.html  = text/html
> latest.xhtml = application/xhtml+xml

デフォルト(または試した環境)で上手く行かない場合は、AddType ディレクティブ
でマップすればOKかと。
AddType text/html .html
AddType application/xhtml+xml .xhtml
209Name_Not_Found:2008/04/25(金) 11:01:43 ID:???
HTTP_RANGEにbytes=0-1048575という環境変数を吐くスパムロボットがあるのですが
何か規制する方法はないでしょうか?他の環境変数はIEと全く同じで、
普通の投稿者と違うところは、ホストが毎回変わることと海外のホストであることくらいです。

>>2のSetEnvIfには、HTTP_RANGEは、
使用できなさそうなことがあったのですが一応試してみました。
特に何の影響もなくすり抜けてきます。
今のところはCGI側で弾いているのですが、
それではどうしても負荷が余計にかかってしまい、
アクセスログにも残ってしまうのでとても迷惑しています。

試してみた.htaccessです。
一番上のOpera海外版を偽装したスパムは弾けていますが、2〜4番目はどれも無反応です。
SetEnvIf User-Agent "^Opera/9\.0 \(Windows NT 5\.1; U; en\)" deny_ua
SetEnvIf HTTP_RANGE . deny_env
SetEnvIf HTTP_RANGE "1048575" deny_env
SetEnvIf Http-Range "1048575" deny_env
order allow,deny
allow from all
deny from env=deny_ua
deny from env=deny_env

使用サーバーはさくらインターネットのプレミアムです。
日本以外のホストを弾くと言うことも出来るのですが、
海外から来ている日本人ユーザーが結構いるので規制できないで居ます。
210Name_Not_Found:2008/04/25(金) 13:28:24 ID:3P1p33XL
中国からの全ipを規制したいけど
何か効率のいい方法ないのかな?
ip1つづつをdenyしてるとhtaccessがすごい行になるんだけど
211Name_Not_Found:2008/04/25(金) 14:18:18 ID:???
deny from chankoro
212edry(えどりぃ):2008/04/25(金) 22:26:09 ID:???
>>209
CGI の環境変数を .htaccess で使おうとしてませんか。
おそらく試した .htaccess の2〜4番目は不要です。

SetEnvIf Range "^bytes=0-1048575$" deny_env

でマッチすると思いますので試してみてください。
213Name_Not_Found:2008/04/27(日) 19:05:01 ID:Cdj2fWG/
RewriteEngine on
RewriteCond %{REMOTE_HOST} \.or\.jp$ [NC]
RewriteRule ^.*$ /test.html [R=301,L]

としてますがスルーされます。
REMOTE_ADDRでipを指定した場合はうまく規制できています。
何が原因なんでしょうか?
214Name_Not_Found:2008/04/27(日) 19:43:30 ID:???
>>213
HostnameLookups Off
じゃね?
215Name_Not_Found:2008/04/27(日) 19:56:52 ID:Cdj2fWG/
レスありがとう。
httpd.confですか。レンタル鯖なのでoffされていると無理ですね。
danyで対処するようにします。

RewriteRule ^.*$ /test.html [R=301,L]
のように規制対象を任意のアドレスへdanyだと無理なんですよね。
403と連続アクセスされるとやられっぱなしなので127.0.0.1なんかに飛ばしたいんだけど。

dany でリモホを規制するかREMOTE_ADDRでこまめにipを規制するようにします。
お騒がせしました。#中国からのアクセスを国側でどうにか規制してほしいものです・・・
216Name_Not_Found:2008/04/27(日) 20:12:09 ID:???
>>215
dany......w
217Name_Not_Found:2008/04/27(日) 22:23:16 ID:???
んなめどいことやらんでもソースに<!--天安門事件-->で終了
218Name_Not_Found:2008/04/27(日) 22:44:10 ID:???
>>217
天才現るw
219Name_Not_Found:2008/04/28(月) 17:50:57 ID:psY/2XFv
         ハ,,ハ  僕、アルバイトォォ!!
        ('(゚∀゚∩_ 僕をどこかのスレに送って!
      /ヽ   〈/\ お別れの時にはお土産を持たせてね!
     /| ̄ ̄ ̄|.\/
       | モツ煮 |/
        ̄ ̄ ̄
現在の所持品:新聞、∈(・ω・)∋ダムー、ゆうパック、ダム穴、百度
220Name_Not_Found:2008/04/29(火) 21:25:56 ID:sS5y1L8c
超初心者ですがお願いします。
HPじゃなくて、ブログ(それも無料ブログ)で.htaccessを使って
特定のIPアドレスを制限することは可能ですか?
221Name_Not_Found:2008/04/29(火) 21:35:27 ID:ac7HHgMU
>>220
超初心者用スレではないにでスレ違い
222Name_Not_Found:2008/04/29(火) 21:42:17 ID:sS5y1L8c
そうですね・・・
でも、できれば教えてもらえませんか?
223Name_Not_Found:2008/04/29(火) 22:01:39 ID:???
>>222
あなたが借りているのはどこですか?
224Name_Not_Found:2008/04/29(火) 22:05:47 ID:ac7HHgMU
まずは人に聞く前に自分で調べる癖をつけましょう。
せっかくインターネットに繋がっていて2chだけしか利用しないのはもったいない。
君の文章から得られるキーワードは「htaccess IPアドレス 制限」

それから得られる情報は日本のサイトだけでもhtaccess IPアドレス 制限 に一致する日本語のページ 約 643,000 件

こんなにもあります。ここで聞くより643,000 件の中から自分で情報を探す方が君にとって有意義です。
その上で理解出来ない部分なんかがある場合にここなどで聞くとさらに知識が深まるのです。
225Name_Not_Found:2008/04/29(火) 22:06:25 ID:???
WEBに公開している以上「完全」に制限することは不可能だと常に覚えておいて下さい
226Name_Not_Found:2008/04/29(火) 22:27:10 ID:sS5y1L8c
みなさんヒント色々ありがとうございます。
htaccessでIPアドレスを制限する事に関するページはたくさんありますね。

ただ、初心者すぎて、HPじゃなくてブログでもそれができるかわからなかったんですが
ブログでも可能のようですね。
なんとかやってみたいと思います。
227Name_Not_Found:2008/04/30(水) 01:00:39 ID:???
>>212
規制されていて返答遅くなりました。
CGIの環境変数と.htaccessの環境変数は別なのですね。勉強になりました。
SetEnvIf Range "^bytes=0-1048575$" deny_env
で設定してマッチ出来たようです。
お陰でスパムの9割を規制できました。有り難うございました。
228Name_Not_Found:2008/04/30(水) 01:05:57 ID:???
>>226
普通に借りるようなレンタル形式のブログじゃできないよ

ってみんな教えてあげないとw
229Name_Not_Found:2008/04/30(水) 01:56:17 ID:???
自分で借りてるところのヘルプ見りゃ済むのにそれもしないし
じゃあ、どこなら出来ますか?とか聞かれるのがオチだろ
230Name_Not_Found:2008/04/30(水) 02:08:36 ID:???
そーゆー時はブログ系のスレに誘導して終了w
231Name_Not_Found:2008/04/30(水) 02:14:26 ID:Ah742n5q
ブログなんかで何かしようと思うのが間違い
232Name_Not_Found:2008/04/30(水) 07:59:08 ID:???
バカにされたー
どうせバカだけど
233Name_Not_Found:2008/04/30(水) 12:40:59 ID:???
ここまで while による自演
234Name_Not_Found:2008/04/30(水) 21:01:15 ID:He7sahYB
質問させて下さい。
携帯の特定の1機種(W54T)からのアクセスのみを弾きたいのですが、
その場合はどのように記述すればいいでしょうか?

ぐぐったところ
BrowserMatch "DoCoMo/1\.0/SO503i/c10" DoCoMo_SO

Order Allow,Deny
Allow from all
Deny from env=DoCoMo_SO

という特定機種を弾くらしい記述と

W54TのデバイスIDは「TS3E」

が出てきたので、これを利用して書き換えればいいのかと思っても
どこをどう書きかえればいいのか解りません。
自分の機種を参考に適当な書き換えも試してみましたがアクセスできてしましました。

使用サーバーはさくらです。
よろしくお願い致します。
235Name_Not_Found:2008/04/30(水) 21:57:57 ID:???
>>234
BrowserMatch のところを書き換えればいいじゃねーか
236234:2008/04/30(水) 22:17:52 ID:???
>>235
ご指摘通り、

BrowserMatch "TS3E" au_CA

Order Allow,Deny
Allow from all
Deny from env=au_CA

にしてみたら弾けました。

"DoCoMo/1\.0/SO503i/c10" のように機種番号の前後に何かいるものだとばかり……
こんなに単純だったとは orz

お手数をおかけしてすみません。本当にありがとうございました!
237edry(えどりぃ):2008/04/30(水) 23:30:26 ID:???
>>135
> (allow|deny) from all を教えて Order で「原則(許可|拒否)」が変わることを教えない
> 解説サイトが多いのは謎ですが。

なんか最近、同じ疑問を持ったw

deny from example.com
allow from example.com
deny from example.com
これ上から順に試したとき、最後に書いたものが機能しないと悩むとか。
だから、
Order deny,allow
Deny from all
Allow from all
たぶん、こうした方が Order が何やっているか分かりやすいのかな。
238164:2008/05/03(土) 19:06:10 ID:???
>>164です
お礼が遅くなってすみません

>>165,173
この板には初めてきたので人違いだと思います

(A)〜(C)は1年以上前から設置してあるのですが、最近になって
(C)のディレクトリに対するIP制限が効いていないらしいことに気付きました。
((A)には串避けの記述もしてあるのですが、その串で(C)にアクセスできてしまったので)
それで今のままでは穴があるのでは…と心配になり質問をさせていただいた次第です。
とりあえず>>173さんが示して下さったページを熟読し、それでも不明な場合は
またお邪魔させていただこうと思います。
レスありがとうございました。
239Name_Not_Found:2008/05/03(土) 21:13:47 ID:???
>>238
次回質問することがある時は、トリップをつければよいと思いますよ
240Name_Not_Found:2008/05/05(月) 13:21:27 ID:???
botと日本語環境以外のアクセスを弾きたいのですが、以下の記述で合ってますでしょうか?
鯖はさくらです。


SetEnvIf Referer "^http://example\.ne\.jp" welcome
SetEnvIf Referer "^$" welcome

SetEnvif Accept-Language "ja" Accept_Langage_ja
Allow from env=Accept_Langage_ja

SetEnvIf User-Agent "Googlebot" shutout
SetEnvIf User-Agent "Slurp" shutout
SetEnvIf User-Agent "msnbot" shutout
SetEnvIf User-Agent "spider" shutout

Order Allow,Deny
Allow from all

以下、企業や役所等のドメインが続きます

Deny from env=shutout
241edry(えどりぃ):2008/05/07(水) 10:24:40 ID:???
>>240
> Allow from all
これがあるため、日本語環境でははないものも許可しちゃいます。

あと、welcome は許可設定しないの?
242Name_Not_Found:2008/05/07(水) 11:37:03 ID:/tfusj0l
正直どこをどう弄れば良いのかサッパリ
この構文も元々はrobotとドメイン弾きの例文を改造した奴なんです

SetEnvIf Referer "^http://example\.ne\.jp" welcome
SetEnvIf Referer "^$" welcome
SetEnvif Accept-Language "ja" Accept_Langage_ja
SetEnvIf User-Agent "Googlebot" shutout
SetEnvIf User-Agent "Slurp" shutout
SetEnvIf User-Agent "msnbot" shutout
SetEnvIf User-Agent "spider" shutout
Order Allow,Deny
以下、企業や役所等のドメイン
Allow from env=welcome
Allow from env=Accept_Langage_ja
Deny from env=shutout

と書き換えてみましたが如何でしょうか?
243240:2008/05/07(水) 11:38:33 ID:/tfusj0l
>>240>>242でした
244edry(えどりぃ):2008/05/08(木) 00:50:17 ID:???
>>242 (= >>240 = >>243)
Order Allow,Deny の行が Allow と Deny の評価される順を決め、
その上でデフォルトの状態(この場合は Deny from all となる)が決まります。
http://httpd.apache.org/docs/1.3/mod/mod_access.html#order
今回は、Allow で許可したいものをまずは列挙し、その中で拒否したいものが
あれば Deny で拒否する感じになると思います。

ただ、Allow の許可はひとつを見れば目的を果たすことができますが、
複数の設定があると目的を果たせない場合があります。

> SetEnvif Accept-Language "ja" Accept_Langage_ja
これだけ見れば、日本語を利用するユーザーエージェント"のみ"を許可しようとしてる、
〉SetEnvIf Referer "^$" welcome
でも、これがあるから日本語を利用するかに関係なく、リファラが空なら許可する。

Allow での許可が or なので、どれか一つの条件が合えば許可することになります。
つぎはぎ的な内容とうことであれば、welcome のやつは特に意図があったわけでは
ないということですね。ならば、次の行は不要。
〉SetEnvIf Referer "^http://example\.ne\.jp" welcome
> SetEnvIf Referer "^$" welcome
> Allow from env=welcome

また、ロボットを弾くのも、デフォルトが Deny from all で全て拒否してる
ことから、Allow で許可した中にロボットがあった場合に Deny で拒否すれば
いいと思いますので、初めは次の三行だけで様子を見てはいかがでしょうか。

SetEnvif Accept-Language "ja" Accept_Langage_ja
Order Allow,Deny
Allow from env=Accept_Langage_ja
245240:2008/05/09(金) 02:27:18 ID:???
>>244
ご指摘有難う御座います。
取り敢えずその3行で様子を見てみたのですが、Docomoからのアクセスは弾くみたいです。
日本語環境且つ企業・役所・学校以外は弾きたくはない場合、
この様な感じでしょうか?

SetEnvif Accept-Language "ja" Accept_Langage_ja
Order Allow,Deny
Allow from env=Accept_Langage_ja
Allow from env=海外扱いに混ざるISPのホスト
Allow from env=携帯各社のホスト
Deny from 弾きたいIPとドメイン
Deny from env=shutout

ただjigブラウザWEB経由の場合、末尾にYahoo.co.jpが付いてしまいます。
その場合は該当するホストをAllow from env=で許可した後、
他の企業はco.jpでDeny処理で大丈夫でしょうか?
246edry(えどりぃ):2008/05/09(金) 12:09:02 ID:???
>>245
細かいことしようとするなら、具体的にヘッダーになにがあるのか見て、
共通する部分を見つけて、Allow なり Deny するだけ。
大丈夫かどうかってのは自分のサイトで実際に試すしかないですね。

CGIで環境変数のチェックしてくれるサイトがどっかにあるから。( http://kagetsu.biz/tool/env/ )

〉SetEnvif Accept-Language "ja" Accept_Langage_ja
これを例にすると、アクセスした際にユーザーエージェントがヘッダーの中で
Accept-Language: ja,en-us;q=0.7,en;q=0.3
としている場合に、値に「ja」が含まれているから Accept_Langage_ja が定義され、
Allow from env=Accept_Langage_ja で許可される。
だから、「ja」が含まれていなければ定義されず許可されない。
ほかにも、User-Agent とか見て判断したりするのがよくある手だと思う。

> Docomoからのアクセスは弾くみたいです。
なぜそうなるのかは Docomo の端末のヘッダー情報確かめる。

> 日本語環境且つ企業・役所・学校以外は弾きたくはない場合
やろうとしていることが複雑なので、少しずつ試すしかないかな。
Allow での許可が or という話はしましたが、Allow や Deny が増えると
条件増えた分だけ許可と拒否の関係が複雑になります。

Order と Allow と Deny の使い方としては3段階で考えるといいかも、
1. デフォルト「全て許可」「全て拒否」と Allow や Deny の評価順番をどちらにするか。
2. 必要最小限の許可・拒否をする。
3. 許可・拒否の条件を調整する。

Order ディレクティブについて理解しておかないと、どつぼにはまるので注意して読む。
http://httpd.apache.org/docs/1.3/mod/mod_access.html#order
247Name_Not_Found:2008/05/09(金) 14:06:09 ID:???
ここの皆には常識だと思うがいくら弾いても携帯やモバイルとかゲーム機でしつこくアクセスしてくる奴が居るからそっちのUAも弾かないと無意味だよ
248Name_Not_Found:2008/05/09(金) 15:47:27 ID:W4dMx6RC
すいませんよろしく御願いします

動的なurlを静的に変えるときに、
/が含まれている場合、
文字だろうがディレクトリだろうが、ディレクトリとして認識されます
文字の場合は文字だと認識させるためにはどうすればいいでしょうか。

例えばwikipediaの場合、
.htaccessに
RewriteEngine on
RewriteRule wiki/(.*)$ wiki.php?q=$1 [L]
このように記述することで、
クエリがhogeである場合、
http://ja.wikipedia.org/wiki/hoge
とすることができます

クエリがOS/2(OS/2の"/"はディレクトリではなくただの文字)の場合、
http://ja.wikipedia.org/wiki/OS/2
となりますが、きちんと機能します
OS/2の"/"はディレクトリではなく文字なわけですが、どうやってただの文字であると認識させているのでしょうか
249240:2008/05/10(土) 06:32:41 ID:???
>>246
再びご指摘有難う御座います。
ログを確かめたらDocomoとWillcomが言語環境がjaではありませんでした。
ロボットもja環境が混ざっている物はアクセスがあったので以下の設定にしてみました。

SetEnvif Accept-Language "ja" Accept_Langage_ja
SetEnvIf User-Agent "Googlebot" shutout
SetEnvIf User-Agent "Slurp" shutout
SetEnvIf User-Agent "msnbot" shutout
SetEnvIf User-Agent "spider" shutout
SetEnvIf User-Agent "Iria/1.07a" shutout
Order Allow,Deny
Allow from env=Accept_Langage_ja
Allow from env=携帯各社のホスト、海外扱いになる国内ISP
Deny from 弾きたいIP、海外・公共機関・企業ドメイン
Deny from env=shutout

ここでふと思ったのですが、言語環境が不明の物と日本語環境の両方を許可する事は出来るのでしょうか?
それが出来れば携帯ホストの指定部分が無くなります。
解析ログでは不明の部分はnot setとなっていたのですが…。
250edry(えどりぃ):2008/05/10(土) 09:50:25 ID:???
>>249
> 言語環境が不明の物と日本語環境の両方を許可する事は出来るのでしょうか?
不明というのはヘッダーフィールドが無いか、あっても値が空の場合だと思いますが、
そういった値のないものをマッチさせたいなら、次のように書きます。
SetEnvif Accept-Language "^$" Accept_Langage_ja
"^$" のダブルクォートで囲まれた部分は正規表現です。

正規表現のススメ
http://www.ne.jp/asahi/futohen/sankaku/h082.htm


SetEnvIf ディレクティブ
http://httpd.apache.org/docs/1.3/mod/mod_setenvif.html#setenvif
〉構文: SetEnvIf attribute regex env-variable[=value] [env-variable[=value]] ...

SetEnvif ディレクチィブの構文で regex のところは正規表現です。
attribute のところが属性で、HTTPリクエストのヘッダーのフィールド名だとか
RFC 2616で規定されているものを指定するわけです。(User-Agent とか Referer など)
ハイパーテキスト転送プロトコル -- HTTP/1.1
http://www.studyinghttp.net/rfc_ja/rfc2616


このスレもそうですが、どこかで見たものをそのまま使うのは無理があるので、
各ディレクティブの基本的な使い方はドキュメントで確かめるのが吉。

Apache(1.3) ディレクティブ
http://httpd.apache.org/docs/1.3/mod/directives.html
Apache のディレクティブの解説に使われる用語
http://httpd.apache.org/docs/1.3/mod/directive-dict.html
251Name_Not_Found:2008/05/10(土) 09:57:53 ID:???
>>250
>各ディレクティブの基本的な使い方はドキュメントで確かめるのが吉。
それをやるのがイヤだから、このスレで質(ry
252Name_Not_Found:2008/05/10(土) 12:16:22 ID:???
質問です。
直リンクを禁止し、リファラAとホストBのアクセスを禁止したいのですが、
リファラAは禁止され、ホストBは許可されてしまいます。
どうすればいいのでしょうか?

SetEnvIf Referer "^http://example\.jp/" ref_ok
SetEnvIf Referer "^$" ref_ok
<Files ~ "\.(gif|jpe?g|png|php|lzh|zip)$">
order deny,allow
deny from all
allow from env=ref_ok
</Files>
SetEnvIf Referer "http://A.net" dame1
order allow,deny
allow from all
deny from B.net
deny from env=dame1
253Name_Not_Found:2008/05/10(土) 13:00:02 ID:???
>>252
下から3行目で
allow from all
ってやってるからじゃね?
254252:2008/05/10(土) 22:06:04 ID:???
>>253
ご教示ありがとうございます。
下から3〜4行目を削除して様子を見てみます。
255edry(えどりぃ):2008/05/10(土) 22:10:01 ID:???
>>248
質問の趣旨がわからないのですが、"何が"認識しないのか主語ほしいです。
自分で書いた PHP のお話ですかね?

あと、Wikipedia の例えですが、それは推測?
実際にその .htaccess を自分で試した結果ですか?


何かしら答えを求めているとは思うのですが、
その方向が明後日の方を向いていると、どつぼにハマる。

何かうまくいかないことがあるなら、次の情報を書くと吉かも。
1. 環境
2. やったことの手順
3. 期待していた動作
4. 実際の動作
256Name_Not_Found:2008/05/11(日) 04:50:40 ID:???
>>255
趣旨がわからないっつーかお前が日本語読めないだけじゃない?
クエリに/が含まれている場合、
文字の場合はディレクトリではなく文字として認識させたいけど、
ディレクトリとして認識されてしまうってことだろ
257Name_Not_Found:2008/05/11(日) 05:06:38 ID:???
すごく初歩的な質問になってしまうのですが、教えて下さい。
.htaccessのファイルをアップロードしたのですが、「アップロード完了」という表示は出てもホスト側のファイル一覧に表示されません。
「.で始まるファイルを表示」のチェックも入れており、ファイル名に関してもひととおり調べて、
アップロードしてから「.htaccess」とファイル名変更をしたりしてみても変更したとたんに表示されなくなってしまいます。
ちなみにロボ避け目的のみで文面はほぼ支援サイトのコピー、鯖は忍者でFTPソフトはFFFTPを使っています。
しばらく調べてみたのですが.htaccessに無知なのもありわかりませんでした。できれば教えてくださいorz
258edry(えどりぃ):2008/05/11(日) 10:00:13 ID:???
>>257
つ【よくある質問 FAQ (忍者ホームページ)】

http://www.ninja.co.jp/faq/a/41/
> htaccessのアクセス制限には対応しておりません。

http://www.ninja.co.jp/faq/a/44/
> アクセス制限及びアクセス禁止を行う事は出来ません。

robots.txt 使えるかわかんないけど、使えても効果はないかも。
259Name_Not_Found:2008/05/11(日) 13:50:10 ID:???
>>248
RewriteRuleってやつが/って文字をディレクトリの区切りであると認識するところの前に割って入って
別のところをさすように書き換えてるから/が文字のままで扱われるですぅ。
260Name_Not_Found:2008/05/11(日) 13:53:09 ID:???
>>253
違うですぅ。
けど、妙にOrder, Allow, Denyがお気に入りの方がいらっしゃるから
そちらに任せて見てるだけにするですぅw
261252:2008/05/11(日) 16:11:53 ID:???
>>253
残念ながら、うまくいきませんでした。

>>260
解決法をご存知でしたら、どうかお知恵をお貸しください。
ホストBが掲示板に四六時中数分おきに書き込もうとしており、大変困っています。
262Name_Not_Found:2008/05/11(日) 17:39:34 ID:???
>>260
しったかしないで、ちゃんと教えてあげて欲しいですぅw
263Name_Not_Found:2008/05/11(日) 17:39:44 ID:???
>>248
「例えば」の wikipedia(MediaWiki) の場合は

> OS/2の"/"はディレクトリではなく文字なわけですが、どうやってただの文字であると認識させているのでしょうか

REQUEST_URI なり PATH_INFO なりを解体して解釈してるだけなので .htaccess は
あまり関係なさそうです。includes/WebRequest.php を眺めた限りでは。
264Name_Not_Found:2008/05/11(日) 18:30:50 ID:???
SetEnvIf Referer "許可したいホスト" ref_ok
SetEnvIf Referer "禁止したいホスト" !ref_ok
order deny,allow
deny from all
allow from env=ref_ok

みたいな。
265Name_Not_Found:2008/05/11(日) 18:31:12 ID:???
>>264>>252へ。自信ないけど
266Name_Not_Found:2008/05/11(日) 20:00:25 ID:???
>>258
ありがとう!よくある質問は見たつもりだったけど読み飛ばしてしまってたみたいだ
調べ足りなくてすみませんでした
267edry(えどりぃ):2008/05/11(日) 21:23:38 ID:???
あるかなって思って探したらあった。
やっぱ黒魔術だけあってカオスしてたw

WEBプログラミング@2ch掲示板
【Apache】mod_rewriteについて語るスレ
http://pc11.2ch.net/test/read.cgi/php/1023791370/

  1 :nobodyさん:02/06/11 19:29
287 :age:2008/04/26(土) 13:59:43

6年
268edry(えどりぃ):2008/05/11(日) 22:08:14 ID:???
>>252-254
実はこのやりとりを見て、ハマっていく姿がおもしろいなって感じてて、
ちょっと罪悪感があったのだけれど、>>261 の切実な訴えでさらにお(ry

必死な姿はおもしろい(のを見ていたい)から放置されちゃうので、
気楽な感じで Deny しちゃてくださいな。

>>252 でホストBを禁止できない理由として考えられるのは、
> deny from B.net
ここのホスト指定の部分が間違っていることが可能性として高いと思われ。

1. HOST記述内容がアクセス禁止したいホストと違う(誤字)。
2. HOSTの指定の仕方を勘違いしている。

Allow ディレクティブ(引数はDenyも同じ)
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#allow

上記にホストを指定する例がいくつかありますが、ドメイン名 (の一部)の説明
にもあるように"各部分が完全に合うものだけに適用される"ので、マッチさせる
ために適切な記述であるか確認すると吉かも。

具体的な例を示すと「aaa.bbb.example.com」を禁止にしたい場合、
deny from aaa.bbb.example.com
deny from .bbb.example.com
deny from .example.com
deny from .com
これらの記述で禁止にできて、下に行くほど関係ないホストも禁止することになる。

deny from ple.com
これは「aaa.bbb.example.com」にマッチしない。
269Name_Not_Found:2008/05/11(日) 22:13:18 ID:???
あるページへの特定のリファラを含むアクセスを別のあるページにとばすのはどうしたら良いんでしょうか。
270edry(えどりぃ):2008/05/11(日) 22:26:44 ID:???
>>264-265
リファラの方はOKらしいのでハメチャダメ。
直リンクの方もOKなんでしょう。

> リファラAとホストBのアクセスを禁止したいのですが、
> リファラAは禁止され、ホストBは許可されてしまいます。
> どうすればいいのでしょうか?
質問の趣旨はこっちかと。
271Name_Not_Found:2008/05/12(月) 13:44:40 ID:???
>>261
掲示板がphpなら <Files ~ "\.(gif|jpe?g|png|php|lzh|zip)$"> に php が紛れているのが
ものすごく気になるですぅ。
272edry(えどりぃ):2008/05/12(月) 15:13:21 ID:???
>>271
ほんとだ。マージで Files の方が後なのでそっちで許可しちゃうね。
http://httpd.apache.org/docs/2.2/sections.html#mergin


元:<Files ~ "\.(gif|jpe?g|png|php|lzh|zip)$">
試:<Files ~ "\.(gif|jpe?g|png|lzh|zip)$">

>>261
試しの方にして拒否できるようになれば、それが答え。
273Name_Not_Found:2008/05/12(月) 17:17:26 ID:???
>>252の中の
SetEnvIf Referer "^http://example\.jp/" ref_ok
SetEnvIf Referer "^$" ref_ok
<Files ~ "\.(gif|jpe?g|png|php|lzh|zip)$">
order deny,allow
deny from all
allow from env=ref_ok
</Files>

SetEnvIf Referer "http://A.net" dame1
order allow,deny
allow from all
deny from env=dame1
があっちで立てればこっちで立たずの条件ですから
まさか上の条件で素通りしてるとは2chのサーバのような
大雑把な設定をしてるレベルでは気づけなかったりするですぅ。

べっ別にあっちで立てればこっちで立たずって状態は紅のあいつと同じ人を
ミーディアムにしてるからって事ではないですぅw
274Name_Not_Found:2008/05/12(月) 17:33:52 ID:???
くだらない事を思いついたせいで肝心な事を書き忘れたですぅ。
.htaccessの中で<Filesとか<FilesMatchとか<Limitとか<LimitExpectを使ったときは
それらの中外すべての場所にdeny from B.netと書いてしまえば確実ですぅ。
275252:2008/05/12(月) 20:07:52 ID:???
すみません、自己解決しました。

少し気になったので、該当のIPアドレスをWhoisにかけてみたところ、
ホスト名と一致しませんでした。
今まではホスト名で弾くようにしていたのをIPアドレスに変え、
掲示板のあるディレクトリに別の.htaccessファイルを置いてみました。
現在のところ、弾くことに成功しています。

元のファイルも皆様のアドバイスを元に改良してみるつもりです。
ありがとうございました。
276edry(えどりぃ):2008/05/12(月) 22:58:40 ID:???
>>275
こんにゃろ。最後まで面白いじゃねーかw

いろいろとワクワクすること思いついたので、
もし、試してもらえるならやってほしいことあるー
277edry(えどりぃ):2008/05/13(火) 07:40:51 ID:???
>>269
CGIに任せてやるのもひとつ。
http://faq.sakuratan.com/wiki/wiki.cgi?%2ehtaccess#i21


mod_rewrite が使える環境ならそれもひとつ。
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
http://japache.infoscience.co.jp/rewriteguide/#ToC42

使える環境か試すなら、適当なディレクトリ(test)作って .htaccess に
──────────
RewriteEngine on
RewriteRule .* black_magic_OKw [R]

──────────
http://example.com/test/ でアクセスして、URL書き換われば黒魔術OKw
278Name_Not_Found:2008/05/13(火) 11:03:39 ID:???
すみません、ご教授ください


あるIPアドレス(レンジ)からの特定ページへのアクセスを他のページへとリダイレクトさせたいと考えています。

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.45\.67\.8
RewriteRule hoge.cgi http://example.com/hage.cgi

上記の^123\.45\.67\.8の部分を123.45.67.0/24のように範囲指定する場合、
これはそのまま
^123\.45\.67\.0/24
と書いて大丈夫なのでしょうか?
279278:2008/05/13(火) 11:59:52 ID:???
自己解決しました、ども
280Name_Not_Found:2008/05/13(火) 12:15:36 ID:YxK98GNV
>>279
自己解決したのならその内容を書いていけよ。
そうすれは同じ質問をする人も減るだろ?
それとも自分だけがよければいいの?
281Name_Not_Found:2008/05/13(火) 18:09:59 ID:???
今に始まったことじゃないス
質問者は大抵そんなもんス
282Name_Not_Found:2008/05/14(水) 17:27:43 ID:???
質問させてください。
BASIC認証のユーザーごとに違うページへリダイレクトさせたいのですが、
.htaccessだけで実現可能でしょうか?

ドキュメントルート、/の配下に.htaccessを置き
BASIC認証USERがtomで認証OKの場合は、/tom/tomindex.htmlへ
BASIC認証USERがjohnで認証OKの場合は、/john/johnindex.htmlへ

よろしくお願いいたします。
283Name_Not_Found:2008/05/14(水) 17:29:13 ID:RvbsSWVp
すいませんageます
284Name_Not_Found:2008/05/14(水) 17:40:43 ID:???
RewriteCond ででけへんのかな?
285Name_Not_Found:2008/05/14(水) 19:56:59 ID:RvbsSWVp
>>284
ありがとうございました!できました。

RewriteEngine On
RewriteCond %{REMOTE_USER} tom
RewriteRule ^$ http://www.example.com/tom/tomindex.html [R,L]
RewriteCond %{REMOTE_USER} john
RewriteRule ^$ http://www.example.com/john/johnindex.html [R,L]
286Name_Not_Found:2008/05/14(水) 20:21:13 ID:???
>>283
あ?ほんとに分かってんのか?
「はい」ってのはな「はい、わかりました」を略して「はい」なんだよ
頭だけでわかったって言わねんだぞ?学校の勉強じゃねえんだから
社会では?お?実際に出来て初めて「わかった」言うんだ
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ
お?聴こえてんのかよコラ?あ?
やる気がねえんだったら来なくていいぞ?
お前ナメてんだろコラ?
仕事中だと思って優しく口で言ってりゃ調子に乗ってんじゃねえぞコラ?お?
外で遭ってたら今頃カタワだぞお前?とっくに?あ?
287Name_Not_Found:2008/05/15(木) 02:38:17 ID:???
質問です。

http://hoge.example.com/からのアクセスのみ
http://me.example.jp/idou.html というページに飛ばし、
それ以外のリファラ/リファラを吐き出さないアクセスは
http://me.example.jp/という通常のインデックスに進ませる
という方法はありますか?(飛ばし先は逆でもかまいません)

リダイレクトやREFERERで色々調べてみたのですが、
特定のホストやIPからのアクセスを禁止/許可方法はあっても
特定のリファラからのアクセスを振り分ける方法が見つかりませんでした。
.htaccessの許容範囲外ということでしたら誘導お願いします
288Name_Not_Found:2008/05/15(木) 03:08:10 ID:???
調べたなら山程あるし、過去レスくらい嫁
289Name_Not_Found:2008/05/15(木) 03:30:45 ID:???
>>277
そんな瑣末なことのためにCGIを動かすと、
セッション数が増えたときに自分の首を絞めることになりますよ

リンク先のCGIで〜というの消しておいた方がいいと思います、かなり真剣に

>>287
RewriteEngine on
RewriteCond %{HTTP_REFERER} example\.com
RewriteRule ^.*$ http://me.example.jp/idou.html [R,L]

テンプレやスレ内の過去ログくらいは読みましょう
でないと、これから先も同じ程度のことで壁にぶつかって困るのは自分ですよ?
290Name_Not_Found:2008/05/15(木) 07:47:26 ID:???
>>287
おまい、以前にも同じような質問しただろ?
291Name_Not_Found:2008/05/15(木) 11:00:36 ID:???
リライトさえも使えない時でもErrorDocument 403が使えればまだ身動きが取れるですぅw
292edry(えどりぃ):2008/05/15(木) 15:39:07 ID:???
>>289
結婚する前はあなたがそんな亭主関白だとは思わなかった...という妻の気持ちと、
お父さんに分ってもらえなくていい僕の人生は僕が決める...という息子の気持ちを、
足して零で割った気持ちです。
そんな瑣末な理由でリンク先のwiki消すと Deny されちゃうので止めときます。お気楽に。

>>287
このスレでも過去に同じような質問があったので、うまい例がないか私も探しましたが
いい情報は見つかりませんでした。汎用的な例を書こうかと思っているのですが具体的
な用途がなにかというので悩みました。禁止して飛ばすのと、振り分けは違いますし。
差し支えなければ、どういった意図でそれをやりたいのか知りたいです。

>>288 >>160  >>290 >>165 デジャブw

>>291 ねこみみフード!!

>>269
アクセス禁止して飛ばす目的で白魔法?もひとつ。
リファラに関係なくほかで Deny したものにも影響するけど、
その目的のみで Deny するとか、特定のディレクトリだけで使うとかならありかも。
──────────
SetEnvif Referer "^http://example\.com" telepo
deny from env=telepo
ErrorDocument 403 http://example.net/
# リファラが http://example.com で始まるものをアクセス禁止にして example.net へ飛ばす。
──────────

http://httpd.apache.org/docs/2.2/mod/mod_setenvif.html#setenvif
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#deny
http://httpd.apache.org/docs/2.2/mod/core.html#errordocument
http://www.studyinghttp.net/rfc_ja/rfc2616#Sec10.4.4
293Name_Not_Found:2008/05/15(木) 19:57:18 ID:???
スルーされてる内が華っていい加減気付けんかね。
294Name_Not_Found:2008/05/15(木) 23:08:19 ID:???
>289の発言の真意がわからなかったが、whoisすると意味がわかったような。

wikiを誰が書いてるかなんてことがわかるのか。
Wikipediaではそういうこともわかるらしいが。
295Name_Not_Found:2008/05/15(木) 23:53:20 ID:???
>>294
Wiki側でアクセス制限していない限り、
Proxy経由でアクセスすれば誰が編集したか実際には分からないですよ
296Name_Not_Found:2008/05/17(土) 10:48:46 ID:Ys1AkM/Q
ホームページビルダーで制作していますが、方言に音声をリンクしたい
のですが、ウインドーメディアプレーの画面が出ないで音声が出るように
する方法を教えていただけないでしょうか。
297Name_Not_Found:2008/05/17(土) 11:16:53 ID:???
>>296
flashプレイヤーを使うのが楽なんでない?
ttp://phpspot.org/blog/archives/2008/04/flashmp3.html
298Name_Not_Found:2008/05/17(土) 11:29:48 ID:???
ま。スレ違いの上に板違い。
背伸びせずまずはうぃんどうずをもう少し勉強してからおいで・・・
ソフトの使いかたをここできいてどうすんでしょ・・・・
299Name_Not_Found:2008/05/17(土) 11:39:22 ID:???
ビルダーで作った物がWebページと勘違いしてる馬鹿が多すぎる
あんなもの単なるビルダーのデータでしかない
http://validator.w3.org/
http://htmllint.itc.keio.ac.jp/htmllint/htmllint.html
でビルダーデータを調べてもらうと分かるはずだが
300Name_Not_Found:2008/05/17(土) 12:04:20 ID:Ys1AkM/Q
いろいろご指導いただき感謝します。
しかし、私の能力ではビルダーデーターを開いてみましたが
解決に至りません。また、フラッシュプレーヤーも以前に少し
勉強したのですが・・・
具体的に見ていただくと
http://www.geocities.jp/kounit/の石黒の方言の最初の「あ」の
「あいどり」にリンクを掛けたのですが、ごらんのようなメディア
プレーヤーの画面が出てしまうのです。
この画面をだしたくないのですが、簡単方法はないものでしょうか。
すれ違い、勉強足らずは承知の上での質問ですが、よろしくご指導
ください。
301Name_Not_Found:2008/05/17(土) 12:49:04 ID:y9ifJci3
特定のファイルを拡張子抜きで表示させる事はできますか?
/watch.html?f=12345

/watch/12345
のような形にしたいのですが……

<Files ~ "^(watch)$">
ForceType application/x-httpd-php
</Files>
上記を試してみたところ上手くいきましたが、/watchというファイルを.phpとして動かすのではなく、
/watch.htmlを/watchという形で表示させる方法を探しています。
どなたかご存知の方がおられましたらご教授願います。
302Name_Not_Found:2008/05/17(土) 12:50:51 ID:???
AddType application/octet-stream .mp3 .wav
とかそういう方向の話のような気がするですぅ。
これでメディアプレーヤーが出なくなってダウンロードさせられるように変わるですぅ。
303Name_Not_Found:2008/05/17(土) 12:53:54 ID:???
>>301
それならapplication/x-httpd-phpのところにtext/htmlと書けばいい気がするですぅ。
304Name_Not_Found:2008/05/17(土) 13:03:04 ID:???
あと、>>303にAcceptPathInfo Onも忘れちゃいけない気がするですっ。
305Name_Not_Found:2008/05/17(土) 14:04:00 ID:y9ifJci3
>>303-304
お答えいただき有難うございます。

先ほど下記のように試してみたところ、予定していた動作をさせることに成功しました。
■.htaccess
AddType application/x-httpd-php .htm .html
<Files watch>
Options +MultiViews
</Files>
■/watch.html
<?php
$path = getenv("PATH_INFO");
$variable = split("/",$path);
var_dump($variable);
?>
■/watch/h/o/g/e/にアクセス
array(5) { [0]=> string(0) "" [1]=> string(1) "h" [2]=> string(1) "o" [3]=> string(1) "g" [4]=> string(1) "e" }

重ねて質問で申し訳ありませんが、
MultiViewsは拡張子を省いて表示させるためのものではないと何処かで見た覚えがあります。
実際的に不都合はあるのでしょうか?
また、AcceptPathInfo Onを<Files watch>に入れるとエラーが起こり、ファイルが表示できなくなってしまいます。
.htaccessをどのようにすればいいのかもご指導いただければと思います。
306Name_Not_Found:2008/05/17(土) 14:22:41 ID:???
いつからここはなんでも相談室になったのだ
307edry(えどりぃ):2008/05/17(土) 14:51:08 ID:???
>>300
素敵なサイトだ。

リンクの target を self に変えるとうまくいくかもしれません。

元:<a href="aidori.mp3" target="_parent">あえどり</a>
試:<a href="aidori.mp3" target="_self">あえどり</a>

target=target - ターゲット指定
http://www.tohoho-web.com/html/attr/target.htm


けど、スレ違いの質問に回答するのはよくないことなのね。
だから、失礼を承知の上で質問してくるのは荒らしと同じだし、
それに回答する私も同等だからヤメロゴラァって言われちゃうの。
誘導ついでに答えたけど、今後はちゃんと自分で調べることや
適切なスレッドでそのスレッドに沿った質問をしてくださいな。

使用上のお約束
http://info.2ch.net/guide/faq.html#B0

↑とりあえずお約束は読もう、でスレッドとしては今後質問あるなら下記かな。

Webサイト制作初心者用質問スレ Part 197
http://pc11.2ch.net/test/read.cgi/hp/1210081559/l50

ホームページビルダースレッドその34♪(・ω・)ノ
http://pc11.2ch.net/test/read.cgi/hp/1207727967/l50
308Name_Not_Found:2008/05/17(土) 15:21:28 ID:Ys1AkM/Q
>>307
ご指導ありがとうございました。お叱りはごもっとです。


309Name_Not_Found:2008/05/17(土) 15:30:17 ID:???
>>306
答えてくれる人たちが優しいんだよ〜

折を見て誘導支援はしてるけどねー
と思ったら、上で回答されてる方めちゃ紳士
310Name_Not_Found:2008/05/17(土) 16:21:08 ID:???
優しさとお節介を混同してるアホが大杉
311Name_Not_Found:2008/05/17(土) 17:55:52 ID:???
>>305
単なるHTMLファイルを.htmlサフィックスなしでアクセスと勘違いしていたですぅorz
リライトできるならRewriteCondでリライトしてしまうのが簡単な気がするですぅ。
RewriteCond watch(/.*)? watch.php$1
とかで大丈夫じゃないかと思うですけど、最近はチェックしてから投下するのが
面倒ですから正常に動くかは知らんですぅw
AcceptPathInfoが使えない時は無視して構わないですぅ。
MultiViewsは画像は表示できるかとかどこの言語なら読めるかとか
ブラウザが送ってきた情報を元にもっとも最適な内容を返すものですぅ。
ブラウザによってエラーが返ることもあるですぅ。
312Name_Not_Found:2008/05/17(土) 18:01:04 ID:???
>>307
無理やり.htaccessの方へ引っ張り込む訳じゃないなら
<object>とか<embed>で埋め込むくらいの回答をしないと
大きな変化は無い気がするですぅ。
313Name_Not_Found:2008/05/17(土) 22:57:55 ID:y9ifJci3
>>311
色々と試行錯誤してみましたが、最終的には以下の形で落ち着きました。
■.htaccess
AddType application/x-httpd-php .html
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/dir/watch/(.*)?
RewriteRule watch(/.*)? watch.html$1

今のところ特に問題なく動いております。
分かり易く親切な回答を有難うございました。
今後もお世話になることがあるかもしれませんが、何卒宜しく御願い致します。
314edry(えどりぃ):2008/05/17(土) 23:54:59 ID:???
>>312
じおしてぃ〜ず。なのでどう頑張ってもこのスレでは無理だったw

MP3ファイルのリンクがあるだけのページなら、
次の一行追加する方がお気楽だった。

<script type="text/javascript" src="http://mediaplayer.yahoo.com/js"></script>
315Name_Not_Found:2008/05/22(木) 18:58:55 ID:OcXaBkHH
質問です。いろいろなサイトで調べたのですが(みけねこ、まとめサイト)何が間違ってるのかさっぱりわからないので教えてください。よろしくお願いします。鯖はろりぽです。.htaccessを604で設定しています。(鯖側の指定)
ソースは
SetEnvIf User-Agent "Googlebot" badrobot
SetEnvIf User-Agent "NaverBot" badrobot
Order Allow,Deny
Allow from all
deny from env=badrobot
#Google
deny from 216.239.32.0/19
#Infoseek
deny from 211.13.222.
#Goo・Yahoo
deny from 209.131.32.0/19
#GOO(NTT-X)
deny from 210.165.39.
#TOCC・MSN
deny from .inktomi.com
deny from 210.172.228.
#toukyoku
deny from .go.jp
deny from .co.jp
deny from .ed.jp
deny from .ac.jp  
deny from 130.90.  
deny from 200.100.
#docomo
deny from 210.153.84.0/24
と、長すぎるためソースは一部削除記述していますが、このような形で記述しています。いろいろ調べて記述したのですが、なんどやってみても500エラーになってしまいます。ご指導よろしくお願いいたします。
316Name_Not_Found:2008/05/22(木) 22:18:55 ID:???
>>315
最後の行で改行してます?
317Name_Not_Found:2008/05/22(木) 23:15:28 ID:???
>>315
こういうときは、全部コメントアウトして、上から順番に外していけばわかるんじゃね?

ま、そういうデバッグをやりたくないから、ここに来るんだろうけどw
318edry(えどりぃ):2008/05/23(金) 10:32:25 ID:???
>>315
.htaccess 消した状態でも500なら笑える。

> deny from .ac.jp  
> deny from 130.90.  
ケツになんかあるよ。

> 長すぎるためソースは一部削除記述していますが
その削除部分に問題があるとお手上げ。
長いなら分けて書けばいいよ。

とりあえず、ケツのスペースもいじらずにlocalhostとさくらで試したけど、
500エラーにはならなかったよ。


1. .htaccess 無しで問題が無いか確認。
2. .htaccess 有りで上から一行ずつ追加して確認。

この順で試せば、切り分けできるかな。
319315です:2008/05/23(金) 18:25:57 ID:mEwsvACP
レス下さった皆さんありがとうございます
>>316
改行はいれてあります
>>317
みません、私の書き方が悪かったんですね
コメントアウトして、上から削除していっても原因がわかりませんでした
>>318
.htaccessをない状態では問題ありませんでした。
スペースが問題なんでしょうか?
とりあえず、下にソース全部載せます

SetEnvIf User-Agent "InfoSeek Sidewinder" shutout
SetEnvIf User-Agent "Scooter" shoutout
SetEnvIf User-Agent "Baiduspider" shutout
SetEnvIf User-Agent "Ninja" shutout
SetEnvIfNoCase User-Agent "msnbot" shutout
SetEnvIf User-Agent "Googlebot" shutout
SetEnvIf User-Agent "Googlebot-Image" shutout
SetEnvIf User-Agent "Slurp" shutout
SetEnvIfNoCase User-Agent "Yahoo" shutout
SetEnvIf User-Agent "inktomi" shutout
SetEnvIf User-Agent "moget" shutout
SetEnvIf User-Agent "ichiro" shutout
SetEnvIf User-Agent "ia_archiver" shutout
SetEnvIfNoCase User-Agent "MarkAgent" shutout
SetEnvIfNoCase User-Agent "marsflag" shutout
SetEnvIf Referer "http://www.google.com/" shutout
SetEnvIf Referer "http://search.yahoo.com/" shutout
SetEnvIf Referer "http://help.yahoo.com/" shutout
SetEnvIf Referer "http://search.msn.com/" shutout

320315:2008/05/23(金) 18:27:07 ID:???
319の続き

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

deny from 66.249.64.0/19
deny from 72.30.0.0/16
deny from 74.6.0.0/16
deny from .go.jp
deny from .co.jp
deny from .ac.jp
deny from 130.90.
deny from 200.100.
#docomo
deny from 210.153.84.0/24
deny from 210.136.161.0/24
deny from 210.153.86.0/24
deny from 210.153.87.0/24
321315です:2008/05/23(金) 18:30:46 ID:mEwsvACP
#AU
deny from 210.169.40.0/24
deny from 210.196.3.192/26
deny from 210.196.5.192/26
deny from 210.230.128.0/24
deny from 210.230.141.192/26
deny from 210.234.105.32/29
deny from 210.234.108.64/26
deny from 210.251.1.192/26
deny from 210.251.2.0/27
deny from 211.5.1.0/24
deny from 211.5.2.128/25
deny from 211.5.7.0/24
deny from 218.222.1.0/24
deny from 61.117.0.0/24
deny from 61.117.1.0/24
deny from 61.117.2.0/26
deny from 61.202.3.0/24
deny from 219.108.158.0/26
deny from 219.125.148.0/24
deny from 222.5.63.0/24
deny from 222.7.56.0/24
deny from 222.5.62.128/25
deny from 222.7.57.0/24
deny from 59.135.38.128/25
deny from 219.108.157.0/25
deny from 219.125.151.128/25
deny from 219.125.145.0/25
deny from 121.111.231.0/25
deny from 121.111.231.160/27
deny from 121.111.227.0/25
322315です:2008/05/23(金) 18:31:19 ID:mEwsvACP
#softbank
deny from 123.108.236.0/24
deny from 123.108.237.0/27
deny from 123.108.236.0/24
deny from 123.108.237.0/27
deny from 202.179.204.0/24
deny from 202.253.96.224/27
deny from 210.146.7.192/26
deny from 210.146.60.192/26
deny from 210.151.9.128/26
deny from 210.169.130.112/28
deny from 210.175.1.128/25
deny from 210.228.189.0/24
deny from 211.8.159.128/25

以上です。
SetEnvIf User-Agent "InfoSeek Sidewinder" shutout
からの時点でエラーになってしまいます。
SetEnvIf User-Agent "InfoSeek Sidewinder" shutout
からSetEnvIf Referer "http://search.msn.com/" shutout
までを削除してもエラーになってしまいます。

なにがなんだか・・・・
ロリポは設定できることになってはいるのですが・・・

ご助言おねがいします
323315です:2008/05/23(金) 18:31:41 ID:mEwsvACP
#softbank
deny from 123.108.236.0/24
deny from 123.108.237.0/27
deny from 123.108.236.0/24
deny from 123.108.237.0/27
deny from 202.179.204.0/24
deny from 202.253.96.224/27
deny from 210.146.7.192/26
deny from 210.146.60.192/26
deny from 210.151.9.128/26
deny from 210.169.130.112/28
deny from 210.175.1.128/25
deny from 210.228.189.0/24
deny from 211.8.159.128/25

以上です。
SetEnvIf User-Agent "InfoSeek Sidewinder" shutout
からの時点でエラーになってしまいます。
SetEnvIf User-Agent "InfoSeek Sidewinder" shutout
からSetEnvIf Referer "http://search.msn.com/" shutout
までを削除してもエラーになってしまいます。

なにがなんだか・・・・
ロリポは設定できることになってはいるのですが・・・

ご助言おねがいします
324315です:2008/05/23(金) 18:32:34 ID:mEwsvACP
>>323すみませんonz連投してしまいました
325Name_Not_Found:2008/05/23(金) 18:46:46 ID:???
なんでまだ誰も尋ねていないんですか><

>>315
・改行コードはLFですか? (はい・いいえ・よくわかんないんです)
・(はいLFです、と言えない場合)アスキーモードで転送してますか? (はい・いいえ)
# LF改行にしてからサーバに載せるか、アスキーモードで転送する。

これと>>316の確認が先のような。
326Name_Not_Found:2008/05/23(金) 19:10:38 ID:???
>なんでまだ誰も尋ねていないんですか><
超初心者の面倒なんかみたくないから
327Name_Not_Found:2008/05/23(金) 20:05:22 ID:???

これを正しくして下さい お願いします

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(hoge\.co\.jp)(:80)?
RewriteRule ^(.*) http://www.hoge.co.jp/$1 [R=301,L]
RewriteEngine on
RewriteCond %{REQUEST_URI} /index.html
RewriteRule ^(.*)index.html http://www.hoge.co.jp/$1 [R=301,L]
328Name_Not_Found:2008/05/23(金) 21:04:14 ID:???
全然関係無いと思うんだが
コメントだけの行を入れてると500エラー出た記憶があるんだが。
コメントは何か書いて、その右側に入れないとダメだった様な。
多分間違ってると思うけど、試す気があったら試してみてくれ。
329Name_Not_Found:2008/05/23(金) 21:07:01 ID:???
鯖側で許可されてないディレクティブ入れてると500なる
330315です:2008/05/23(金) 21:22:51 ID:mEwsvACP
>>325
回答ありがとうございます。
アスキーモードで・・・という件ですが、私はFTPを使用せずに
直接クリエイトファイルで作成しているので・・・・なんとも
331Name_Not_Found:2008/05/23(金) 22:38:12 ID:???
>>319
>コメントアウトして、上から削除していっても原因がわかりませんでした
うそつけwww
おまえ、何もしてないだろwww
332Name_Not_Found:2008/05/24(土) 00:27:42 ID:npTdX2xB
アホな質問かもしれませんがどなたか教えて下さい。
下のようにhtaccessで「Aフォルダ」より下の階層全てにパスワードをかけてるんですが
「Aフォルダ内」にある「Bフォルダ」だけ例外にしてパスワードなしで
アクセスするにはどうしたらいいのでしょうか?

AuthUserFile /home/A/.htpasswd
AuthGroupFile /dev/null
AuthName "Secret Area"
AuthType Basic

require valid-user

<Files ~ "^.(htpasswd|htaccess)$">
deny from all
</Files>
333Name_Not_Found:2008/05/24(土) 00:29:23 ID:???
>>332
アホでも過去スレくらい読もうねw
334Name_Not_Found:2008/05/24(土) 00:35:51 ID:npTdX2xB
>>333
過去ログ膨大すぎて読めません
読んだとしてもHTMLぐらいしかわからないので
どの書き込みがそれを指しているのかわからないと思います
せめて何かヒントだけでもお願いします
335Name_Not_Found:2008/05/24(土) 02:42:46 ID:???
 ヒント
1 読まない
2 調べない
3 試さない
4 理解力が足りない
5 人を利用することしか頭にない
336332:2008/05/24(土) 03:03:54 ID:GsN7pReL
ニュー速でマルチしまくったらすぐ答えてくれたぞ
寂れた専門板のクズはやっぱり使い物にならんな
さっさと家族共々自殺しろカス共w
337Name_Not_Found:2008/05/24(土) 03:14:49 ID:???
    .,,,、                                      _
 .,-'ニil゙,~ヽ,,,,、    〔ヽ,,,,,_.v-,,、   ,,,_,,,,―〜.              / ノ_
 .|. ゙ヽ‐`,,-ー,`'i、 ,,,,ノ .,,- l!ソ、`i   ‘ー,,,,,--7             ,,,/ ,,,y∠-,,、
┌″ .il二,/ |  ゙'┐ .l゙  ゙l 'ミ"'゙   .,/ソ'″       ,,-‐''〜 、  ゙ーi、 .,l゙゙,!、,,,,,,,丿
: ‘'''''i、 ‘ミー--‐′  l /,,--┘ ゙l   l゙.l゙        く,,_,,/゛゙,! ゙l   / ,l゙//
   ヽ ゙i     / l.くニ-  `'i、  ゙l,`―ーー'''"''',     ,,,,,/ ,ノ   l゙ .,i´l,゙'―¬'i、
    ゙-ノ     `ー'゜ `ー-‐゙'''゙   ゙''―――''"     `'''ー''"    ヽ┘ `''―-ー'゙
338edry(えどりぃ):2008/05/24(土) 12:46:56 ID:???
>>315
>>319-322 のやつlocalhostで試したら500エラー出た。

localhost = Apache/2.2.8 (Ubuntu)
.htaccess: order takes one argument, 'allow,deny', 'deny,allow', or 'mutual-failure'

> order allow, deny
またスペースw
ちゅうか >>315 と書き方違うじゃんw

とりあえず、denyの前のスペースを削除したらエラーは出なくなったよ。
地道に書き方間違っていないか確かめていくのが吉。
339Name_Not_Found:2008/05/24(土) 12:58:33 ID:???
>>338
> 地道に書き方間違っていないか確かめていくのが吉。
それをやりたくないから、このスレに来ているんだと思うぞw
とくに、ずらずらと長い設定を行ってるヤツほどその傾向大
340315です:2008/05/24(土) 14:51:41 ID:dvh/DaQu
>>325
>>328
>>329
>>338
レス下さった皆様、ありがとうございます。
その後、解決できました。本当にありがとうございました!!
341edry(えどりぃ):2008/05/24(土) 15:24:41 ID:???
>>327
「屏風絵の虎が夜な夜な屏風を抜け出して暴れるので退治して欲しい」
と義満が訴えたところ、一休は
「では捕まえますから虎を屏風絵から出して下さい」
と切り返し、義満を感服させた。
http://ja.wikipedia.org/wiki/一休さん

正しいとは...


>>328
#
↑だけでも問題無し。
構文としても無視されるよ。
http://httpd.apache.org/docs/2.2/configuring.html#syntax
http://httpd.apache.org/docs/1.3/configuring.html#syntax


>>339
面倒くさいことやりたくないのは誰にでもあること。
一人でやるよりみんなでやったほうが楽しくもなる。
だから、頼ってきたとしても構わないけどね。

>>336 とか、かわいそうじゃん。
ちゃんと質問してるのに、答えられないからってちゃかすと荒れちゃうし。
このスレって質問するためにあるのに、知ってて当たり前とか自分で調べろ
ってのは >>336 と同じで面倒くさくなって疲れて荒れてるだけだと思う。

無駄だと思うほど気をつかわなくてもいいし、
楽しくなるように書いた方が気楽。
342Name_Not_Found:2008/05/24(土) 16:30:38 ID:???
再質です お願いします
RewriteRule ^(.*) http://www.hoge.co.jp/$1 [R=301,L] にて「www有りを表示」は出来ました
同じ要領で下部に「index.htmlを表示しない」を追記したら失敗しました
「index.htmlを表示しない」にするには、下記をどう直したら良いですか?

<Files ~ "^\.(htaccess|htpasswd)$">
deny from all
</Files>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(hoge\.co\.jp)(:80)?
RewriteRule ^(.*) http://www.hoge.co.jp/$1 [R=301,L]
RewriteEngine on
RewriteCond %{REQUEST_URI} /index.html
RewriteRule ^(.*)index.html http://www.hoge.co.jp/$1 [R=301,L]
343Name_Not_Found:2008/05/25(日) 07:15:27 ID:mKdRgkTO
ttp://srea.jp/fitimg.php
上記サイト「画像リサイズ」からの画像へのアクセスを拒否したいと思い、
アクセスログを調べて該当するIPアドレスを以下のようにdenyへ追加してみたのですが、
アクセス拒否できず、今まで通り画像リサイズ経由で画像へアクセスできてしまいました。

RewriteCond %{REMOTE_ADDR} ^202\.212\.38\.74
または
deny from 202.212.38.74

他のサイトからの画像へのアクセスは許可していますのでそれら設定は生かしたまま、
画像リサイズ経由での画像へのアクセスを、
可能でしたらRewriteの方でアクセス制限したいのですが、
制限できる方法をお教えいただけますでしょうか?

どうぞよろしくお願いいたします。
344Name_Not_Found:2008/05/25(日) 08:15:44 ID:???
>>343
nslookup srea.jp
IPが違うみたいだよ。
345Name_Not_Found:2008/05/25(日) 08:25:11 ID:mKdRgkTO
>>344
上記のリンク先から、サイズ変更したい画像のURLをリンク先の窓に入力すると
サイトの別サーバ?から画像をGETしにくるようなのです
その時のIPアドレスが202.212.38.74=www.srea.jpのようでした

もしよろしければ、実際に上記のリンク先から確認していただければと思います
346Name_Not_Found:2008/05/25(日) 09:19:34 ID:???
こいつ何様
347Name_Not_Found:2008/05/25(日) 10:31:08 ID:???
馬鹿殿様
348edry(えどりぃ):2008/05/25(日) 15:19:55 ID:???
>>345
>>343
> 他のサイトからの画像へのアクセスは許可していますのでそれら設定は生かしたまま、
で上書き許可してしまっている可能性がひとつ。

まずは自分のIPアドレスでも設定して、
Deny がちゃんとできるか確かめてみては?
349edry(えどりぃ):2008/05/25(日) 15:52:13 ID:???
>>342
正しさとは...

何がやりたいのかはよくわかりませんが、
index.html ついてますってのは、$1 で付けてるから。
同じ要領で追記した部分を一旦消して、$1 も消せば期待した結果になりますか?
350edry(えどりぃ):2008/05/25(日) 18:28:30 ID:???
>>342
期待していることを予想して書いてみた。

ドキュメントルートに .htaccess を置くことを想定して、
「wwwなし」のアクセスを「wwwあり」にすることと、
「index.html」や「index」で終わるURLならその部分を消すものです。

──────────
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} (.*)
RewriteRule (.*) http://www.%1/$1 [R=301]
RewriteRule (.*)index(.html)?$ $1 [R=301]

──────────

お試しあれ。
351edry(えどりぃ):2008/05/25(日) 22:31:40 ID:???
>>350
> RewriteRule (.*)index(.html)?$ $1 [R=301]
.のエスケープし忘れてた。

──────────
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} !^www\.
RewriteCond %{HTTP_HOST} (.*)
RewriteRule (.*) http://www.%1/$1 [R=301]
RewriteRule (.*)index(\.html)?$ $1 [R=301]

──────────
352Name_Not_Found:2008/05/26(月) 05:28:39 ID:FalhCbeD
質問させてください。

コメントはこのように記載しても問題ないでしょうか。
deny from 10.0.0.1 #コメント

それとも行頭に記載した行だけがコメントとして扱われるのでしょうか。
#コメント
deny from 10.0.0.1

些細なことで申し訳ないですがご教示いただきたくお願いいたします。
353Name_Not_Found:2008/05/26(月) 16:56:04 ID:PWHd1x+2
携帯サイトなんですが、最近自鯖のgifやjpgやswfファイルを無断で直リンしてる輩がいます。一部のサイトには許可してるんですが、許可してないサイトだけを拒否したい場合どう記述すれば防げますか?分かる方お願いします。
354Name_Not_Found:2008/05/26(月) 16:58:59 ID:???
355Name_Not_Found:2008/05/26(月) 17:35:09 ID:???
>>354
ドコモはリファラーをはかんぞ
356Name_Not_Found:2008/05/26(月) 21:16:24 ID:???
なんで直リンって分かるの?
357343:2008/05/29(木) 01:53:33 ID:Oc+g7rwq
原因が分かりましたので後の方のために報告しておきます

今回対象としていたサイト「画像リサイズ」にはGETした画像をキャッシュ保持する
機能があり、一度取得されてしまった画像が同サイトのサーバに残っていました

このため、画像を読み込まれてしまった表示側のサーバでdenyしても、
「リサイズ」のサーバ上の画像が先読みされ、結果denyが反映されていないような
挙動をしていました
358Name_Not_Found:2008/05/29(木) 05:58:46 ID:???
ファイルの内容はあっているのに
まったくアクセス制限が機能しません
試しに自分のホストを記入して
任意の階層に.htaccesファイルをいれましたが、容易に入れてしまいます
同じファイルで違う階層に入れたときはうまくいっていたんですが…
どんな理由が考えられますか?
359Name_Not_Found:2008/05/29(木) 06:17:01 ID:???
>>358
×.htacces ○.htaccess
このようにくだらない間違いが原因でしょう。
360358:2008/05/29(木) 14:15:58 ID:???
>>359
いや、携帯から書き込んだからスペルミスしたが
ファイルにうpしたのを見たらちゃんとスペルあっていた

<Limit GET POST PUT>
order allow,deny
allow from all
deny from hoge.or.jp
deny from hoge.ad.jp
deny from hoge..ne.jp
deny from hoge.ne.jp
deny from nhoge.ne.jp
deny from xx-xx-xx-xx.hoge.ne.jp
</Limit>
ErrorDocument 403 /~hoge/hoge/403.html


なにかまちがってます?
まちがってないよね?
361Name_Not_Found:2008/05/29(木) 15:58:08 ID:???
もう一回初めから書き直してみなよ
362Name_Not_Found:2008/05/29(木) 16:11:54 ID:???
ここに貼ったのが間違っているのか正しいのかはさておき、
かなりのおっちょこちょいさんなのかしら?プニュ( ´∀`)σ)Д`)>>360

とりあえず、ピリオドが2つあるみたいだけど、いいのかな?
deny from hoge..ne.jp
363Name_Not_Found:2008/05/29(木) 16:40:15 ID:???
>>361
うーん
見直してもまちがってはないですな…

>>362
ピリオドは原文にはふたつないです
ここに張るためにほげに書き換えたときにできた模様…

おっちょこちょい連発ですまない
桜のサーバーに原因があるとかではない…のかな…
364Name_Not_Found:2008/05/29(木) 16:46:52 ID:???
契約しているサーバでlimitって使えるのかにゃー?

基本的過ぎてこれはクリアしていると思うけど念のために〜

最後の行に改行は?
アスキーモードで転送してる?
サーバ側のファイルを削除、再アップしてみた?
Limit外してやってみたら?
ついでにErrorDocumentも外してみたら?
denyしたい対象はexample.or.jpといった名前解決された状態でいいの?
IPアドレスじゃないと弾けないとかない?
その他
365Name_Not_Found:2008/05/29(木) 17:42:26 ID:???
誰が見直せと言った
書き直せと言ったのだよ
366Name_Not_Found:2008/06/02(月) 22:52:12 ID:EMjgd12Y
.htaccessで自分のIP以外は入れないように規制してるんですが
これって安全なのでしょうか?

IDとPASSで規制するのは危険というのは見るのですが
IPの場合はどうなのでしょうか?
お願いします。
367Name_Not_Found:2008/06/06(金) 15:52:26 ID:???
Webサイト制作初心者用質問スレから誘導されてきました
国内のアクセスを一つを除いて制限するってhtaccessで設定しようとしてます。

order allow,deny
allow from all

deny from 国内のIPアドレス


allow from 自分のIPアドレス

と、やってみましたがうまく行きませんでした
ご助言いただけないでしょうか
368Name_Not_Found:2008/06/06(金) 16:08:50 ID:???
>>366
危険だと思うならIDとPASSもつければ?

>>367
まずどううまく行かなかったかを詳しく説明だ。
369367:2008/06/06(金) 16:26:13 ID:???
>>368
自分も弾かれます・・・Forbiddenページです
海外の串を通せば入れます
370Name_Not_Found:2008/06/06(金) 16:53:08 ID:???
>>369
deny from 国内のIPアドレス
に自分のIPアドレスが含まれているに100ペセタ。
371Name_Not_Found:2008/06/06(金) 16:53:41 ID:???
>>367
> order allow,deny
> allow from all
> deny from 国内のIPアドレス
とやったあとで、
> allow from 自分のIPアドレス
がくるのはなんでだ?
orderと違うじゃないか
372Name_Not_Found:2008/06/06(金) 16:59:45 ID:???
order allow, denyとした場合、
allowが全て評価された後でdenyが評価されるはず。
373367:2008/06/06(金) 18:02:46 ID:???
order allow,deny
allow from all

allow from 自分のIPアドレス
deny from 国内のIPアドレス



これで試してみましたが駄目でした
順番の問題ではないみたいです

>>372
order deny,allowと逆にすればdenyをallowが上書きすると思いましたが
駄目でした

>>370
deny from 国内のIPアドレス
をallowで上書きは出来ないのでしょうか?
374Name_Not_Found:2008/06/06(金) 18:19:02 ID:???
order deny,allow
deny from 国内のIPアドレス
allow from 自分のIPアドレス

国外のIPアドレスはしらね。
375Name_Not_Found:2008/06/06(金) 18:22:37 ID:???
>>367,373共に
全てのIPアドレスをallowした後に
国内のIPアドレス(自分のIPアドレスを含む)をdenyしている。
376Name_Not_Found:2008/06/06(金) 18:27:34 ID:???
deny from all
allow from 自分
377Name_Not_Found:2008/06/06(金) 18:40:27 ID:???
>>374
国外のIPアドレスはAllowもDenyもされてないから
通常ならAllowになるよ。
378Name_Not_Found:2008/06/06(金) 19:55:03 ID:???
>>373
ちっとは基本を勉強しろよ・・
379140:2008/06/07(土) 23:22:12 ID:???
ものすごく亀レスなんですが、>>140の質問をしたものです。
>>142さん、>>144さん->>145さん、
>>147-148のedry(えどりぃ)さん、
いろいろご親切に教えてくださってありがとうございました。
たくさん解説していただいて感動しました。
教えていただいたことをちょっとずつ試してみて
だめなら様子を見ながら直したりしていってみようと思います。
まだ難しいですが、なるべく自分でぐぐったりして
やっていくようにします。
全然ネットできていなかったために
お礼が遅くなってしまってすみませんでした。
ありがとうございます。親切な方に良いことがあるよう祈っております。
380Name_Not_Found:2008/06/08(日) 10:10:12 ID:???
トゲのある礼ならしない方がマシというもの。
381Name_Not_Found:2008/06/08(日) 10:19:23 ID:???
まあアレだよ、甘口のレスしか受け入れないお子ちゃまはそれまでって事だし、
放っとけ。
382Name_Not_Found:2008/06/08(日) 11:20:23 ID:???
答えるほうも気分で答えてるだけだから別に礼なんていらんがね
383Name_Not_Found:2008/06/08(日) 20:29:59 ID:???
でも最近はだらだら伸びた上に礼を求めるような雰囲気の回答が増えちゃった気がするですぅ。
384Name_Not_Found:2008/06/08(日) 21:47:50 ID:???
<Limit GET POST PUT>
order allow,deny
allow from all
Deny from IPアドレス
</Limit>
ErrorDocument 403 /~hoge/

上記のように特定のIPを特定のページに飛ばす設定に
しています。
この記述以外で特定IPを特定ページに飛ばす方法
はありますでしょうか?
385Name_Not_Found:2008/06/09(月) 11:53:40 ID:ci1kpdNE
redirect で転送先へのPOST送信をするにはどうすればいでうすか?
386367:2008/06/09(月) 14:32:37 ID:???
>>374
うまく行きました。お答え下さった皆様、ありがとうございました。

一つ疑問に思ったのですが、
order deny,allow ・・・これはdenyはallowより優先という意味ですよね
自分のIPアドレス(allow)が国内のIPアドレス(deny)に含まれているはずですが、
denyがallowより優先されているのなら自分もアクセス不可にならないのでしょうか?
387Name_Not_Found:2008/06/09(月) 16:36:04 ID:???
優先ってどこで聞いたわけ?ただの順番だ。
388367:2008/06/09(月) 17:55:41 ID:???
>>387
ここを見ながらやっていました。
ttp://matanet.ath.cx/cs/htaccess%20%E8%A8%AD%E5%AE%9A%E3%83%A1%E3%83%A2%20%E3%83%9B%E3%82%B9%E3%83%88%E3%83%BB%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%BBIP%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E5%88%B6%E9%99%90

ただの順番でしたか。
denyに自分のIPが入っていてもあとのallowで指定すればいいということですか。
ありがとうございます。すっきりしました。
389Name_Not_Found:2008/06/09(月) 19:41:41 ID:S0kweLH3
>>388
プログラムの基礎からやり直したら?
向いてないよ悪いけど
390385:2008/06/10(火) 10:18:18 ID:???
他の方法をとることにしました
391367:2008/06/11(水) 12:38:47 ID:???
>>389
剥けてるわ 悪いけど
392Name_Not_Found:2008/06/12(木) 18:45:44 ID:???
リファラーに「ゲーム」という文字列 (をエンコードした文字列?) が
含まれているときに game.html に誘導したいのですが
参照元の文字コードを判別する必要があるでしょうか。
393Name_Not_Found:2008/06/12(木) 21:34:36 ID:???
2ヶ月も前の投稿に返信するのも気がひけるが
>>117
それでも動くけど変だぞ

Options FollowSymLinks ExecCGI MultiViews
MultiviewsMatch Handlers  <=これを入れれ
Addhandler cgi-script .cgi
DirectoryIndex index
----------------
ttp://httpd.apache.org/docs/2.2/ja/mod/mod_mime.html#multiviewsmatch
394Name_Not_Found:2008/06/12(木) 21:44:58 ID:???
>>384 RewriteCond で条件つけてRewriteRule でリダイレクト
ttp://www.ksknet.net/apache/rewritecond_rew.html
395Name_Not_Found:2008/06/12(木) 21:54:05 ID:???
>>392
漏れなら
RewriteEngine On
RewriteCond %{HTTP_REFERER} ゲーム(shift_jis)のURLエンコードした文字列 [NC,OR]
RewriteCond %{HTTP_REFERER} ゲーム(EUC)のURLエンコードした文字列 [NC,OR]
RewriteCond %{HTTP_REFERER} ゲーム(JIS)のURLエンコードした文字列 [NC,OR]
RewriteCond %{HTTP_REFERER} ゲーム(UTF)のURLエンコードした文字列 [NC]
RewriteRule ^.*$ /neetSine/ [R]
396Name_Not_Found:2008/06/15(日) 14:43:56 ID:aGpVrq2L
1 RewriteEngine on
2 RewriteCond %{HTTP_HOST} ^(example\.com)(:80)?
3 RewriteRule ^(.*) http://www.example.com/$1 [R=301,L]
4 RewriteCond %{HTTP_HOST} ^(www\.example\.com)(:80)?
5 RewriteRule ^/link(\d+)\.html$ /link/index.cgi?link=$1

2-3行目で、WWWなしのアクセスをWWW付きに書き換えており、
4-5行目で、http://www.example.com/link1.html を、
http://www.example.com/link/index.cgi?link=1 に書き換えたいと思っています。

2-3行目は問題なく動くのですが、
4-5行目が404になってしまいます。

何が原因か分かる方おりますでしょうか?

404の場合は404.cgi(サーバ系のグローバル変数をまとめて取得)に飛ばしていますが、
リファラーなどは得られないので、どこで間違っているのか判断がつきません。

10時間近く苦闘しており切実です。
どなたかヒントお願いします!
397Name_Not_Found:2008/06/15(日) 15:50:02 ID:???
5 RewriteRule ^/link(\d+)\.html$ /link/index.cgi?link=$1
    ↓
5 RewriteRule ^link(\d+)\.html$ /link/index.cgi?link=$1

実は俺にもよくわかっていないのだがネット上の解説ページでは
RewriteRule ^/以下略  と成っているところが多い
しかし実際にやってみると /付けると駄目
或いはApache2.2系でそうなったのかもしれn
398396:2008/06/15(日) 16:27:27 ID:???
とりあえず、分かったことは\dが使えず、[0-9]でやると少しまともな動きになりましたw
(それでも一部のパスは通らず、画像やCSSが表示されなかったり、
 全然別のディレクトリにある違う画像が表示されたりと意味不明です)

ひとまず、絶対パス・相対パスの関係がサーバによって全然違うんですね。。
まず、リクエストヘッダを取得してから、
うまく調節して環境によってプログラム自体を作り替えていく必要がありそうです。

プロい人は汎用で作っちゃえるんだろうか……?

ちなみに試した鯖は、XREA、ロリポ、WebArena Suite2です。
全部バラバラでしたw
399397:2008/06/15(日) 18:08:30 ID:???
Apache1.3〜2.2 までのマニュアル見てみたんだが
ttp://httpd.apache.org/docs/1.3/mod/mod_rewrite.html#RewriteBase
ttp://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritebase
ttp://httpd.apache.org/docs/2.2/mod/mod_rewrite.html#rewritebase
いずれにも
RewriteRule ^oldstuff\.html$ newstuff.html
と ^ の後ろに / がついていない

で 確認するために 環境変数一覧表示するCGIを書き file名を env.cgi とする

RewriteEngine On
RewriteCond %{REQUEST_URI} !env.cgi
RewriteRule ^(.*)$ /env.cgi?$1 [R]

なんてのを置いて ttp://hage.example.com/abcde にアクセスすると
QUERY_STRING の値は /abcde ではなく abcde となり頭の / は入らない
ttp://hage.example.com/a/b/c/d/e
だとQUERY_STRING は a/b/c/d/e となり やはり頭の / は入らない
(環境:FedoraCore5+Apache2.2.2 , Vine4.2+ Apache2.2.3 と1.3.41(8800port)
400398:2008/06/15(日) 21:43:02 ID:???
そこまで調べてるし、たぶん、あなたが言ってるので間違いないと思う。
RewriteBaseは、(省略された場合も)過去全て「/」が基本(ROOT)だったし、
RewriteRule ^/ は間違っているって自覚はあるんだけど、

/bar//hoge.html でも /bar/hoge.html でも問題なくアクセスするけど、
万が一、barhoge.html だったらコッケるし……的な、保険のために付けてます。

トラブルがあるとしたら、絶対毎回別のところなので。

ちなみに、ロリポ
RewriteConde %[REQUEST_URI] !-d
RewriteConde %[REQUEST_URI] !-f
RewriteRule ^link([0-9]+).html?$ link/index.cgi?link=$1

XREA
RewriteConde %[SCRIPT_FILENAME] !-d
RewriteConde %[SCRIPT_FILENAME] !-f
RewriteRule ^link([0-9]+).html?$ link/index.cgi?link=$1

だと通った。WebArenaはいろいろなパターンが通る。
書き方よりも、その結果、どういうパスで扱われるか挙動が枚買い違うのでさっぱり分からない。
401Name_Not_Found:2008/06/15(日) 22:02:46 ID:???
はてブされるのがウザいから.htaccessで弾こうとか企ててんだけど、
ttp://www.geekpage.jp/blog/?id=2007/11/22ここに載ってるのはphp

.htaccessでのやりかた誰かわかる?
402Name_Not_Found:2008/06/15(日) 22:32:29 ID:???
>>401
わかる。というか初歩の初歩。
User Agentではじけよw
403Name_Not_Found:2008/06/15(日) 22:43:21 ID:???
SetEnvIf User-Agent "Hatena" dame1
order allow,deny
allow from all
deny from env=dame1

これではじこうとしたんだが奴ら普通にやってくる
一体何が問題なんだ!?
404Name_Not_Found:2008/06/15(日) 22:46:34 ID:???
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^Hatena [NC]
RewriteRule ^$ http://www7.atpages.jp/topage/ [R=302]
RewriteEngine off

こんなこともやってみたけど依然、ムリ
Hatenaだけではやはりだめなのか?リンク元の記事をみると先頭から6文字だけとってるし
405Name_Not_Found:2008/06/15(日) 22:54:22 ID:???
>>404
どこが先頭だよw
406Name_Not_Found:2008/06/16(月) 10:42:00 ID:???
>>403
そもそも .htaccess は有効なの?
test とか記述して 500エラーになれば 有効 だが

あと自分を排除する記述で試してみるとか?
407Name_Not_Found:2008/06/17(火) 13:51:03 ID:???
さくらのレンタルサーバ非公式FAQ
.htaccess → 画像への直リンクを防ぐ → サンプルその2
http://faq.sakuratan.com/wiki/wiki.cgi?%2ehtaccess#i14

ここの記述が間違っているのでwikiを修正しようと思ったんだが、
ここを参考にしてる人は多いだろうのに誰も気付かなかったのか、
自分こそが勘違いをしているんだろうか、と気になって修正できずにいる。

まずはサンプル下の説明の
× nef_ng を 1 に設定している
○ ref_ng を 1 に設定している
これは明らかな誤字だろうから直して良いんだろうけど
サンプル自体の文法も間違ってる気がするんだ。

サンプルでは
order deny,allow
deny from all
<Files ~ "\.(gif|jpe?g|png|cgi|php|lzh|zip)$">
deny from env=ref_ng
</Files>
となってるけど、正しくは以下じゃないんだろうか。
order allow,deny
allow from all
<Files ~ "\.(gif|jpe?g|png|cgi|php|lzh|zip)$">
deny from env=ref_ng
</Files>

これが正解かどうか教えてもらいたい。
正解なら今後の為にもwiki修正してくる。
408Name_Not_Found:2008/06/17(火) 17:19:49 ID:???
オらは 407の言うので正解(wikiが間違い)だと思う
409407:2008/06/18(水) 00:37:39 ID:???
有難う。修正してきた。
410Name_Not_Found:2008/06/20(金) 06:56:22 ID:???
知ってる奴は知ってると思うが
<Files ~ "\.(gif|jpe?g|png|cgi|php|lzh|zip)$">
SetEnvIf Referer "^http://example\.sakura\.ne\.jp" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Files>

こうすると、リファラがない場合も弾かれる。
2chでよく貼られるh抜きの形式で直リンされた場合も防げる。

例 ttp://example.sakura.ne.jp/hoge.jpg → 403

それらのファイルにアクセスできるのは、http://example.sakura.ne.jp/からのアクセスに限られる

411Name_Not_Found:2008/06/20(金) 07:40:27 ID:???
>>410
SetEnvIf Referer "^$" ref_ok
これを抜くとセキュリティーソフトを導入してる人まで弾く可能性があるから
推奨しないってよくいろんなサイトで見かけるけど問題ないの?
412Name_Not_Found:2008/06/20(金) 09:06:18 ID:???
>>411
そう言ってるのはセキュリティソフトの開発会社の連中だw
413Name_Not_Found:2008/06/20(金) 10:31:26 ID:???
>>411
見る(画像などを盗みたい)側にとっては邪魔になるから、
徒党を組んで「推奨しない」と宣伝しているようなものですよ

見る側:
一個人、セキュリティソフト開発企業、検索エンジン運営企業、etc...

サイト管理側からすると転送量が増える原因の特定が困難になるので、
明示的に直リン許可が目的で無いなら、
>>410 のように対応しておくことは有用です
414Name_Not_Found:2008/06/20(金) 11:51:02 ID:???
「画像を盗む」って何だよ、アホか
普通にブラウザで表示しただけでキャッシュされるものに盗むもクソもねえよ

リファラはプライバシー漏洩の観点から無効にされうる(RFC 2068)
ので、ウェブサイト側はリファラの送信の有無に関わらず
正常に閲覧できるようにしておくのが望ましいだろ
415Name_Not_Found:2008/06/20(金) 14:25:58 ID:???
こんなところにもRFC信者がw
416Name_Not_Found:2008/06/20(金) 16:38:40 ID:???
盗むと直林は違うがな
417Name_Not_Found:2008/06/20(金) 16:43:45 ID:???
つダウンロード支援ソフトで(゚Д゚)ウマー
418Name_Not_Found:2008/06/20(金) 18:11:37 ID:???
頭に HTTP_ の付く環境変数は クライアントの自己申告だから
偽装する気になればいくらでも出来るぞwww

417の言うようにダウンロード支援ソフトもそういう仕様になっている事も多いかと思うが
perlでsocketいじれる奴とかなら作れる

そういや、
たまにプログラムやシステム系のMLで
「 proxyアクセスを考慮してHTTP_X_FORWARDED_FORが有る場合には
 REMOTE_ADDRと置き換えてログに記録しています」なんてブァカがいて
MLメンから袋叩きにされているな
 (漏れは気が弱いので「やめといた方が良いかもしれませんよ」程度しか言わんが)

結論:クライアント申告の環境変数を当てにしすぎる奴も
悪用される事を考慮もせずに socket使ったスクリプト配布する奴も 両方大ブァカ!
419Name_Not_Found:2008/06/20(金) 19:21:49 ID:???
だからDLされたくないって話(不可能)と、
直リンクの話を一緒にすんなよ。
420Name_Not_Found:2008/06/20(金) 20:48:05 ID:???
>だからDLされたくないって話(やりたい放題)と、
>直リンクの話は分けて話そうね!お願いなんらからね!><
421Name_Not_Found:2008/06/20(金) 22:45:53 ID:???
キモ
422Name_Not_Found:2008/06/21(土) 00:29:45 ID:???
>モキュ
423Name_Not_Found:2008/06/21(土) 00:42:01 ID:???
ユドウフ
424Name_Not_Found:2008/06/21(土) 08:54:41 ID:???
http://mogo2.jp/login/showや
http://mogo2.jp/topは
拡張子がありませんがどうやっているのでしょうか?
425Name_Not_Found:2008/06/24(火) 12:55:29 ID:???
各種フレームワーク & mod_rewriteとか
426Name_Not_Found:2008/06/25(水) 09:24:50 ID:l+3nymvc
>>414
同意。
そもそも携帯はリファラを吐かないし、今後は携帯が限りなくパソコンに近づく。
大切な画像ならPHPなどのスクリプトを咬まして表示するようにすべき。
427397:2008/06/26(木) 05:40:22 ID:???
>>399
^/ と/無しの件について 日本Apacheユーザー会でのやり取りより要約

1.httpd.conf のグローバルセクション(Directoryコンテナの外)に記述 
 ^/ でマッチします
  グローバルセクションの<IfModule mod_rewrite.c>〜</IfModule>内に書いた場合も同じ
 
2.httpd.conf の<Directory コンテナ内に書いた場合
  ^/ にマッチしない

3. .htaccess に書いた場合
  ^/ にマッチしない

## と言うのが少なくとも現在のバージョン(2.0系なら2.0.63 1.3系なら1.3.41 2.2系は多分全て)の仕様のようです
 但し過去のバージョンに置いては違う動作(.htaccessに記述しても ^/ にマッチするなど)も有るかもしれないらしいです

自分の環境でマッチするかどうかは 例えば DocumentRootに test.htm などのFileを置き
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/test.htm
RewriteRule ^(.*)$ /test.htm?$1 [R]
 と記述して ​http://hoge.example.com/a.htm​ などにアクセスし その結果が
http://hoge.example.com/test.htm?a.htm​ <= こうなれば ^/ にマッチしない
http://hoge.example.com/test.htm?/a.htm​ <= ^/ にマッチする

と言うことのようです。
428Name_Not_Found:2008/06/26(木) 11:00:17 ID:???
中国から規制されてるサイト一覧
http://www.greatfirewallofchina.org/test/
429Name_Not_Found:2008/06/26(木) 11:33:27 ID:???
>>427
おそらくstrip per-dir prefixのログを出している上あたりの
apr_size_t dirlen = strlen(ctx->perdir); を1小さくしてやれば
いつでも先頭の/が必要ににできるような気もしますですけど、
サンポールとおそらく柄付きタワシを買ったあいつに試してもらわないと
不具合が大量に出そうですぅ。

とりあえず.htaccessはディレクトリ毎の設定なので、現状では
先頭の/は必要ないって事になるですぅ。
430Name_Not_Found:2008/06/26(木) 11:50:48 ID:???
松○棒で柄付きタワシが届かないところまでピカピカよぉとの事ですぅ。
勝手に作って勝手に試せお馬鹿さぁんは酷いですぅw
431Name_Not_Found:2008/06/26(木) 14:56:56 ID:QKw3bhRL
質問です。
http://xxx.xxx.com
は/home/ アクセスできます。
http://example.com
http://xxx.xxx.com/example/
ともに/home/example/のディレクトリーを表示しします。
/home/example/へはhttp://xxx.xxx.com/example/ のアドレスでは表示できないように
RewriteEngine on
RewriteCond %{HTTP_HOST} !^example.com
RewriteRule ^.*$ - [F]
として403を出していましたがこれを404を返すように出来ないでしょうか?
http://example.comでは問題なく/home/example/を表示
http://xxx.xxx.com/example/ではhttp://xxx.xxx.com/example/ は404ですファイルがありません」
って感じです。
RewriteRuleをどう書き換えればいいでしょう?
432Name_Not_Found:2008/06/26(木) 18:15:29 ID:???
>>431
Rewriteのみでやる方法は思いつかん 単に404出すだけなら 無論 存在しないページを指定 例えば
/uso.htm [L] でいいんだが それだと URL欄は問題ないが 画面に
The requested URL /uso.htm was not found on this server. と出ちまう

rewrite+ phpなら思いつく 一応、俺的手順書いとく
1. わざと存在しないページに喪前がアクセスしてみて
   そのHTMLソースを保存する

2. PHPなどで 上記の404と全く同じページを作る 例えば
<?php
header("HTTP/1.0 404 Not Found");
?>
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL <?php echo$_SERVER["REQUEST_URI"] ?> was not found on this server.</p>
<hr>
<?php echo$_SERVER["SERVER_SIGNATURE"] ?>
</body></html>

3. 直接 その404.php にアクセスして ソースを見て同じに成っていることを確認する
  (ステータスヘッダも確認するなら telnet で80アクセスしれ)

4.
RewriteEngine on
RewriteCond %{HTTP_HOST} !^example.com
RewriteCond %{REQUEST_URI} !^/er/404.php
RewriteRule .* /er/404.php [L]
433Name_Not_Found:2008/06/26(木) 18:31:17 ID:QKw3bhRL
>>432
エラードキュメントを/home/.htaccessへ ErrorDocument 404 /error.php としてあって
RewriteCond %{HTTP_HOST} !^example.com
RewriteRule ^(.*)$ /404 [L]

とすることでhttp://xxx.xxx.com/example/へのアクセスの場合は404が帰る様になりました
403のままだとそこにディレクトリーがあるのが丸分かりなので気持ち悪かったのですが。

レスありがとうございました!


434432:2008/06/26(木) 19:15:42 ID:???
一応 質問の趣旨に沿って書いてみたが
普通は http://xxx.xxx.com/example/test.htm => http://example.com/test.htm
にリダイレクトさせた方がSEO的にもいいみたいだぞ
RewriteCond %{HTTP_HOST} !^example.com
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

http://help.yahoo.co.jp/help/jp/search/indexing/indexing-21.html

んんが、そんな普通な考えの奴はここでは少ないかも?とも思うがなwww
435432:2008/06/26(木) 19:18:57 ID:???
>>434
間違った (いや どうでもいいが)
RewriteCond %{REQUEST_URI} !^example.com
RewriteRule ^example/(.*)$ http://example.com/$1 [R=301,L]

こうだな
436432:2008/06/26(木) 19:21:55 ID:???
どうでもいいことで 3連投スマソ
>>435
RewriteCond %{REQUEST_URI} => RewriteCond %{HTTP_HOST}
437Name_Not_Found:2008/06/26(木) 20:17:44 ID:iwU68i2C
レス沢山ありがとう。
http://xxx.xxx.com/ はレンタル鯖のサブドメインでアクセスできるアドレスで
/home/にありますが、/home/123 /home/456/ と好きなディレクトリーに
自分のドメインhttp://example.com/ は/home/123/ http://sub.example.com//home/456/
と割り当てが出来ます。
通常http://xxx.xxx.com/123/とhttp://example.com/ は同じ内容を表示しますが
http://xxx.xxx.com/ は隠したいので http://xxx.xxx.com/123/は無いものとしたかったのです

ややこしい質問ですいませんでした。
438Name_Not_Found:2008/06/27(金) 10:52:57 ID:???
>>437
Redirect 404 /123
Redirect 400 /456
というそういうパターンにピッタリかつHTTPステータスも至れり尽くせりな
ディレクティブもあるですぅ。
これをレンタルサーバのサブドメインの.htaccessに書いても
自分のドメインexample.comの方では読み込まないですから
h ttp://example.com/123 まで404になってしまう事はないですぅ。
まさにピッタリですぅ。
439Name_Not_Found:2008/06/27(金) 20:44:39 ID:???
auに内臓されているPCサイトビューワーのIP帯域分かる人いますか?
運営している携帯サイトにhtaccessでアクセスの許可をしたいのですが
ご存知の方いましたらお願いします
440Name_Not_Found:2008/06/27(金) 21:02:43 ID:QFVTiOuP
>>438
早速試してみました。
これいいですね!1箇所の.htaccessだけで設定できるので便利です。
ありがとうございました〜!
441Name_Not_Found:2008/06/27(金) 21:52:29 ID:???
>>439
auのサイトに出てると思う
442Name_Not_Found:2008/06/27(金) 23:24:38 ID:???
>>441
http://www.au.kddi.com/ezfactory/tec/spec/ezsava_ip.html
ここにあるんですがPCサイトビューワーは、また別のIP帯域使ってるみたいなんです・・・
公開されてないのかなぁ
443Name_Not_Found:2008/06/27(金) 23:37:12 ID:???
拒否しなきゃいいじゃない
444Name_Not_Found:2008/06/29(日) 11:27:33 ID:RwBD3u1s
質問させてください。

レンタル鯖の生ログに、スパムらしきもののアクセスが大量に出ていました。
以前使っていた掲示板で今はもうフォルダごと消してあるのですが、
存在しないアドレスへのエラーログが大量に表示されてしまいログを見るのに邪魔です。

http://memorva.jp/memo/linux/apache_error_log.php
そこで上記サイトの「不正アクセス・スパム対策」を参考に
.htaccessでリダイレクトさせようとしてみました。
その結果、GETリクエストに対して301を返しているログが出ていました。
(前は404)
POSTリクエストに対しては403で変わりません。
これをログに記録させないことはできないでしょうか?

わかりにくい質問ですみません。
要は不要なログをなんとかしたいのですが…
445Name_Not_Found:2008/06/29(日) 12:08:07 ID:???
>>444
ログに記録するしないは、apacheの設定だから、.htaccessでは
いじれないと思うぞ
446Name_Not_Found:2008/06/29(日) 13:01:34 ID:???
特定のIPにだけRedirectPermanentを適用することは出来ますか?
例えば、123.45.67.89からアクセスがあった場合RedirectPermanentで2ch.netへ飛ばすとかです
447444:2008/06/29(日) 13:02:35 ID:???
>445
そうなんですか〜スレ違いでしたね…すみません。
apacheのこともうちょっと調べてみます。ありがとうございました。
448Name_Not_Found:2008/06/29(日) 15:09:05 ID:???
>>446
>>1からじっくり読みましょう
449Name_Not_Found:2008/06/29(日) 15:52:13 ID:???
>>448
質問スレなのに教える気ないなら来るな

>>446
RedirectPermanentじゃなくて普通にErrorDocument 403 http://2ch.net/ としても同じ働き
450Name_Not_Found:2008/06/29(日) 16:36:02 ID:???
>>449
オマエガナー
451Name_Not_Found:2008/06/29(日) 19:38:33 ID:???
質問です。
直リンクを防止するために.htaccessを使っています。こんな感じ↓
<Files ~ "\.(gif|jpe?g|png)$">
SetEnvIf Referer "^http://xxxx.xxxx.xxx" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Files>
<Files ~ "\.cgi$">
SetEnvIf Referer "^http://xxx.xxx.xxx" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Files>
<Files ~ "\.html$">
SetEnvIf Referer "^http://xxx.xxx.xxx" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Files>
<Files ~ "\.php$">
SetEnvIf Referer "^http://xxx.xxx.xxx" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
</Files>

効いてるのは効いてるのですが1人だけ効いてない人がいるんです。
記述が間違っているのでしょうか?
452Name_Not_Found:2008/06/29(日) 20:10:15 ID:BxZ0RSBS
>>451
そのサイト誰にも見せたくないサイトなら
パスワードかけるかでもしとけば?
453Name_Not_Found:2008/06/29(日) 22:21:09 ID:???
>>451 一般のブラウザなら利くはずだが
>>418 に書いて有るような状態ならスルーされるよ
しかし それだけ Filesを羅列して他に見せるものが有るのか?
全部規制するなら<Files なんて無しで

SetEnvIf Referer "^http://xxx.xxx.xxx" ref_ok
order deny,allow
deny from all
allow from env=ref_ok
だけ書けばいいだろ
454451:2008/06/29(日) 23:22:50 ID:???
>>453
アドバイスありがとうございます。
それで試してみます。
455Name_Not_Found:2008/06/30(月) 00:28:47 ID:???
質問者も回答者もテンプレ>>3の例示用の
example.comなりを使いましょう

既存のドメイン所有者に迷惑かかりますよ
456Name_Not_Found:2008/06/30(月) 00:42:44 ID:???
え?どれが既存ドメインだって?
457Name_Not_Found:2008/06/30(月) 15:51:36 ID:???
>>455
意味もわからずコピペ ワロタ それは hoge.com とか 書いた場合だろが 
xxxドメインは却下されたろ
ttp://japan.zdnet.com/news/nw/story/0,2000056190,20346267,00.htm
458Name_Not_Found:2008/06/30(月) 18:52:35 ID:???
バカな奴ほど偉そうな説教口調になるのねん
459Name_Not_Found:2008/07/01(火) 01:55:52 ID:???
まとめると、
質問者も回答者もテンプレ>>3の例示用の
example.com等を使いましょう
460Name_Not_Found:2008/07/01(火) 02:50:29 ID:???
だが断る
461Name_Not_Found:2008/07/01(火) 02:53:31 ID:???
別に他人のドメインでもいいじゃなーい
見られて嫌なもの上げるなよ
462Name_Not_Found:2008/07/01(火) 10:31:47 ID:???
でもそのためにわざわざ example.com があるんだし。
463Name_Not_Found:2008/07/01(火) 11:07:01 ID:Ju7lwt/u
>>462
放置しとけばいいさ。
>>461やマイクロソフトのように「○○しましょう」って決めても守らない馬鹿は
無視しとけばいい。
守ってる人達だけでちゃんとやればいいさ。
464Name_Not_Found:2008/07/01(火) 14:57:52 ID:???
開き直りましたか
465Name_Not_Found:2008/07/01(火) 16:02:21 ID:Ju7lwt/u
IE6で散々世界中の人に大迷惑をかけつづけ
やっとIE7を出したら今度はapplication/xhtml+xmlに対応できてなくapplication/xmlまでも対応せず。
どこまで迷惑かければ気がすむんだ・・・
こんな糞企業向こう側に置いてくしかないだろ。
466Name_Not_Found:2008/07/01(火) 16:45:19 ID:???
ここはhtaccessスレなんだが
467Name_Not_Found:2008/07/02(水) 15:15:42 ID:V0jQ7qTQ
すみません、質問です。
publicフォルダ直下にhtaccessを置いてみたんですが、弾きたい肝心のファイルも
htaccessファイルと同じフォルダに置いていたら意味がないでしょうか?
468Name_Not_Found:2008/07/02(水) 15:18:31 ID:???
>>467
何を言ってるのか分からないので整理してもっかい書いて…
469Name_Not_Found:2008/07/02(水) 16:30:11 ID:V0jQ7qTQ
>>468
すみませんorz

今まで、public_htmlフォルダ直下に全てのファイルをうpしてたんですが
http://2ch.com/mona/aa.htmlとかhttp://2ch.com/giko/aa.html
という風に、public_htmlより下の階層でフォルダ分けをしていないんです)
public_htmlに.htaccessを設置した場合、同じpublic_htmlフォルダに
直に全てのファイルがぶち込んであると、検索避け用の.htaccessの効果がなくなってしまうでしょうか?

説明が下手ですみません…。
470Name_Not_Found:2008/07/02(水) 16:44:31 ID:???
「ぶちんこんである」みたいな下品な表現を使うなんて…
471Name_Not_Found:2008/07/02(水) 16:51:40 ID:???
>>469
ひろゆきか?じゃなきゃ他人のドメイン勝手に使うなよ。そのくらいのモラル守ろうよ。
472Name_Not_Found:2008/07/02(水) 18:34:14 ID:???
>>469
テンプレも読まずに質問ですかそうですか

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
473Name_Not_Found:2008/07/02(水) 19:20:13 ID:???
>>469
>説明が下手ですみません…。
下手すぎて、何がしたいのか、ちっともわかりません。
474Name_Not_Found:2008/07/02(水) 21:55:10 ID:???
すっかりくだらないスレに成り下がったな
475Name_Not_Found:2008/07/03(木) 13:38:39 ID:???
指摘するなら回答もしてやりやがれ、こんちくしょーっ!

>>467
<Files を使ってファイル1つ1つ、あるいはパターンや <FilesMatch を使って
パターンにマッチする複数のファイルに対して1つ1つ設定するしかないですぅ。
<Filesは下のディレクトリにも影響が出るですから上のディレクトリの例えば
index.htmlとは違う設定を下のディレクトリのindex.htmlへ適用したい時は
下のディレクトリの.htaccessでも<Filesを書く必要があるですっ。
476Name_Not_Found:2008/07/03(木) 14:27:31 ID:???
>>475
いやだって何を聞いてるのか謎なんだもの
477Name_Not_Found:2008/07/03(木) 16:53:12 ID:???
>>475
基本的に475さんの答えでOKだと思いますけど
隠したいfileが特定の拡張子(例えば .jpgや .phpだけ隠したいとか)
file名に一定のパターンが有れば(例えばFile名の頭に abc- が付くとか )
ならいいんだけど
拡張子もばらばらでFile名に一定のパターンもなくバラバラだと
.htaccessに書く記述が複雑になって
すごく面倒なことになるので File名を気にせずに設置したいのなら
サブディレクトリに分けて設置し それぞれのサブフォルダに.htaccessを置いたほうが面倒が無いと思う
 (↑以上の事も475のを良く見て考えれば判ることでは有るんだけどね)
478Name_Not_Found:2008/07/03(木) 22:20:37 ID:t8vcypwE
メモ帳で「A」って書いて「.txt」でサーバにアップロードしているのですが
サーバでそのファイル開くと「B」と表示されます。

どこで聞いていいかわからずここで聞いてみました。
どうかお助けください。
479Name_Not_Found:2008/07/03(木) 22:24:32 ID:???
>>478
arienai
480Name_Not_Found:2008/07/03(木) 22:44:29 ID:HgUzru86
つーか。サイトを構築してる風に見えるが
メモ帳て・・・・
改行コードも文字コードも変えれないようなので作業するからだろ。
481Name_Not_Found:2008/07/03(木) 22:54:14 ID:???
>>478
スレ違い
こっちで聞け

Webサイト制作初心者用質問スレ Part 198
http://pc11.2ch.net/test/read.cgi/hp/1212551905/
482Name_Not_Found:2008/07/07(月) 00:20:35 ID:EkOsKbg9
.htaccess を使って、CGI版PHPのHTTPヘッダを出力させないようにできますか?
よろしくお願いします。
483482:2008/07/07(月) 00:21:36 ID:???
↑スレ間違えました。失礼しました。
484482:2008/07/07(月) 00:22:58 ID:EkOsKbg9
すいません、間違えていませんでした(^^;
よろしくお願いします。
485Name_Not_Found:2008/07/07(月) 01:07:46 ID:???
CLI版に変えてください
486482:2008/07/07(月) 02:30:08 ID:EkOsKbg9
そうですよね。 なんとか、CLI版PHPに変えずに、CGI版PHPの
HTTPヘッダを出力させないようにできないでしょうか?
487Name_Not_Found:2008/07/07(月) 14:07:19 ID:CHu6F/bG
>>480
文字コード変換できるのでやってます。
php editorでUTF-8でやっていますが
どちらにしろ半角英数なんですよ。

化けるはずないのに何故こんな現象が起こるのでしょうか…
488Name_Not_Found:2008/07/07(月) 15:21:31 ID:???
>>487
>化けるはずないのに
この思いこみが間違い。
まずは自分を疑ってみれ。
489Name_Not_Found:2008/07/07(月) 16:19:06 ID:CHu6F/bG
>>488
いや疑いようもない状態なんですよ。

サーバ1にアップして開いてみたらちゃんと表示される
サーバ2にアップした場合は違う文字になってる。

内容は本当に「A」だけなんです。
IE6-7 firefox opera safariなど色んなブラウザでやってみたが違う文字になる。
サーバ上のデータをダウンロードしてきても「A」になってるんです。
490Name_Not_Found:2008/07/07(月) 16:40:23 ID:???
上げ直せ
491Name_Not_Found:2008/07/07(月) 17:29:13 ID:CHu6F/bG
>>490
当然やってますよ。
492Name_Not_Found:2008/07/07(月) 17:47:29 ID:???
>>491
そもそも.htaccessと無関係の話題だ。
ほかでやってくれ
493Name_Not_Found:2008/07/07(月) 18:01:25 ID:CHu6F/bG
>>492
ではどこで聞けばよいのでしょうか?
全く検討がつかないのですが。

494Name_Not_Found:2008/07/07(月) 19:07:45 ID:???
夢の中へ
495Name_Not_Found:2008/07/07(月) 19:44:46 ID:CHu6F/bG
夢の中へ
496Name_Not_Found:2008/07/07(月) 20:27:49 ID:???
イってみたいと
497Name_Not_Found:2008/07/07(月) 20:55:59 ID:???
WebProg板じゃね
498Name_Not_Found:2008/07/07(月) 21:23:46 ID:???
>>482  すっげぇ馬鹿げた方法ならあるぞwww
例えば /home/tarou/www/ がドキュメントルートで
     /home/tarou/www/php/ にPHPの.cgiを置くとする
/home/tarou/www/cli.cgi などのfileを置いて
/home/tarou/www/php/.htaccess に
Action test-php /cli.cgi
AddHandler test-php .cgi
# の2行を記述する /cli.cgi ってのは勿論ドキュメントルートに置いた cli.cgiだ
# /~tarou/cli.cgi とか喪前の環境に合わせてくれ
その cli.cgi の中身は (perl で書くと)
#!/usr/bin/perl
$script = '/home/tarou/www' . $ENV{'REDIRECT_URL'};
foreach(`$script`)
{if($cnt){print;} # 最初のヘッダ(空行まで) 表示しない
if(/^\s*$/){$cnt++;}
}
__END__

これでうちのfedora9では ヘッダの表示を消すことが出来たぞ
勿論上に書いた .htaccess の2行をコメントアウトすると ヘッダが画面に出てくる

馬鹿げている意味は判るな? リダイレクトさせておいて わざわざリダイレクト元の
スクリプトを子プロセスで実行使用ってンだから
、、、、ってアホな事考えさせるな>482
スクリプトから echo "Content-type: text/html\n\n"; 消せば済む話ジャン
499Name_Not_Found:2008/07/07(月) 21:35:30 ID:???
>>498 環境変数 REDIRECT_URL や REQUEST_URI さえ渡ればいいんだから
.htaccessの方は rewriteとかでもたぶん出来るな
試してないけど
RewriteRule ^php/.*\.cgi$ /cli.cgi [L]
500おでん:2008/07/07(月) 21:45:12 ID:wrYSbZO3
サーバで
http://ex.com/index.php/test


http://ex.com/test

でアクセスできるようにしたいのですが、mod_rewriteに何を書いたらよいか教えてください。


普通にアクセスするのだと404エラーになりました。
501Name_Not_Found:2008/07/07(月) 21:45:53 ID:???
>>500
イヤです
502おでん:2008/07/07(月) 21:46:55 ID:wrYSbZO3
お願いします(´ω`)
503Name_Not_Found:2008/07/07(月) 21:59:16 ID:???
.htaccess なら
RewriteEngine on
RewriteCond %{REQUEST_URI} !^/index.php/
RewriteRule ^(\w*)$ /index.php/$1 [L]

これでいいか?
お礼は姉ちゃんのパ*ツ な
って ちょ、おま、お袋の んなもの寄越すな
504482:2008/07/07(月) 23:28:16 ID:KghusoCJ
レスありがとうございます!!
cgiをイジれば、そのような手段があるんですね!?

ただ、あまり知識に自信がないので、
できればcgiではなく、htaccessに追記するだけでヘッダ出力をなくしたいのですが、
そんな簡単にはできないですよね!?
505Name_Not_Found:2008/07/08(火) 14:43:17 ID:c/gC3o6m
ルートディレクトリと幾つかのサブディレクトリに
それぞれindex.htmlが存在している状況で
ルートディレクトリのindex.htmlのみにForceType application/x-httpd-phpを指定したい時は
.htaccessファイルをどのように配置&記述すればいいのでしょうか
ルートディレクトリ上の.htaccess単体でこれを実現する方法はありますか?
506Name_Not_Found:2008/07/08(火) 15:29:30 ID:+MI0bJGF
>>478みたいな現象って
もうサーバがぶっ壊れてるんじゃね?
新しいの購入するのがいいと思う。
507Name_Not_Found:2008/07/08(火) 20:30:50 ID:???
http://example.com
http://example.com/
に人が来た時に、強制的に
http://example.com/index.php
に飛ばしたいのですが、どう記述すれば良いでしょうか?
508Name_Not_Found:2008/07/08(火) 20:42:38 ID:JSvLyOV0
RewriteRule
509Name_Not_Found:2008/07/08(火) 20:50:02 ID:???
RewriteEngine On
RewriteBase /
RewriteRule http://example.com http://example.com/index.php
RewriteRule http://example.com/ http://example.com/index.php

こうですか?
index.phpというファイルは存在しているのですが、大丈夫でしょうか?
510Name_Not_Found:2008/07/08(火) 21:01:02 ID:???
ローカルにテスト環境立てて自分で試してから言えカス
511Name_Not_Found:2008/07/08(火) 21:02:23 ID:???
ですよね〜^^
アクセスが下がる明け方まで待ってから試すことにします。
現状鯖が死んでてどうにもなりません
512Name_Not_Found:2008/07/08(火) 21:34:00 ID:???
>>509

RewriteRule でやるなら >>503 のRewriteRuleを
RewriteRule ^$ /index.php [R]

だが
Directoryindex index.php
とすれば index.php にアクセスするんで それで済む話ではないのか?
513Name_Not_Found:2008/07/08(火) 21:53:40 ID:???
>>512
ありがとうございます。
先ほどそう書いてアップしたので
確認しようと思ったらまた落ちました・・・。

なぜ書き換えようとしているかと言うと
http://example.com にIE6で繋ぐとファイルを保存になってしまうんです。
これはキャッシュプラグインを使っているからなのですが、
http://example.com/index.php だとIE6でも閲覧できます。
だから http://example.com に来たアクセスを、
全部 http://example.com/index.php に飛ばしたいのです。

なお、キャッシュを使わないと
使用しているCMSが動的なのでサーバが今よりもダウンしてしまいます。。。
514Name_Not_Found:2008/07/08(火) 22:28:53 ID:???
>>513 ほうほう

512のRewriteRuleならRewriteCond行も要らないな

RewriteEngine on
RewriteRule ^$ /index.php [R]

の2行だけでいいや
515Name_Not_Found:2008/07/08(火) 23:12:41 ID:???
>>514
ありがとうございます。さきほど試してみたけどダメでした。。。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
AddDefaultCharset UTF-8
RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{QUERY_STRING} !.*s=.*
RewriteCond %{QUERY_STRING} !.*attachment_id=.*
RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz -f
RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html.gz [L]

RewriteCond %{REQUEST_METHOD} !=POST
RewriteCond %{QUERY_STRING} !.*s=.*
RewriteCond %{QUERY_STRING} !.*attachment_id=.*
RewriteCond %{HTTP_COOKIE} !^.*(comment_author_|wordpress|wp-postpass_).*$
RewriteCond %{DOCUMENT_ROOT}/wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html -f
RewriteRule ^(.*) /wp-content/cache/supercache/%{HTTP_HOST}/$1/index.html [L]
</IfModule>

<IfModule mod_rewrite.c>
RewriteRule ^wp-trackback\.php.*$ - [F,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

ここのどこに入れたらいいと思いますか?
516Name_Not_Found:2008/07/09(水) 05:00:52 ID:???
>>515
少々補足要求が必要

これって初回のアクセス時のみhttp://example.com に来たアクセスを、
  全部 http://example.com/index.php に飛ばしたいって事?
  それともTOPPAGEにきたのを全部? (<=一応そう書いてあるが機能が無意味になりそうだが?)
517Name_Not_Found:2008/07/09(水) 07:35:11 ID:???
>>516
トップページにきた人だけです。
個別ページは http://example.com/123.html と表示させています。
で、このページはIE6でも閲覧できます。
トップだけなぜかファイルを保存になってしまうので困っています。

よく企業のサイトで
http://example.com/ に行ったら http://example.com/index.html
と表示されるサイトがありますよね? ああいうのにしたいのです。
それで解決になるかどうかは試してみないとまた分かりませんが・・・
518Name_Not_Found:2008/07/09(水) 16:20:35 ID:???
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule ^/?$ /index.php [R=302,L]
## 上の2行を追加(.htaccess またはhttpd.conf 兼用の記述です)
## それから 2箇所ある %{REQUEST_METHOD} !=POST 行の上にも
RewriteCond %{REQUEST_URI} !^/index.php
# ↑を追加してみてください あわせて RewriteCondの同じ記述が 3行 RewriteRuleの追加が1行です
519Name_Not_Found:2008/07/09(水) 16:52:22 ID:???
横レス失礼します。質問です。

「携帯端末(複数、UAで判別)以外を特定のページに飛ばす」
「特定のIP(ホストでもUAでも)を制限する」
の2つを組み合わせたいと思っているのですが、どのようにすればいいのでしょうか?

携帯を特定のページに飛ばす方法はすぐに見つかるのですが、携帯以外(PC等)を特定のページに飛ばす方法は見つけられませんでした。
今は携帯以外をErrorDocument 403で無理矢理振り分けているのですが、最近ロボットが酷くて特定のアクセスも制限したくなってきました。

ご教示お願いします。
520Name_Not_Found:2008/07/09(水) 19:41:16 ID:???
見つからないって悪い冗談だろ・・・
521Name_Not_Found:2008/07/09(水) 20:16:13 ID:???
>>519
>携帯を特定のページに飛ばす方法
これをPCに当てはめたら、
> 携帯以外(PC等)を特定のページに飛ばす方法
になるんだけど。
それすらどうすれば良いかわからないなら、手を出さないほうがいい。
やめておけ。
522Name_Not_Found:2008/07/10(木) 12:30:29 ID:???
>>518
ありがとうございます。
先ほど指示通りに挿入して見事に反映できました。

が、今度は個別記事でエラー吐くようになってしまいました。orz
他の方法で負荷分散を頑張りたいと思います。
せっかく手助けいただいたのに申し訳ありません。
ありがとうございました。
523Name_Not_Found:2008/07/10(木) 16:48:34 ID:???
>>505 「放置質問に答えてみようキャンペーン」
言葉どおりの事だと、まんドクサ!

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/\w*\.php
RewriteRule ^(\w+)\.html?$ /$1.php [L]

これでどうだ?
要するに URL上は .htmだが 実は .phpにアクセスする仕組み
例えば http://example.jp/test.htm (test.htmlでもOK)にアクセスすると
URL欄はそのままだが 実は
http://example.jp/test.php にアクセスする仕組み
test <=の部分は半角英数字と _ の組み合わせなら何でもOK
eroieroi.htm =>eroieroi.php

但しこれだと 対応した名前のphpを一つ一つ用意する必要がある
一つの php 例えば index.php でパラメーターに応じて いろいろなページを表示するなら
RewriteRule 行を
RewriteRule ^(\w+)\.html?$ /index.php?$1 [L]

こうすれば
/kitiku.htm => /index.php?kitiku
/tinnkasu.htm =>/index.php?tinnkasu
 んで queryに応じたページを表示する
ま、今はやりの 動的=>静的変換だな
524Name_Not_Found:2008/07/12(土) 06:29:56 ID:tIvDO2Yb
.htaccessの設定でエンコードに変換?
(例 http://www.○○○.com/search.cgi?keywords=%82%A0%82%A2%82%A4%82%)
みたいなのをさせない方法はありませんか?宜しくお願いします。
525Name_Not_Found:2008/07/12(土) 14:37:01 ID:???
>>524 URLエンコードされたのをデコード(普通の文章に)するって事かな?
なら RewriteMap だな
http://wiki.bit-hive.com/tomizoo/pg/mod_rewrite%20-%20RewriteMap
526519:2008/07/12(土) 15:00:55 ID:???
>>520-521
有難うございます。

一応自分の環境で確認した限りでは、これで思惑通りできているかのようには感じているのですが、

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} !L-mode [NC]
RewriteRule ^$ /other.html [R,L]
deny from 拒否するIP

(携帯をindex.html PC等をother.htmlにしています)

無駄な動きをしていないか?とか無限ループしないだろうか?等が心配ではあります。
もし記述上問題等がありましたら、ご指摘いただけると助かります。
あと、各サブディレクトリにRewriteEngine Offを記述した.htaccessを置いた方がいいのでしょうか?
527Name_Not_Found:2008/07/12(土) 23:10:00 ID:???
質問です、よろしくお願いします。
xxx/yyy.htmをxxx/yyyでアクセスできるように設定したいのですが、
どのようにすればよいのでしょうか?
ちなみにロリポップではなにも設定しないで上記が可能ですが、
今回契約したハッスルサーバーではできずに困っております。

528Name_Not_Found:2008/07/12(土) 23:59:30 ID:???
>>527
お断りします
529Name_Not_Found:2008/07/13(日) 00:23:53 ID:???
example.com/xxx/yyyって普通はexample.com/xxx/yyy/と判断されるんじゃ・・・
530Name_Not_Found:2008/07/13(日) 09:52:36 ID:???
確か、
example.com/xxx/yyy
というファイルを探して、それがないと、
example.com/xxx/yyy/
を探すという処理じゃなかったっけ

example.com/xxx/yyy
できたら、
example.com/xxx/yyy.html
とするようにはできるけど、これをやってしまうと、
example.com/xxx/yyy

example.com/xxx/yyy/index.html
を表示することはできなくなるね。


527のやりたいことが、そもそもオカシイと思うけど。
531Name_Not_Found:2008/07/13(日) 15:39:59 ID:???
>>527 それはMultiviews だな
http://httpd.apache.org/docs/2.2/ja/content-negotiation.html#multiviews
Options All multiviews
で有効になるけど .htaccess にOptions を許可しているところって少ないのでは?
http://httpd.apache.org/docs/2.2/ja/mod/core.html#allowoverride
まあ、 .htaccess に上記のを記述して 500エラーに成ったら
Rewriteで擬似的にやるか、諦めるか、
optionsを許可またはmultiviewsを設定してある別の貸し鯖屋に変えるしかないな
532Name_Not_Found:2008/07/13(日) 16:04:17 ID:???
>>525
RewriteMapは.htaccessのみを触れる人では設定できないですぅ。
リライトが使える上に内部関数まで設定が済んでいるサーバは
とても希少過ぎる気がするですっ。
533Name_Not_Found:2008/07/13(日) 16:57:46 ID:???
>>532 え?マジ?
と思って
http://httpd.apache.org/docs/2.2/ja/mod/mod_rewrite.html#rewritemap
を見たら、、、
Context: server config, virtual host
と .htaccess が無いな

一応念のため TESTサーバーで .htaccess に
RewriteEngine on
RewriteLock /home/hoge/tmp/map.lock
RewriteMap escape-map prg:/home/hoge/script/escape.pl
RewriteRule ^/(.+)/dec/(.*)$ /$1/index.php?pg=${escape-map:$2} [L]
と記述したら 500エラーで error_logには not allowed here(ここに記述することを許可されていません)

と言うことで 532が正解 .htaccessじゃ出来ません

で、524のやりたいのが ひょっとしてアクセス解析のログに 日本語で記録すると言う事なら
アクセス解析用のスクリプト内部で perlなら
s/%([a-f\d]{2})/pack("C", hex($1))/ieg;
とかでデコードして記録すればいいのでは?
534Name_Not_Found:2008/07/14(月) 16:32:10 ID:???
>>524
533だが 、 じゃなくてやりたいことは自分のサイト内のFORM=>cgiへの送信時に平文で送りたいって事なら
FORM タグの中で enctype を指定
http://www.tagindex.com/html_tag/form/form_enctype.html
どっちみち .htaccess じゃない
535Name_Not_Found:2008/07/14(月) 16:34:21 ID:OidOf6hQ
例えば
/aaa/bbb/
このようなディレクトリ構造で、aaaディレクトリに.htaccessでアクセス制限を掛け、
bbbのフォルダのindex.htmlだけ許可したい場合、

<Files ~ "^(index\.html)$">
allow from all
</Files>

このように記したものをbbbのディレクトリに配置すれば
「index.html」に制限がかかると思います。
しかし、スラッシュで終わるアドレスでアクセスした場合、
きちんとアクセス制限が掛かりません。

スラッシュで終わるアドレスでアクセス制限をかける方法はありますか?
536Name_Not_Found:2008/07/14(月) 16:38:49 ID:???
表現の仕方がちょっと悪かったかもしれませんが、アクセス"許可"制限です。
537Name_Not_Found:2008/07/14(月) 17:49:32 ID:???
>>535
DirectoryIndex を index だけセットしてindex.htmlを表示させていると
<Files index.html>等の設定をスルーしてしまうみたいですぅ。
538Name_Not_Found:2008/07/14(月) 18:27:04 ID:???
で、そのindexだけでindex.html表示できるのがOptionsのMultiViewsのおかげであって、
MultiViewsを有効にしたときの副作用な気がするですぅ。
539Name_Not_Found:2008/07/14(月) 20:57:43 ID:3Cy38wgf
アクセス拒否したいIPが固定ではなかったので、
特定のホストとHTTP_USER_AGENTでアクセス拒否をかけたいと思っています。

RewriteEngine on
RewriteCond %{REMOTE_HOST} ^.*.example\.ne\.jp$ [NC]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0 \(compatible; MSIE 6\.0; Windows NT 5\.1; SV1; \.NET CLR 1\.1\.4322\)$ [NC]
RewriteRule ^.*$ - [F]

としたのですが、500エラーがかえってきてしまいます。
こういう場合どうやって記述すればよいでしょうか?
540Name_Not_Found:2008/07/14(月) 21:08:45 ID:???
>>539
スペースが入る場合は、""で囲め
541Name_Not_Found:2008/07/14(月) 22:25:18 ID:???
>>540
横からw
こんな感じでよいですか?

"^Mozilla/4\.0 \(compatible; MSIE 6\.0; Windows NT 5\.1; SV1; \.NET CLR 1\.1\.4322\)$"
542Name_Not_Found:2008/07/14(月) 22:28:59 ID:???
この世にはIEユーザーしかいないと思っているんですねよくわかりますフィリピンではFirefoxのシェア50%ぐらいなのに死ねば良いと思うよ
543Name_Not_Found:2008/07/14(月) 22:44:44 ID:???
539です。
>>540
ありがとうございます。
RewriteCond %{HTTP_USER_AGENT} ^"Mozilla/4\.0""\(compatible;""MSIE""6\.0;""Windows""NT""5\.1;""SV1;""\.NET""CLR""1\.1\.4322\)"$
としてみて、500エラーが返って来なくなったんですが、これでよかったのでしょうか?
ためしに自分のUA(上記とは違いますが)でもやってみたのですが普通に表示されてしまったので
効果があるのかわからなかったのです。
544Name_Not_Found:2008/07/20(日) 12:51:05 ID:???
こんにちは、質問させてください
たまにアクセス解析のリモートホストの欄がIPアドレスだったり空白だったりしますが
あれはどういった手段でアクセスしている人なのでしょうか?
リモートホストが空白の人を弾くことはできますか? よろしくお願いします
545Name_Not_Found:2008/07/20(日) 17:29:39 ID:???
>>544
リモートホストが空白の環境に対して
RewriteCond %{REMOTE_HOST} ^$

リモートホストが IPアドレスは何か特別な手段を使っているわけではなく、
普通のことですよ
ISP によって仕様が異なる、程度に思っておけばいいと思います

↓以下、詳しい方の解説
546Name_Not_Found:2008/07/20(日) 18:25:26 ID:???
スレチだしまんどくせ。
547544:2008/07/21(月) 01:47:52 ID:???
>>545
RewriteCondというワードを元に検索したら知りたい内容のページを
探し当てることができました
これでやっと迷惑な人を拒否することができます
本当にありがとうございました
548Name_Not_Found:2008/07/28(月) 18:33:06 ID:yLmTeYUR
初歩的なことを聞いて申し訳ありません。

RewriteConde %[SCRIPT_FILENAME] !-d
RewriteConde %[SCRIPT_FILENAME] !-f
RewriteRule ^(.*) http://www.example.com/$1 [R=301,L]

上記の「!-d」や「!-f」、「R=301」はどういった意味なんでしょう?
549Name_Not_Found:2008/07/28(月) 18:42:10 ID:???
>>548
apache の man に書いてあるよ
それでも分からなかったら再質問するアルよろし
550Name_Not_Found:2008/07/28(月) 18:50:01 ID:???
man が読めないなら、
↓こういうところを調べ歩けばオッケー
http://htaccess.pasoa.com/
551Name_Not_Found:2008/07/28(月) 22:11:20 ID:yLmTeYUR
>>549-550
548です。
本当にありがとうございます。
このご恩は一生忘れません。
552Name_Not_Found:2008/08/03(日) 00:54:36 ID:y+cx4qDA
好ましくないゲストのホスト、ドメイン名の一部をdeny from に続けて書いて、アクセスを禁止しているつもりでいます。
しかし、実際に自分の書いた記述で上手くアクセスを禁止してくれているのか不安になりまして、ためしに
同じように自分のホスト名の一部を.htaccessに書いて、アクセス禁止の効果を確かめてみようと思うのですが、
こうした場合、後でアクセス禁止を解除しようとしても、FFFTPでのアクセスまで弾かれてしまうなんてことはあるのでしょうか?

ためしにの筈が、そのままずっと自分でもアクセス出来ずに、.htaccessが書き直せないとなると怖いなと思いまして。
実際に起こりえる事態なのかどうか、教えてください。
553Name_Not_Found:2008/08/03(日) 01:14:05 ID:???
アホか。普通そんなの起こりえない。
テンプレのリンク先とかくらい読んで勉強汁。
554Name_Not_Found:2008/08/03(日) 04:22:11 ID:???
>>552
懸念されているような事は起こりませんよ

.htaccess は HTTP に関するアクセスを制御するためのもの
FFFTP で使われるプロトコルは HTTP ではなく、FTP
.htaccess が制御できる範疇ではない、異なるプロトコル
(FTP, POP, SMTP, etc...)を制御できるわけありませんので

設定を編集する前に、.htaccess とはなんぞや?といった
基本的な事を勉強してから編集した方がよいと思います
でなければ、
間違った設定を施して HTTP の制御がループしてしまう
--> サーバに負荷をかけ続ける、
といった問題を引き起こしてしまう可能性もありますよ?

検討を祈っております(・_・)ゞ
555Name_Not_Found:2008/08/04(月) 03:12:34 ID:Q81dKe1V
IEで2ちゃんねる内に書かれたURLをクリックするとimuにとばされワンクッション置かれますよね。
htaccessで設定してると思うんですが、どのように設定をすればいいのか教えて下さい
検索したのですが うまくヒットさせることが出来なくて困っています。
分かる方いましたらアドバイスお願いします。

556Name_Not_Found:2008/08/04(月) 03:37:23 ID:???
>>555
それはCGI側の処理。..htaccess無関係。2chブラウザで2ch見れば直で飛べるでしょ?そういうこと。
それを実装したいなら自力で対象となるCGIとかに手を入れること。
557Name_Not_Found:2008/08/04(月) 03:46:00 ID:Q81dKe1V
>>556
夜中にレス有難うございます。
cgiを探してみたいと思います。
助かりました!
558Name_Not_Found:2008/08/04(月) 03:48:12 ID:???
そんな鬱陶しいもんつけるなよ・・・
2chだからこそ許されるってもんだぜ
559Name_Not_Found:2008/08/04(月) 04:01:28 ID:???
安全対策のためです。
ソースを表示などを追加するため。
560Name_Not_Found:2008/08/04(月) 05:24:14 ID:???
安全対策たってどっちにしろサニタイズしてないとクッションはさんでも一緒じゃん
561Name_Not_Found:2008/08/04(月) 09:26:11 ID:???
ソースチェッカーにかけるようにするので結構変わってくると思うよ。
夏休みとかブラクラはる馬鹿がいるから対策しないとしょうがない
NG URL設定しても次から次へとアドレスなんて変えれるし。
日に40万UVあるから個人では管理限界だわ(自分の能力が・・・)
562Name_Not_Found:2008/08/04(月) 21:29:37 ID:ZZOSmj0p
教えて下さい。ページランクや検索順位を維持するために301リダイレクトをしようとおもったのですが、旧サーバを解約したら意味がないんでしょうか?
563Name_Not_Found:2008/08/04(月) 22:10:13 ID:???
.htaccess自体の質問じゃないからスレチ。
564Name_Not_Found:2008/08/04(月) 22:19:13 ID:???
>>562
常識的に考えて、サーバを変えただけで301が機能しなくなるようなら、そんなもん誰も使わんだろ。
てか、少しはマニュアル嫁よ。
565Name_Not_Found:2008/08/09(土) 21:46:45 ID:???
質問です。中国人のアクセスを弾こうと思って、以下のような記述を追加しました。


# 中国からのアクセスを拒否
order allow,deny
allow from all
deny from .cn # 中国からのアクセスを拒否

# 特定の言語を拒否
SetEnvIf Accept-Language zh Lilith # 中国語を弾く
Order Allow,Deny
Allow from all
Deny from env=Lilith


しかし、アクセス解析を見ると相変わらず中国語を使用しているユーザーからの
アクセスがあります。
上記の書き方だと、ダメなんでしょうか?
566Name_Not_Found:2008/08/09(土) 22:46:32 ID:???
>>565
オリンピック期間中は、全世界で、その設定は無理らしい
567565:2008/08/09(土) 23:28:35 ID:???
>>566
う、マジですか・・w
568Name_Not_Found:2008/08/09(土) 23:34:12 ID:???
>>565
下の記述で上の中国語弾きがキャンセルされてる

SetEnvIf Accept-Language zh Lilith
Order Allow,Deny
Allow from all
Deny from env=Lilith
Deny from .cn

.htaccess関係ないけど
HTMLのソースに<!--天安門事件-->って書くの最強
569565:2008/08/10(日) 00:54:19 ID:???
>>568
ありがとうございます!

一応、自分のブログを置いているサーバー上に、六四天安門事件、法輪功などの言葉を
書いたファイルを置いてはいるんですけどね。
まだ、各検索ロボットに拾われてないみたいです。
570565:2008/08/10(日) 15:09:28 ID:???
うーん、未だに中国からのアクセスおよび中国語環境からのアクセスが来ます・・
ちなみに、自分が.htaccessでやりたい事は、以下のことです。

 ・.htaccessファイルを隠す
 ・中国語でのアクセスを拒否
 ・中国からのアクセスを拒否
 ・ファイル一覧の参照拒否
 ・wwwありのURLにアクセスさせる

そして、.htaccessには以下のように記述しています。


つづく・・
571565:2008/08/10(日) 15:10:58 ID:???
・・・つづき

Options +ExecCGI
AddType text/html cgi
AddHandler cgi-script cgi

AddHandler cgi-script htaccess  # .htaccessファイルを隠す

SetEnvIf Accept-Language zh Lilith    # 中国語を弾く
Order Allow,Deny
Allow from all
Deny from env=Lilith
deny from .cn # 中国からのアクセスを拒否

<Files ~ "^.(htaccess|htpasswd)$">  # ファイル一覧の拒否 + www有りに統一
deny from all
</Files>
Options -Indexes
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(tokyohotmaniax¥.com)(:80)? [NC]
RewriteRule ^(.*) http://www.tokyohotmaniax.com/$1 [R=301,L]
order deny,allow


これで、中国語を弾いてないし中国からのアクセスも拒否できてません。
どこか記述の仕方がまずいのでしょうか・・・
572Name_Not_Found:2008/08/10(日) 15:34:47 ID:ZQJyk0gZ
中国はcnだけじゃないからな。本当はipではじけばいいんだろうが切がないし
うちでは
<Files ~ "^\.ht">
deny from all
</Files>

SetEnvIfNoCase User-Agent "spider" ua_Lilith
SetEnvIfNoCase User-Agent "baidu" ua_Lilith
SetEnvIfNoCase User-Agent "yoti" ua_Lilith
SetEnvIfNoCase User-Agent "yodaobot" ua_Lilith
SetEnvIfNoCase User-Agent "outfoxbot" ua_Lilith
SetEnvIfNoCase User-Agent "naverBot" ua_Lilith
SetEnvIfNoCase User-Agent "yeti" ua_Lilith

order deny,allow
deny from env=ua_Lilith
deny from .asianetcom.net
deny from .asianet.co.th
deny from .cn
deny from .net.cn
deny from .com.cn
deny from .org.cn
deny from .baidu.jp
deny from .baidu.com
deny from .insightbb.com
deny from .theplanet.com
deny from .cnzz.com

としてるけどな。効果あるか無いか最近どうでもよくなってきた。日本にも中華は多いし
573Name_Not_Found:2008/08/10(日) 15:42:16 ID:???
>>570
最終行のorder deny,allowはいらなくない?
574565:2008/08/10(日) 15:51:28 ID:???
>>572
アクセス解析を見ると、REMOTE_HOSTが・・.com.cnというユーザーが結構アクセスしてきてます。
.cnだけでも弾けるといいんですけどね。

>>573
ちょっと削除してみます。
575Name_Not_Found:2008/08/10(日) 19:35:44 ID:???
中韓台湾香港のIP全部弾いてるけどhtaccessの容量が70KB近くになってページの表示が重い重い
576Name_Not_Found:2008/08/10(日) 19:47:07 ID:ZQJyk0gZ
>>575
うちもそうしたいけど、糞重くなるの目に見えてるからな。
サーバーや国が中華からのアクセスを弾いてと言うか回線きってくれてもいいんだが。
中華なんかとネットが繋がらなくなってこまる個人いないし。
577Name_Not_Found:2008/08/10(日) 21:07:19 ID:???
しかし中華及び周辺は世界中に居るわけで、
しかも他人の物は自分の物という意識は統一されており、大変にタチが悪い。
578Name_Not_Found:2008/08/10(日) 21:34:00 ID:???
ゲーム系のコンテンツやってると奴等すぐパクからな
製作者詐称するし
579Name_Not_Found:2008/08/10(日) 22:01:44 ID:???
>>578
この連載を見てると、支那のアホぶりをかいま見ることができるよな
ttp://trendy.nikkeibp.co.jp/article/coltop/20070409/121539/
580Name_Not_Found:2008/08/11(月) 01:00:17 ID:???
ユーザーエージェントが空白の訪問者を弾きたいんだが

SetEnvIfNoCase User-Agent "" ←ここをどうすれば弾ける?



581Name_Not_Found:2008/08/11(月) 01:06:38 ID:???
^$
582Name_Not_Found:2008/08/11(月) 01:11:25 ID:???
ありがとう
583Name_Not_Found:2008/08/11(月) 01:46:52 ID:???
支那人って、中国語のサイトに平気で日本語の文章をパクって載せるからな。
よく分からん。
584Name_Not_Found:2008/08/11(月) 02:04:40 ID:???
ここはいつから嫌品人とネトウヨの巣靴になったんですか?

品人に見せられないような糞サイトに.htaccessなんて必要ないと思うがな
そもそも品人そんなの見ないし
585Name_Not_Found:2008/08/11(月) 02:07:14 ID:kuo2rjrJ
ウホッ!
586Name_Not_Found:2008/08/11(月) 02:17:05 ID:???
>>584
htaccess 中国 弾く
これでググってみろw
支那人がいかに嫌われてるかよく分かるからw
587Name_Not_Found:2008/08/11(月) 03:01:16 ID:m5BEvHSG
.htaccess で、

deny from .cn

でよくない?
ああ、あいつら逆引きしてないから、中国で割り振っているから、中国に割り振っているIPアドレスを調べて、
すべて、

deny from IPアドレス
で拒否出来る。

588Name_Not_Found:2008/08/11(月) 03:11:07 ID:???
12個上のレスも見られないとかどんな知的障害者?
589Name_Not_Found:2008/08/11(月) 03:24:00 ID:???
>>584
君のサイトは支那人にパクられもないんだろ。それはそれで幸せだよ、うん。
590Name_Not_Found:2008/08/11(月) 20:43:08 ID:???
香港のプロバイダとかページ移動するだけでIP変わってるんだけどなんなん?
591Name_Not_Found:2008/08/11(月) 23:21:38 ID:???
串じゃないの?
592Name_Not_Found:2008/08/12(火) 01:00:06 ID:???
それがさ、ソニーのGKもページ移動の度にIP変わってるんだよ
593Name_Not_Found:2008/08/12(火) 08:41:49 ID:???
.htaccessと関係ないだろカス
594Name_Not_Found:2008/08/13(水) 16:04:48 ID:???
.cnを弾いてるのに、アクセスログを見ると.jpのやつが弾かれたりしてる。全部が全部じゃないけど。
595Name_Not_Found:2008/08/13(水) 16:20:50 ID:???
>>594
違う部分の条件にヒットしてるだけ
596Name_Not_Found:2008/08/13(水) 22:39:21 ID:???
>>595
条件は、上記の.cnを弾くってのと中国語全般を弾く、にしてる。
だけど、弾かれたやつは.jpだし日本語環境だし。
弾かれる条件じゃないのに。
597Name_Not_Found:2008/08/13(水) 23:06:41 ID:???
ヒント:ブラウザの言語設定は複数指定可能
598Name_Not_Found:2008/08/13(水) 23:48:46 ID:???
てか国内にも中国人そりゃいるだろ
599Name_Not_Found:2008/08/13(水) 23:58:09 ID:???
中華サイトよく行ってた頃はzh入れてたよ
言語にjaあったら串さしても入れなかったりしやがんの
で消してた事もあった
600Name_Not_Found:2008/08/23(土) 07:12:23 ID:nK27YnYJ
RewriteRuleについての質問です。

example.html?param1=aaa&amp;param2=bbb というURLの、"&amp;"部分のみを"&"に置換して
example.html?param1=aaa&param2=bbb とリライトしたく、いろいろ試してみたのですが
クエリの引継ぎ(特にparam2=bbbの部分)がどうしてもうまくいきません。

初歩的な質問ですみませんが、どなたか教えていただけないでしょうか?
よろしくお願い致します。
601Name_Not_Found:2008/08/23(土) 07:26:26 ID:zQzYbo5F
質問の前にまずは全角英数を改めよう。
そうすればつまらん質問もなくなる。

#どうしてドザは全角英数を使うかな・・・・・
602Name_Not_Found:2008/08/23(土) 07:28:56 ID:???
どうでもいいとこに突っ込むなよ
603Name_Not_Found:2008/08/23(土) 07:47:27 ID:zQzYbo5F
>>602
>example.html?param1=aaa&amp;param2=bbb
こんなことかいてりゃー100%エラー出るのは当然だろう?
ドザが質問してその半数以上は全角と半角の区別がつかないのが原因だよ?
604Name_Not_Found:2008/08/23(土) 09:42:06 ID:???
&
605Name_Not_Found:2008/08/23(土) 09:47:29 ID:???
え、このレスのためわざと全角にしてんじゃないの?
&amp;これ半角で書いたら2ちゃんは半角&で表示してくれちゃうんですけど
606Name_Not_Found:2008/08/23(土) 10:36:22 ID:???
>>605
だっただ、その旨書いて質問しないと。
意図的に全角なのか、書き間違いなのかがわかんないじゃん。
607Name_Not_Found:2008/08/23(土) 11:49:24 ID:???
>>606
そんくらい気づけよ。分からないのはお前だけ。
608Name_Not_Found:2008/08/23(土) 12:11:34 ID:???
>>607
質問者が逆ギレかw
609Name_Not_Found:2008/08/23(土) 12:37:10 ID:???
&amp; と書き込みければ &amp;amp; と入力すりゃいいんだよ
頭つかえ
610Name_Not_Found:2008/08/23(土) 14:21:06 ID:???
600の者です。紛らわしい書き方をしてしまい、申し訳ございませんでした。
ちなみに607の方ではありません。
改めて質問させていただきます。

RewriteRuleについての質問です。

example.html?param1=aaa&amp;param2=bbb というURLの、"&amp;"部分のみを"&"に置換して
example.html?param1=aaa&param2=bbb とリライトしたく、いろいろ試してみたのですが
クエリの引継ぎ(特にparam2=bbbの部分)がどうしてもうまくいきません。

どうかご教授の程お願い致します。
また、書き方についてアドバイスを頂いた方々、どうもありがとうございました。
611Name_Not_Found:2008/08/23(土) 15:01:43 ID:fLJnaJQD
全角と半角のミスじゃないってことか
612Name_Not_Found:2008/08/23(土) 15:03:58 ID:???
(´・ω・) カワイソス
613Name_Not_Found:2008/08/23(土) 15:42:55 ID:???
そもそもなぜ RewriteRule で&amp; を & に変換しなくちゃならないの?
そんなバカなリクエスト投げるほうが悪いだろ。
614Name_Not_Found:2008/08/23(土) 15:44:33 ID:???
mod_rewriteはURLの書き換えであって、クエリーの書き換えじゃないと
思うのだが…
クエリーを受ける側のスクリプト(PerlなりPHPなり)で、クエリーを処理
した方が早いんじゃないかな?
615Name_Not_Found:2008/08/23(土) 15:47:40 ID:???
むしろクエリの書き換え以外つかわないが。
616Name_Not_Found:2008/08/23(土) 20:33:25 ID:3+LgHwlR
>>600 の者です。
>>613 さんのおっしゃるとおり、バカなリクエストかもしれません。

XML形式のサイトマップなどからのアクセスで、>>610のように"&"ではなく"&amp;"と入力されると
param2をパラメータとして認識しなくなってしまったので、&に置換できないかと考えたのです。

スレの雰囲気を悪くしてしまい、本当に申し訳ございませんでした。
617Name_Not_Found:2008/08/23(土) 21:37:49 ID:???
>>616
試してはいないけど、

RewriteCond %{QUERY_STRING} (.*)&(.*)
RewriteRule ^(.*) $1?%1&%2 [N]

を他のRewriteCondとRuleのセットより上に書けばよい気がするわぁ?
でも、.htaccessでは変更できないLimitInternalRecursionに支配されて
書き換えられる数の限界が低い気もするわぁ。

スレの雰囲気なんて質問者が気にするもんじゃないよぉ。
618Name_Not_Found:2008/08/23(土) 21:39:07 ID:???
&の餌食になったわぁorz
Condの&は正しくは
RewriteCond %{QUERY_STRING} (.*)&amp;(.*)
よぉ。
619Name_Not_Found:2008/08/23(土) 22:39:09 ID:???
>>617,>>618

>>616 です。
上手くいきました!何とお礼を言っていいのか・・・
アドバイス&優しいお言葉をどうもありがとうございました!
620Name_Not_Found:2008/08/24(日) 05:59:03 ID:???
特定のリファラからバナーがインライン表示された場合だけ
別のバナーを表示させたいのですが、

RewriteEngine on
RewriteCond %{HTTP_REFERER} ^www.example.com$
RewriteRule ^banner¥.gif$ ^banner1¥.gif

これで問題ないでしょうか?
要修正箇所等、あればご指導ください。
よろしくお願いします。
621Name_Not_Found:2008/08/24(日) 14:11:34 ID:???
アフィ厨はスルー。
622Name_Not_Found:2008/08/24(日) 14:22:47 ID:???
>>620
それで試してみたのか?
623Name_Not_Found:2008/08/24(日) 15:27:05 ID:???
>>622

他の閲覧者やリンク先に迷惑がかかるのが怖いので、
まだ試していません。

明らかにダメなところがあれば、ご指摘くらいはいただけるかと
書き込んだ次第です。
624Name_Not_Found:2008/08/24(日) 17:14:29 ID:???
>>623
サブディレクトリ作って、その中で試してみたら?
625Name_Not_Found:2008/08/24(日) 17:57:26 ID:???
profile.cgiというファイルを使うアクセスを制限したいのですが、
例えば
/profile.cgi?_v=1215692709
/profile.cgi?key=1215692709&tpl=view&label=0&mode=ev
というのには皆自由にアクセスして欲しいのですが、
/profile.cgiという、大元にある機能はIDとパスワードがない人には使って欲しくないのです。

ファイルへのアクセス制限をかけるとすべての機能にパスワードが必要になってしまうので、
おそらく特定のURLのみへのアクセス制限をかけれるようにすればよいのですが、htaccessでそうゆうことはできませんか?
626Name_Not_Found:2008/08/24(日) 18:21:31 ID:???
>>625
profile.cgiで処理したほうが楽なんじゃない?
627Name_Not_Found:2008/08/24(日) 18:58:11 ID:???
さっさと答えろクズ
628625:2008/08/24(日) 19:30:38 ID:???
htaccessの知識はあるのですが、cgiの知識がほとんどないもので・・・
もちろん自分で改造などができれば一番いいのですが。
htaccessでurlを指定してパスワードロックという方法はありませんかね?
629625:2008/08/24(日) 19:39:56 ID:???
あ、自己解決しました
630Name_Not_Found:2008/08/25(月) 08:58:33 ID:???
すみません、現在こんな感じで転送してるのですが、

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.45\.6\.7
RewriteRule xxx.html http://www.yahoo.co.jp

単発リモホじゃなくて範囲指定での記述はどうやれば良いのでしょうか。

たとえば123.45.6.7のレンジが123.45.6.0/7だったとして
末尾をそのまま、

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.45\.6\.0/7
RewriteRule xxx.html http://www.yahoo.co.jp

と記述しても転送できませんでした。

ご存じの方いらっしゃいましたらどうかご教示ください
631Name_Not_Found:2008/08/25(月) 10:00:37 ID:???
>>630
RewriteCond %{REMOTE_ADDR} ^123¥.45¥.6¥.
じゃだめかい?
632Name_Not_Found:2008/08/26(火) 06:09:26 ID:???
123.45.6.0/7(あり得ない)での質問も困るけど /24 な回答しても。

122.0.0.0/7 だとして 122.0.0.0 - 123.255.255.255 なので
RewriteCond %{REMOTE_ADDR} ^12[23]\.
とか言われても参考にならないと思う。

よくわからなくても書けるのは x.0.0.0/8, x.y.0.0/16, x.y.z.0/24 ぐらい。
633Name_Not_Found:2008/08/26(火) 21:12:48 ID:RrPhJu88
mod_rewriteの設定で躓いています。アドバイス頂ければ幸いです。

CGIを置いている場所が http://example.com/blog/blogtool.cgi
で、見せたいURLが http://example.com/
のとき、.htaccess を http://example.com/ に設置して

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/ - [L]
RewriteRule ^(.*)$ blog/$1
RewriteRule ^adiary/(\w*)\.cgi - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.*)$ blog/blogtool.cgi/$1 [L]

と記述したところ、うまく表示されませんでした。
634Name_Not_Found:2008/08/26(火) 22:38:43 ID:???
すいません、6行目訂正です。adiary→blog
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/ - [L]
RewriteRule ^(.*)$ blog/$1
RewriteRule ^blog/(\w*)\.cgi - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^blog/(.*)$ blog/blogtool.cgi/$1 [L]
635Name_Not_Found:2008/08/30(土) 17:25:49 ID:IQIwaifS
RewriteBase でトップとばすのは/だけでいいんだっけ?
636Name_Not_Found:2008/08/31(日) 05:00:51 ID:???
>>635
だめ
637Name_Not_Found:2008/09/04(木) 08:02:57 ID:???
/
/a

というディレクトリがあって、

/a/.htaccessは
/hoge.txtを
見に行きなさい
というような記述というのは出来ますか?
638Name_Not_Found:2008/09/04(木) 15:29:31 ID:???
意味不明。

.htaccessファイルにアクセスがあったら
上の階層のtxtファイルに飛ばすってこと???
639Name_Not_Found:2008/09/04(木) 16:05:04 ID:???
>>638
.htaccessの中で.htaccessの内容をincludeしたい 
って説明すれば分かるかな?
640Name_Not_Found:2008/09/04(木) 16:23:25 ID:???
それをやれたらまずいだろ・・・
641Name_Not_Found:2008/09/04(木) 16:40:48 ID:???
ディレクトリがいっぱいあって、
その.htaccessを1個1個、
書き変えたくないんです。
だから、1個のファイルを
書き変えれば、複数の
.htaccessがいっぺんに
書き換わらないかなぁ
と思ったからです。
642Name_Not_Found:2008/09/04(木) 16:46:49 ID:???
同じ設定なら継承をうまく使えばいいんでないの?
643641:2008/09/04(木) 16:49:31 ID:???
>>642
どうやってやるんですか?
教えてください。
644Name_Not_Found:2008/09/04(木) 16:50:57 ID:???
何もしなくても下位ディレクトリに継承される・・・
645641:2008/09/04(木) 16:56:31 ID:???
調べてみましたが、
やりたい事が逆ですね。

例えば/は誰が見てもいいけど、
/a/はdeny from 192.168.0.1とか
制限をかけたいのです。
646Name_Not_Found:2008/09/04(木) 17:01:18 ID:???
647641:2008/09/04(木) 17:12:48 ID:???
>>2-3は見たんだけど、
解決できなかった。

もしかして、見落としてる?
648Name_Not_Found:2008/09/04(木) 17:21:09 ID:???
よめば無理だとわかるはずってことじゃね

cgiで.htaccessを書き換えられるしくみでも自分で実装汁

649641:2008/09/04(木) 17:26:08 ID:???
>>648
なるほど。
ちょっと無理かなぁって思ってたの。
OS側でシンボリックリンク(ハードリンク)を使って
やれば出来るのは分かっていたけど、
あまりのディレクトリの多さに、全部の
ハードリンクが作成できないのよ
650641:2008/09/04(木) 17:26:52 ID:???
あ、自宅鯖なんです。
651Name_Not_Found:2008/09/04(木) 17:29:10 ID:???
SetEnvIf なり mod_rewrite なりで Request_URI を見て、適宜挙動を変えるようにすれば、
上位ディレクトリにひとつ .htaccess を置くだけで解決しそうな気もするんですが、
そういうのが使えない設定だったりするんでしょうか。
652641:2008/09/04(木) 17:31:15 ID:???
>>651
自宅鯖なんでなんでもありです。
Request_URIで調べてみます。
653641:2008/09/04(木) 17:46:26 ID:???
無理だ。
deny fromは、

all|host|env=env-variable

なんで、

hostとenvのand条件は出来ない。


と思う。
654Name_Not_Found:2008/09/04(木) 17:53:06 ID:???
>>653
or しかできないのは確からしいですが、フラグを反転させれば割といけたりしますよ。たとえば、

SetEnvIf Request_URI "^/[^/]*$" root_dir
SetEnvIf Remote_Addr ".*" allow_ip
SetEnvIf Remote_Addr "^(192\.168\.0\.1|192\.168\.0\.2)$" !allow_ip

order deny,allow
deny from all
allow from env=allow_ip
allow from env=root_dir

こんな風に書けば、ルートディレクトリにアクセスする人、もしくは拒否する IP 以外の人だけを受け入れられるはずです。
ただ、自分でもよくこんがらがるので、間違っている可能性もあります。その時はごめんなさい。
655641:2008/09/04(木) 17:58:15 ID:???
>>654
レス、ありがと。
飯食ってからじっくり考えるわ。

ありがと!
656641:2008/09/04(木) 18:54:51 ID:???
1: SetEnvIf Request_URI "^/[^/]*$" root_dir
2: SetEnvIf Remote_Addr ".*" allow_ip
3: SetEnvIf Remote_Addr "^(192\.168\.0\.1|192\.168\.0\.2)$" !allow_ip
4: order deny,allow
5: deny from all
6: allow from env=allow_ip
7: allow from env=root_dir


正規表現不得意だけど、

1行目は、URIが/で始まっていて、/以外の文字列がなにかが有り、それで終わってる物をtrue。
2行目は、リモトアダが、なんでもtrue。
3行目は、リモトアダが(192.168.0.1または192.168.0.2)で始まっている物以外を、true。

で、

6行目は、まず、リモトアダが、((192.168.0.1または192.168.0.2)で始まっている物以外)を、許す。
7行目は、ルートアドレスを許す。

って意味かな???

3行目をプログラムで増やしたいんだけど、
SetEnvIf Remote_Addr "^(192\.168\.0\.1)$" !allow_ip
SetEnvIf Remote_Addr "^(192\.168\.0\.2)$" !allow_ip
SetEnvIf Remote_Addr "^(192\.168\.0\.3)$" !allow_ip
と、増やしていけばいいのかな?
657Name_Not_Found:2008/09/04(木) 18:59:53 ID:???
数にもよりますが、それで問題ないと思います。括弧は要らなかったかも。
658Name_Not_Found:2008/09/06(土) 23:31:19 ID:???
相談です。htaccessファイルを自作してうpするとエラーが出てしまいます。
MacOS10.3のテキストエディットで作成、エンコーディングはShiftJIS、サーバーはribbon、
htaccessサイトにある既製のファイルをupしてもエラーにはならないのでテキスト作成の際の
設定に問題があるのかと思うんですが、全然わからず。
念のため記述内容は以下のとおりです。

#htaccess閲覧防止
AddHandler cgi-script htaccess
order allow,deny
allow from all
deny from ac.jp
deny from ed.jp
#百度
deny from 122.152.128.0/23
deny from 202.96.0.0/12

(denyfrom中略)

SetEnvIf Referer "ime.nu" no
SetEnvIf Referer "ime.st" no
#bbspinkクッション
SetEnvIf Referer "pinktower.com" no
SetEnvIf Referer ".bbspink.com" no
# Googleから立入禁止
SetEnvIf Referer "^http://www¥.google¥..*/search" shutout
SetEnvIf Referer "^http://images¥.google¥..*/images" shutout
# 百度から立入禁止
SetEnvIf Referer "^http://baidu¥." shutout
SetEnvIf Referer "^http.*¥.baidu¥." shutout

よろしくおねがいします。
659Name_Not_Found:2008/09/06(土) 23:38:43 ID:???
>>658
見当はずれのことを言っていたらごめん。
500エラーが返ってきてますか?

ribbonはfaqで
AddHandler など FileInfo , その他のグループのコマンドは動作せずに 500 エラーが返ります。
といっているので
AddHandler cgi-script htaccess
がひっかかってるのかな、と思ったんだけど。
660Name_Not_Found:2008/09/06(土) 23:40:36 ID:???
faqの引用、>>659だと意味がわからんな。


Q: .htaccess は使用できますか?
A: ご使用になれます。ただしご使用になれるのは
AuthConfig Limit Option グループに属するコマンドと、
SetEnvIf,SetEnvIfNoCase です。
そのため AddHandler など FileInfo , その他のグループのコマンドは
動作せずに 500 エラーが返ります。詳しくはApache のマニュアルをご覧ください。

661Name_Not_Found:2008/09/06(土) 23:41:23 ID:???
 よ ほ う 診  医 精 一 忠 は あ ま
 さ  う け 察 .者 神 度 告 て き さ
 そ が .た を  の 科    す た れ し
 う           の    る な     く
 だ                が  :
、___          ___       :
   (_____,/::::::::::::`ヽ、
          /::rー‐-ー-、:::l__,   , -─
          _|:lr_‐、 ̄-=、l:::|   //
        /)Y ´゚`ri 、'゚゙' |/,〉 /´
        |` |l /ヽ _,ノl |ノ|
        ヽ_| '-=ニ=-l !/
         /|ハ  -‐  /\
   _,. -ー'`´ l l \    /'/! l`ー-、_
662658:2008/09/07(日) 00:41:15 ID:???
>>659
数字ではないエラーが返って来ます(こういうことってあるんでしょうか?)
試しに
order allow,deny
allow from all
deny from〜〜〜
だけのファイルをアップしたときも同様のエラーでした。
今書き込んでいるのと別PCのためにエラーに何て書いてあったかは
確認できないんですが、数字のないエラーでした。
663Name_Not_Found:2008/09/07(日) 00:44:55 ID:???
<Files ~ "xxxx.cgi" "yyyy.cgi">
order deny,allow
deny from all
</Files>

xxxx.cgi と yyyy.cgi を規制したい場合、上記のような書き方ではダメですか?
664Name_Not_Found:2008/09/07(日) 09:04:43 ID:???
>>659
AddHandlerを削ってmiで書いたらいけました。
ありがとうございました!
665 ◆Gb9xp7nPOw :2008/09/11(木) 07:07:21 ID:7ucun2v3
xxxxxx.nas926.p-hokkaido.nttpc.ne.jp
xxxxxx.nas924.p-hokkaido.nttpc.ne.jp
といった方面からのアクセスを特定のURLへ転送したいのですが、
調べてみたところ、上のような範囲のホストに該当する場合は、
\.nas9\d+\.p-hokkaido\.nttpc\.ne\.jp
のようにくくるのが良さそうだという事が分かりました。

そこで、以下のように転送するよう書式を書いてみたのですが、
----
RewriteEngine on
RewriteCond %{REMOTE_HOST} \.nas9\d+\.p-hokkaido\.nttpc\.ne\.jp$ [NC]
RewriteRule ^.*$ http://example.com/ [R,L]
----
もっと効率のよい書き方や転送方法はありますでしょうか?
また、上記がそもそも間違っていればご指摘いただきたく、
よろしくお願いいたします。
666Name_Not_Found:2008/09/12(金) 15:56:56 ID:f8uYac1D
現在、WEBサイトの移転を行っております。
今までのサーバーではデータはルートディレクトリに
置いてありました。今回は/htmlというフォルダを作成し、そこに
データの移動を考えております。

ただ問題があり、リンクURLの指定に<a href="/contens/***.html">のように
ルート指定での箇所が多数あり、/htmlに移すとリンク切れになって
しまいます。

このような場合、.htaccessなどによりルート指定を変更することは
可能なのでしょうか?
667Name_Not_Found:2008/09/15(月) 17:27:33 ID:???
>>666
apacheの mod_rewrite を .htaccess で設定だお。正規表現でだお。
668Name_Not_Found:2008/09/15(月) 17:43:19 ID:???
>>665
IPが210.165.243.114とかなんで
RewriteCond %{REMOTE_ADDR} ^210\.165\.243\. [NC]
とかでIPでマッチさせれば、能率アップするお
669Name_Not_Found:2008/09/16(火) 16:40:16 ID:5WZCYX5q
素人の質問で申し訳ありません。

私が公開しているウェブサイトについて,会社の同僚のアクセスを禁止しようと思っています。

単純に彼のアクセスを禁止するだけなら簡単なのですが,私も彼と同じIPアドレスであるため,単純にやってしまうと私もアクセスできなくなってしまいます。
そこで,私はIEでないブラウザを使って,IPで弾いておいて,弾かれたIPに該当しても,IE以外の(または特定の)ブラウザ使用者は閲覧できる,という様にしたいと考えています。

試しに見よう見まねでやってみたのですが,私もアクセス禁止になってしまいました。対処法をお教え下さい。
SetEnvIf User-Agent "Sleipnir" allow_ua
order allow,deny
allow from all
deny from XXXX
allow from env=allow_ua

670Name_Not_Found:2008/09/16(火) 16:49:05 ID:???
無言でそんなことをするよりも本人に「私のサイトへ来ないでください。」って俺なら言う。
ちゃんと人とコミュニケーションとったほうがいいですよ・・・・
そんな無言で嫌がらせするよりも嫌ならいやと人に言える人になってください。
671Name_Not_Found:2008/09/16(火) 16:52:09 ID:???
>>669
無理っぽいけど。

SetEnvIf User-Agent "Sleipnir" allow_ua
order deny,allow
deny from all
allow from env=allow_ua

こうするか、パスワード認証するしかないんじゃないか?
672Name_Not_Found:2008/09/16(火) 16:56:11 ID:???
同僚がSleipnir使い出したらどうすんだろ
673Name_Not_Found:2008/09/16(火) 17:01:45 ID:5WZCYX5q
>>671
ありがとうございます。
IPアドレスが××でブラウザが○○のものは弾くという,AND条件の設定はできないのでしょうか?
674Name_Not_Found:2008/09/16(火) 17:16:25 ID:???
>>673
SetEnvIfAllで調べてみたら?

うまくできるか分からないけど、

SetEnvIf User-Agent "Sleipnir" allow_ua
SetEnvIf Remote_Addr xxx.xxx.xxx.xxx allow_ra
SetEnvIfAll OK 1 allow_ua allow_ra
order deny,allow
deny from all
allow from env=OK
675Name_Not_Found:2008/09/16(火) 20:09:20 ID:???
>私も彼と同じIPアドレスであるため
なぜに?同居人?会社でネットして遊んでるわけ?
676Name_Not_Found:2008/09/16(火) 21:04:17 ID:???
レオパレスじゃねーの
677Name_Not_Found:2008/09/17(水) 00:31:37 ID:???
認証パス入り口でかけた方が完全に安全だと思うけどね
678Name_Not_Found:2008/09/17(水) 07:03:45 ID:Kmkp0UsA
JavaScriptの外部ファイル(*.js)をダウンロードされない
ようにする方法をご存じのかた教えて下さい。
679Name_Not_Found:2008/09/17(水) 07:45:38 ID:???
そもそも、ブラウザからアクセスされない(=ダウンロードされない)状態だと、
ブラウザがJavaScriptを実行してくれませんが・・・
680Name_Not_Found:2008/09/17(水) 09:38:37 ID:???
>>678
679も書いてるとおり、無理だね。
どうせたいしたJavaScriptじゃないだろw
681 ◆Gb9xp7nPOw :2008/09/17(水) 11:03:21 ID:tYhq7142
>>668
IPアドレスで弾いておけば確かに能率アップさせられそうですね。
効率のよい方法を教えていただきましてありがとうございました。

関連してひとつ気になったのですが、
今回転送したい対象をアクセスログで見ていますと、
IPアドレスではなく、多くはホスト名でアクセスしにきていました。
このようなホスト名でアクセスしにくる場合に備えて、
>>665のようにホスト名でも併記しておいた方がいいでしょうか?
または、ホスト名に該当するIPアドレスで転送するよう書いておけば、
IPアドレスに該当する(逆引き)ホスト名も転送されるでしょうか?

IPアドレスからホスト名を導き出す逆引きに失敗するか、
そもそも逆引き名がDNSに登録されていない場合もあると思ったので、
IPアドレスだけだと上手く転送されない時があるかと疑問が残りました。
誤解している事があればご指摘いただきたくよろしくお願いいたします。
682Name_Not_Found:2008/09/17(水) 11:18:49 ID:???
>>681
apacheの設定で、HostnameLookupsがOnになってるからでしょ
IPアドレスとホスト名と、どっちが先かは、もっと勉強したほうが良いね
683 ◆Gb9xp7nPOw :2008/09/17(水) 12:15:10 ID:???
凄まじいほどにあほな質問をしてしまった事に気が付き…
ホスト名でアクセスしてくるわけがないという事、
なぜ抜けていたのか自分で自分が信じられません…

>>682
HostnameLookupsの設定について確認し理解できました。
ヒントを与えてくださってありがとうございました。

>>665からの質問は全てクリアになりました。
回答してくださった皆様、本当にありがとうございました。
684Name_Not_Found:2008/09/17(水) 13:57:46 ID:???
まさに恥の上塗りだな。
685Name_Not_Found:2008/09/19(金) 02:55:20 ID:???
>>678

リファラーで弾けばいいんじゃん
686Name_Not_Found:2008/09/19(金) 08:21:08 ID:???
>>685
直リンしか弾けないじゃん
687Name_Not_Found:2008/09/19(金) 12:40:27 ID:???
>>678
JavaScript と同等の機能を PHP などに移し変えて実行させる

JS だとどうしてもソースが見えてしまいますから、
ソースが見える=ダウンロードされると思って
JS を使い続けるならそういった事はあきらめるしかないと思います
688Name_Not_Found:2008/09/21(日) 20:46:57 ID:???
↓現在設置している.htaccessの一部です
SetEnvIfNoCase User-Agent "Crawler" shutout
SetEnvIf User-Agent "http" shutout

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

この.htaccessの上二行の設定を維持しながら
mixi-crawler/2.00 (http://mixi.jp/)とmixi-mobile-converter/1.0 (http://mixi.jp/)からのアクセスは許可したいのですが
どうすればよいのでしょうか?
689Name_Not_Found:2008/09/21(日) 21:57:38 ID:???
>>688
気合いだ、気合いだ、気合いだ!
690Name_Not_Found:2008/09/21(日) 22:25:45 ID:???
>>689
ありがとう。
SetEnvIfNoCase User-Agent "Crawler" shutout
SetEnvIf User-Agent "http" shutout

SetEnvIf User-Agent "http://mixi.jp/" !shutout

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

で許可できました。
691Name_Not_Found:2008/09/23(火) 23:09:16 ID:???
済みません、素人なりに色々と調べて設置してみたのですが

日本語使用者だけをアクセス可能にする記述

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



特定のIPを弾く記述

order allow,deny
allow from all
deny from ×××.××.××.×××

の組み合わせは矛盾が生じてしまうので
やはり出来ないのでしょうか?
692Name_Not_Found:2008/09/24(水) 01:01:07 ID:???
>>691
(A) 日本語使用者だけをアクセス可
(B) 特定の IPアドレスを deny

上記の設定を施した状態で、
・自分のブラウザの使用言語を日本語 / それ以外に
・設定(B)に自分のアクセス元 IPアドレスを追加 / 除去
というように
設定を切り替えて検証すれば分かると思うんだけどどう?
693Name_Not_Found:2008/09/24(水) 02:01:16 ID:???
>>692
どうも有り難うございます。
その方法はこちらに書き込む前に試してみたのですが、
(A)(B)、どちらか個別のみの場合は正常に機動するのですが
両方を記述した場合、403エラーにしかならないんですよ。

内部エラーではなかったので
Deny from all とallow from all の両方を描くと矛盾が出てしまうから駄目なのかと思ったのですが・・・
694Name_Not_Found:2008/09/24(水) 05:52:16 ID:???
Order Allow,Deny
Allow from env=Lilith
Deny from 127.0.0.0/8

上のを軽い気持ちで Order Deny,Allow にすると制限の意味がほぼなくなる。
おまけ。
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order
695Name_Not_Found:2008/09/24(水) 18:52:47 ID:???
>>691

SetEnvIf Accept-Language "^[^(ja)]$" non_ja

order allow,deny
allow from all
deny from env=non_ja
deny from 弾きたいIP

とかじゃいかんのか?
とうちのねこが申しております。
696691:2008/09/25(木) 00:38:58 ID:???
>>694
>>695
どうも有り難うございます。
試してみたのですが、694さんの方法ではサーバーエラーになってしまい、
695さん宅のねこさんの方法ではIPは弾けるのですが、
日本語以外の設定言語を弾く方がスルーされてしまう結果になってしまいました。

その後684さんの書いて下さったおまけのサイトや他の
.htaccess記述サイト等を回り色々と試してみたのですが、
やはり日本語設定のみOK&特定のIPを弾く方法が見つからず
結局

order allow,deny
allow from all
deny from 弾きたいIP
deny from 弾きたい国のドメイン

という事でなんとか落ち着きました。
色々教えて下さいまして本当にどうも有り難うございました。
697Name_Not_Found:2008/09/26(金) 10:47:01 ID:???
.htaccessをおくと500エラーになります。
内容は空でもなんでもエラーに。
どうすればいいでしょうか。
698Name_Not_Found:2008/09/26(金) 15:24:12 ID:???
質問の仕方から学び直してきて下さい。
699Name_Not_Found:2008/09/28(日) 22:10:15 ID:U1BJHwxa
質問です。

現在、動的ページを静的ページに変換するために以下のように書き換えています。
RewriteRule ^test([0-9]+)\.html$ test.php?page=$1&%{QUERY_STRING}

その上で、http://www.example.com/test.php?page=20』のように
『page』というパラメータを含むphpファイルへの直接的なアクセスの場合には
http://www.example.com/error/へ飛ばすことは可能でしょうか

RewriteCond %{QUERY_STRING} ^(.*)page=(.*)$
RewriteRule ^(.*)\.php$ /error/? [R=301,L]
として試してみたのですが、静的ページに変換している『test20.html』へのアクセスも
『error/』へ飛ばす対象になってしまい、上手くいきませんでした。

ちょっとややこしい質問の書き方で申し訳ございませんが、
ご存知の方がいらっしゃいましたら、どうかご教示ください。
よろしくお願いいたします。
700Name_Not_Found:2008/09/29(月) 22:55:25 ID:K179EK6s
ErrorDocument 404 http://〜/404.cgi

と書いてファイルが存在しない場合は全て404.cgiへ飛ばして
いるのですが、HTML内で呼び出しているCSSや画像ファイルが
存在しないものであった場合、当然ですが404.cgiを呼んで
しまいます。

cgi、htm、htmlからの呼び出しのみ存在しなかったものは
ErrorDocument 404 http://〜/404.cgi
を使用したいのですが、実現する方法はございますでしょうか。

もしありましたらご教示いただけますと幸いです。
宜しくお願いいたします。
701Name_Not_Found:2008/09/29(月) 23:47:21 ID:???
>>700
htmlもしくは/で終わる時にのみ表示するように、ちゃんと条件設定すればよろし
702Name_Not_Found:2008/09/30(火) 01:33:07 ID:???
>>701
ご返答有難うございます。

その条件設定内容等、可能であれば詳細教えて
いただきたいのですが、宜しければお願い
いたします。。
703Name_Not_Found:2008/09/30(火) 01:37:35 ID:???
>HTML内で呼び出しているCSSや画像ファイルが存在しないものであった場合
まずこれがおかしいだろ
704Name_Not_Found:2008/09/30(火) 07:25:29 ID:???
>>702
丸投げは禁止ですw
705Name_Not_Found:2008/10/01(水) 19:23:23 ID:???
htaccessでアクセス制限をしているのですが、何度もパスワード入力画面が出てきます。
一回目の入力で目的のページは表示されず、パスワード入力画面を消すと表示されます。
ロリポップで自動生成しているので、理由がわからず困ってます。
もしお分かりになる方がいらっしゃいましたら教えてください。お願いします。
706Name_Not_Found:2008/10/01(水) 19:29:03 ID:???
>>705
htaccessでパスワードによるアクセス制限してんだろ?
だったら当たり前だろ?あほか?
707705:2008/10/01(水) 20:37:28 ID:???
>>706
なるほどそういう物なのですね。
ありがとうございました。
708Name_Not_Found:2008/10/09(木) 04:15:26 ID:0YhbB2pr
うまくいかないので質問させてください。
共有レンタル鯖で、独自ドメイン(example.jp)のサブドメイン(hoge.example.jp)を設定し、
サブドメインへのアクセスは特定のディレクトリ(/home/hoge/)に表示したいのですが、
サブドメインへのアクセスは親ドメイン(/home/)が表示されてしまいます。
鯖の仕様で、本来子ドメインはすべて親ドメインと同じものが表示されるのですが、
.htaccessで特定ディレクトリの内容を子ドメインで表示することが可能となっています。
以下、試した.htaccessの内容です。

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

ググっていろいろな解説ページをみて、自分で書いたのですが・・・
おかしなところをご教授していただけたらと思います。
ちなみにwwwをつけるために書いた以下の内容はうまく表示されています。

RewriteCond %{HTTP_HOST} ^(www\.example\.jp)(:80)? [NC]
RewriteRule ^/(.*) http://example.jp/$1 [R=301,L]
709Name_Not_Found:2008/10/11(土) 11:27:41 ID:PEf27zvt
一度あげます
710Name_Not_Found:2008/10/11(土) 22:41:38 ID:GvG3XZlz
iPhone/iPod Touch用のページをhttp://xxx.xxx.xxx/i/に作りました
http://xxx.xxx.xxx/ にiPhone/iPod Touchの人が着た場合
自動でhttp://xxx.xxx.xxx/i/に飛ばせようと、.htaccessに
以下のようにしました。

# 元からあった記述
AddType text/x-server-parsed-html .shtml .html .htm
AddType application/x-httpd-cgi .cgi .pl
Options ExecCGI Includes

# 以下を追加
RewriteEngine on
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} iPod [OR]
RewriteCond %{HTTP_USER_AGENT} iPhone
RewriteRule ^$ /i/index.html [R]

しかし、http://xxx.xxx.xxx/にアクセスすると
PCからでもiPhoneからでもInternal Server Errorになってしまいます
何が悪いのでしょうか
711Name_Not_Found:2008/10/11(土) 22:50:59 ID:???
>>710
これだと、
http://xxx.xxx.xxx/i/
に来た時も、
http://xxx.xxx.xxx/i/
にリダイレクトして、無限ループしないか?
712Name_Not_Found:2008/10/12(日) 00:24:32 ID:???
>>710-711
>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)

xxx.xxxは存在しないけど、一応ドメイン問合せと再帰問合せが発生して
ネットワークリソース使うんだからさ…
何のために例示用のドメインが用意されてるのか少しは考えて欲しいし、
テンプレで誘導してることくらいは守ろうよ…('A`)
713Name_Not_Found:2008/10/12(日) 00:58:09 ID:???
>>712
exampleてサイトを作ってる人の大半が知らないんだよね。
問題が発生してぐぐったりしていろんなサイト見てると必ずexampleってのは出てくるわけで
なんだこれ?って疑問に普通の人は思うんだけどな。
サイトを作る人には、全角英数を使わない・例示にはexampleを使うこと・IEで確認しながらサイトを作らない の最低3つは教え込ませないと駄目だな。
714Name_Not_Found:2008/10/12(日) 01:23:58 ID:pJAbbTeB
どなたか>>708を・・・
715Name_Not_Found:2008/10/12(日) 01:28:17 ID:???
example.*が良く出てきても、
「みんな勝手に使ってるけど、ドメイン持ってる人に迷惑じゃないか、少しは頭使って考えろ!
登録されてなさそうなのを使えば、誰も迷惑を被らないだろうが!全く、マナーの無さが気分悪い。プンスカ!」
とか思うのが「普通」の人。
716Name_Not_Found:2008/10/13(月) 23:24:52 ID:Jqbfe9wU
素人なのですが、質問させてください。

今、特定のドメインからのアクセス制限はこうやって書いています。
order allow,deny
allow from all
deny from .制限したいドメイン

そして閲覧を制限したいUAについては、こうやっています。
SetEnvIf User-Agent "制限したいブラウザ名" deny_ua
order allow,deny
allow from all
deny from env=deny_ua

これを組み合わせて、「このドメインの中で、このブラウザだけ制限」と
するにはどうやって書いたらいいでしょう。
つまり、そのドメインでも別のブラウザには閲覧を許可したいのです。
どなたか、よろしくお願いいたします。
717Name_Not_Found:2008/10/13(月) 23:47:06 ID:???
>>716
*.test.com というホストが IE7 を使っていて、
その環境からのアクセスだけに制限をかける場合、
例えば下のようにしています
http://www.example.com/ へ飛ばしています)

RewriteEngine on
RewriteCond %{REMOTE_HOST} \.test\.com$ [NC]
RewriteCond %{HTTP_USER_AGENT} "^Mozilla/4\.0 \(compatible; MSIE 7\.0;"
RewriteRule ^.*$ http://www.example.com/ [R,L]
718Name_Not_Found:2008/10/15(水) 11:04:25 ID:???
REMOTE_HOSTはたいていの環境で取れない設定だし
Allow/Denyにホスト記述して引かせても常時取れるわけじゃない。
719Name_Not_Found:2008/10/16(木) 13:13:41 ID:oaZMgGBx
創価キチガイの会社の話

創価学会入らぬなら昇給差別
「創価学会に入信しなければ昇給で差別」
「サービス残業で聖教新聞をつかって『座談会』」。
そんな経営をすすめた会社が、六月に不渡りを出し倒産しました。
社員約四十人を何の前触れもなく解雇したこの会社は、
現在、労働組合が求めている六月分の給与支払いなどを拒否し続けています。
http://d.hatena.ne.jp/muffdiving/20070824/1187879767


720Name_Not_Found:2008/10/17(金) 17:35:51 ID:ZuIU0YtL
htaccessで国内のアクセスを制限して自分のアクセスだけを許可しようとしています。

http://bestag.okwave.jp/qa4079700.html
上記のアドレスを参考してhtaccessを作成し、

http://www.akakagemaru.info/port/xpIPKOTEI.html
上記のアドレスを参考してIPアドレスを固定しましたが、
自分のIPアドレスが変わってしまいアクセス出来なくなってしまいます。

国内のアクセスをブロックし、自分のアクセスだけを許可する方法を
教えていただけないでしょうか?
721Name_Not_Found:2008/10/17(金) 17:56:20 ID:???
自分だけならベーシック認証でいいんじゃないの?

722720:2008/10/17(金) 18:08:04 ID:ZuIU0YtL
>>721
すみません…よく分からないのですが、
国内からのアクセス時にのみベーシック認証を起動させる
という事でしょうか?
723Name_Not_Found:2008/10/17(金) 19:43:18 ID:???
>>722
「自分のアクセスだけを許可する」んなら、自分だけが知ってる合言葉を使ってアクセスを遮断する。
その具体的な手段がBasic認証。

「日本以外からのアクセスは許可したい」ってことだったら、日本国内からのアクセスだけBasic認証が必要なコンテンツに飛ばすとか。
724Name_Not_Found:2008/10/17(金) 19:51:33 ID:???
固定IPのISPにかえればいいじゃん
725Name_Not_Found:2008/10/17(金) 19:52:04 ID:???
ローカル環境に鯖をたてたほうがいいな
726720:2008/10/17(金) 21:16:06 ID:ZuIU0YtL
>「日本以外からのアクセスは許可したい」ってことだったら、日本国内からのアクセスだけBasic認証が必要なコンテンツに飛ばすとか。
これで対応しました。ありがとう御座いました。
727Name_Not_Found:2008/10/19(日) 14:44:17 ID:???
あるサイトからのアクセスを制限して自作の403ページに飛ばしたいと思い

ErrorDocument 403 /403.html
ErrorDocument 404 /404.html

SetEnvIf Referer "http://hogehoge" shutout

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

と書きました。

すると制限はされるのですが、サーバーのデフォルトの403ページが表示されてしまいます。

何が原因か思い当たりませんでしょうか。もしかしてそういうものなのでしょうか。
ちなみに架空のアドレスを表示した時の404は自作の404ページがちゃんと表示されます。
403ページも404ページと同じ階層に置いてあります。
よろしくお願いします。
728727:2008/10/19(日) 15:46:44 ID:???
自己解決しました
729Name_Not_Found:2008/10/21(火) 21:14:56 ID:0mhBO2h7
ちょとしつもん

/htdocs/.htaccess をあるディレクトリーだけには適応したくない場合どうかけばいいのでしょう?

/htdocs/ や/htdocs/aaa/ 以下は有効に
/htdocs/bbb/ や /htdocs/ccc/ 以下には無効にです。
730Name_Not_Found:2008/10/23(木) 00:02:14 ID:???
(´・ω・`)知らんがな
731Name_Not_Found:2008/10/23(木) 08:47:06 ID:???
732たまちゃん ◆ExGQrDul2E :2008/10/27(月) 20:11:12 ID:w7vuOBpp
.htaccess アクセス制限

を実施しようと思いました。
今回は、DoCoMoのIモードIDを規制にかけたいと思いまして、

RewriteEngine On
RewriteRule ^(.*)$ $1?guid=on
SetEnvIf HTTP_X_DCMGUID "123456" mypage
deny from env=mypage

こうやってみました。

しかし、なぜかうまく動きません。教えてください。
733Name_Not_Found:2008/10/28(火) 10:50:25 ID:???
X_DCMGUID

ではなく

X-DCMGUID

ですよ
734Name_Not_Found:2008/10/28(火) 14:42:14 ID:???
× "_" アンダースコア
○ "-" ハイフン
ということですね?
735Name_Not_Found:2008/10/28(火) 14:50:11 ID:???
そうです
736たまちゃん ◆ExGQrDul2E :2008/10/28(火) 17:18:27 ID:rkClzLp0
回答ありがとうございます。
こうしてみました。
RewriteEngine On
RewriteRule ^(.*)$ $1?guid=on
SetEnvIf HTTP_X-DCMGUID "123456" mypage
deny from env=mypage


エラーはでませんが、実現されていないのですが、
RewriteRule ^(.*?)$ $1?guid=on
こうしてもだめでしたし

RewriteRule ^(.*)?guid=on
こうしてもダメでした。

なぜ動かないのでしょうか…
737Name_Not_Found:2008/10/28(火) 20:13:09 ID:???
SetEnvIf X-DCMGUID "12345" not
SetEnvIf X-Up-Subno "12345_ah.ezweb.ne.jp" not
order allow,deny
allow from all
deny from env=not


auとドコモ
俺はこれでやってます。
738たまちゃん ◆ExGQrDul2E :2008/10/31(金) 18:08:54 ID:oLMQo4r4
ありがとうございました。
無事動きました。
739Name_Not_Found:2008/11/01(土) 08:17:14 ID:AaVQMrT+
301リダイレクトが神過ぎる
いままでhtaccess使えなかった糞鯖だったがこれは楽だのう
740Name_Not_Found:2008/11/03(月) 16:51:59 ID:???
基本的な質問で申し訳ありません。

abcd01234.zzzz.example.jp

上記のようなホストの場合、先頭の「abcd」を含む場合のみアクセス規制することは出来ますか?
数字部分が変動の大手プロバイダのため、他の部分では規制出来ません。

order allow,deny
allow from all
Deny from abcd

ではうまく弾いてくませんでした。
不可能であれば、「.zzzz.example.jp」でUser-Agentが「xxxxxx」である場合のみ規制したい時は
どう書けばよいのでしょう?
よろしくお願いします。
741Name_Not_Found:2008/11/04(火) 23:44:21 ID:???
Deny from abcd
の行を
Deny from abcd*
にしてもだめなら俺は知らん
ぐぐれとしか・・・
742Name_Not_Found:2008/11/05(水) 00:57:43 ID:???
>>740
正規表現で記述すればOKです

詳しくは↓で調べてください

正規表現 Part5
http://pc11.2ch.net/test/read.cgi/tech/1212498448/
743Name_Not_Found:2008/11/05(水) 00:58:54 ID:???
>>740
WebProg板に同じようなスレがあったので、
こちらの方が分かりやすいかもしれませんね
参考までに残しておきます

正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
7442/1:2008/11/05(水) 16:29:44 ID:???
/public_html内にindexフォルダとimg(画像)フォルダがあります。
indexは
http://www.example.info/~aaa/index/です


やりたい事
1・画像に直リンクされたくない
2・特定UAホスト等を弾きたい
3・http://www.example.info/~aaa/index/http://example.info/~aaa/index/以外から入って来たら閲覧されたくない

現在/public_htmlに以下の
.htaccessを

#.htaccess閲覧防止
AddHandler cgi-script htaccess
#not found
ErrorDocument 403 /~momiji/403.html
ErrorDocument 404 /~momiji/404.html
ErrorDocument 500 /~momiji/500.html
SetEnvIfNoCase User-Agent "弾きたいUA" shutout
SetEnvIf User-Agent "弾きたいUA" badrobot
SetEnvIf Referer "弾きたいリファラ" shutout
Order Allow,Deny
Allow from all
deny from env=badrobot
deny from env=shutout
deny from 弾きたいホスト
7452/2:2008/11/05(水) 16:30:33 ID:???
imgフォルダに以下の.htaccessを

#.htaccess閲覧防止
AddHandler cgi-script htaccess
#not found
ErrorDocument 403 /~momiji/403.html
ErrorDocument 404 /~momiji/404.html
ErrorDocument 500 /~momiji/500.html
#直リン禁止
SetEnvIf Referer "^http://www.example.info/~aaa/"

ref_ok
SetEnvIf Referer "^http://.example.info/~aaa/"

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

と書いて置いています。
1と2は(おそらく)出来ているようすです。
3をやりたくて上の
.htaccessに
SetEnvIf Referer "^http://www.example.info/~aaa/index/" wellcome
SetEnvIf Referer "^http://.example.info/~aaa/index/" wellcome
allow from env=wellcome
と書き足したのですがindex以外のページを直打ちしても閲覧出来てしまいます。
どう直したらいいでしょうか?
そもそも3は出来ますか?
746744:2008/11/05(水) 16:32:34 ID:???
ごめんなさい。変な改行入っちゃいました。
747Name_Not_Found:2008/11/05(水) 18:35:49 ID:???
>>744-746
example.info は例示のために使ってはいけません

example.com、example.net、example.org のみが、
例示用に予約されたドメイン名として有効です
748740:2008/11/05(水) 19:25:48 ID:???
>>741>>742>>743
>>741では動かなかったので、
正規表現でググりつつ>>742>>743のスレで勉強します。
回答ありがとうございました。
749Name_Not_Found:2008/11/06(木) 01:16:41 ID:???
特定のディレクトリにアドレス直打ちでアクセスしようとすると403 Forbiddenを表示するようにしたいのですが
そのディレクトリ下のhtaccessにどう記述すればよいでしょうか?
750Name_Not_Found:2008/11/06(木) 05:30:10 ID:???
>>747
すみません。
exampleならどんなドメインでもいいのかと思い込んでいました。
申し訳ありません。
フェイク入れ忘れてるしもうorz
751Name_Not_Found:2008/11/12(水) 11:05:26 ID:UTMvrJQf
リダイレクト機能を使っている場合に,元サーバーが閲覧者に分かってしまう可能性はあるでしょうか?

また,それを防止する策はありますでしょうか?
752Name_Not_Found:2008/11/12(水) 13:09:37 ID:???
pxxxx-ipbfxxxxmarunouchi.tokyo.ocn.ne.jp 
pxxxx-ipbfpxxmarunouchi.tokyo.ocn.ne.jp 
pxxxx-ipadxxxxmarunouchi.tokyo.ocn.ne.jp 

というホストがあるんですが、marunouchi.tokyo.ocn.ne.jpを指定すると上の三つ全部弾いてしまうので
このうちpxxxx-ipbfpxxmarunouchi.tokyo.ocn.ne.jpだけを弾きたいんですが、その場合の記述はどう書くんでしょうか
753Name_Not_Found:2008/11/15(土) 21:18:08 ID:???
ベーシック認証をする為に、passをかけたいディレクトリにhtaccessを置きました
このほか、ロボット検索を弾く等の為に、ルートディレクトリにもhtaccessをおいてあります
ベーシック認証も検索除けもどちらも動いている様なのですが、htaccessは二つもあって大丈夫なのでしょうか?!
基本が判っていないので悩んでいます。
754Name_Not_Found:2008/11/15(土) 21:43:14 ID:???
>>753
うちのサイトなんて40〜50はある。
755Name_Not_Found:2008/11/15(土) 21:58:29 ID:???
ひっ!>>754
目的に応じておいて良いんですね、有り難うー!
756Name_Not_Found:2008/11/19(水) 01:00:42 ID:sU5vkaly
ソフトバンク携帯がホスト名の逆引きしない

昨夜から
allow from .softbank.ne.jp
効かない

いつなおるのだろうか・・・
757Name_Not_Found:2008/11/19(水) 15:56:34 ID:Dr/wG0sa
例えば、2chからのLINKアクセス(http://ime…)を遮断することってできますか?

製作初心者スレから誘導されてきました。

アフィリ広告を張りたいんだけど、誰かが2chに紹介してくれたお陰で
毎日、2ch経由のアクセスが沢山きます。

喜びたいんですが、張ろうとしてるアフィリ広告って2chでの宣伝活動を
禁止してるんですよ。。。(涙

.htaccessを導入して、どんな技術を使えばよろしいんでしょうか?

ちなみに、オリジナルのPHP掲示板・問い合わせフォームが作れるレベル
なんですが、.htaccessの技術レベルは、もっと上なんでしょうね。。。(汗
758Name_Not_Found:2008/11/19(水) 16:02:22 ID:???
最近記事を見せたいのかアフィが見せたいのか分からない金の亡者サイトが多いな。
759Name_Not_Found:2008/11/19(水) 17:01:47 ID:???
>>757
>>2-3読んで、
こんな事やってみたけどダメだったから教えて、
くらいできないのか?
760Name_Not_Found:2008/11/20(木) 14:13:36 ID:???
Wikiを新しいサーバーに移転し、その際にドメインも変更しました。
旧サイトから新サイトへと飛ばしたいたいのですが、
その際に若干URLの仕様を変えてしまったため困っています。

■URL
旧Wiki:http://example.hogehoge.com/
新Wiki:http://hogehoge.com/example/

■現在のhtaccessの設定
Redirect permanent / http://hogehoge.com/example/
Redirect permanent /(.*)?(.*)$ http://hogehoge.com/example/?$2

■やりたいこと
http://example.hogehoge.com/index.php?*
http://hogehoge.com/example/?* に飛ばしたい

現状、どうしても http://hogehoge.com/example/index.php?* となってしまいます。
解決方法が分かる方いたら教えてください。
よろしくお願いします。
761Name_Not_Found:2008/11/20(木) 14:35:37 ID:???
>>760
hogehoge.comは他者が所有しているドメインです

あなたはご自分が所有しているドメインが他者に
“無断で勝手に”例示用に使われたら、どう思いますか?

テンプレくらい読んでから質問してください

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
762Name_Not_Found:2008/11/20(木) 14:38:14 ID:???
>>761
申し訳ありません。
763Name_Not_Found:2008/11/22(土) 16:04:00 ID:???
質問させて頂きます。

自サイトの画像フォルダ(仮に/avatar_img/とします)内に
設置した特定の画像ファイルが見当たらなかった場合、
/avater_img/内に別途用意してあるノーイメージ画像を
代替表示させたいのですが、
これは.htaccessで可能でしょうか

例えば、
ttp://example.com/avatar_img/に
avatar_001.jpg
avatar_002.jpg
avatar_003.jpg
noimage.jpg
と4つの画像を置いて、他のページからimgなどで呼び出した時、
それが/avatar_img/内に存在しないjpgファイル名だった場合は、
すべてnoimage.jpgを代替表示させる、というようなものです。

可能でしたらその方法をご教示いただけましたら助かります。
宜しくお願いいたします。
764Name_Not_Found:2008/11/22(土) 16:23:39 ID:???
>>763
ttp://example.com/avatar_img/に.htaccessを置いて次の一文を加えておく

ErrorDocument 404 ttp://example.com/avatar_img/noimage.jpg

とすれば404=見つからない場合は、
ttp://example.com/avatar_img/noimage.jpgが表示されるようになるだろうけど
htmlファイルの方がいいかも

ErrorDocument 404 ttp://example.com/avatar_img/noimage.html
このhtmlにnoimage.jpgの表示と何らかの注意書きを添えておけば親切かなあ

(注)上のttp://は全て"h"を抜いているので使うときは"h"を補ってください
765Name_Not_Found:2008/11/22(土) 16:26:09 ID:???
>>760
もう必要ないんでしょうけど、
正規表現の問題だから↓あっちの方が詳しいかと

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

ついでに色々聞いておくと後々役に立つと思いまっす
766Name_Not_Found:2008/11/22(土) 18:28:59 ID:???
>>764
早速のご教示感謝致します。

おぉ〜、ErrorDocument 404にはjpgも指定できたのですね。
先ほど試してみましたところ、この方法で望む結果が得られました。

次案のnoimage.htmlを作って404で飛ばす方法は、
私の用途(特定ページ中にある画像のみ代替表示)では、
うまく表示させることができず断念しました。
これがうまく表示出来れば確かに親切なのですが…


とりあえず、ご教示いただきました
ErrorDocument 404にnoomage.jpgを表示させる方法をもって
進めてみたいと思います。
本当に助かりました。
どうもありがとうございました。
767Name_Not_Found:2008/11/23(日) 20:45:12 ID:???
>>761が最高にウザい
768Name_Not_Found:2008/11/23(日) 20:56:38 ID:???
>>767
本当の事だからね。
他人のドメインを勝手につかうのはよくない。

769Name_Not_Found:2008/11/23(日) 22:30:37 ID:???
>>767
これだけは分かる。
君にドメインを利用する資格は無い。
770Name_Not_Found:2008/11/23(日) 23:31:39 ID:???
こういう人にウェブサイトとか作って欲しくない。
画像とか文章とか平気でもっていって自分の物のように使われるし。
771Name_Not_Found:2008/11/24(月) 00:31:09 ID:???
>>767
お前みたいな馬鹿が居る事にビックリだ。
772Name_Not_Found:2008/11/24(月) 02:16:51 ID:???
>>767
「ネチケット」を学んでから、
インターネットを利用しなさい

ネチケットについて説明のあるウェブサイト:
http://www.cgh.ed.jp/netiquette/
http://www.geocities.jp/ohanashi_nkt/
773Name_Not_Found:2008/11/24(月) 02:24:34 ID:???
ネチケットで思いだしたけど、以前ウェブ板で
何かにレスしてもらった子が礼を言わない云々の話になって本人が言った言葉が
「礼が欲しいからレスしてるのか?」
だった。最近の子って自分が礼を欲しくないのか礼を言わないんだな。
礼が欲しいほしくない以前に何かをしてもらったら礼を言うのが人としての常識だと子供の頃に教わったけど
最近の親はそういうの教えないんだな。

774Name_Not_Found:2008/11/24(月) 02:49:49 ID:???
>>773
親だけでなく、周りの大人(自分含む)が子供に注意しなくなったのも一因かと
今となっては遥か昔、親が腐っていても周りの大人がその子に色々と教えてあげたものでしょう
ですが核家族化や特に都市部では地域コミュニティが機能しなくなって…(以下略)

ネットでも同じことが言えて、2chを使っていてあれですけど、
自分のハンドルネームを決めてリアルと同じように礼節を大切にしつつコミュニケーションする、
こういった事を教えてくれる先達がいなかったり、2chのような匿名ありきのルールが存在して、
結果として767のような無礼がまかり通るようになってしまったのかもしれません

昨今の様々なブログへのコメント、分かりやすいのは炎上したコメントを見ているとそう感じます

ここまで書いておきながらあれですが、さすがにこの流れはスレ違い過ぎると思いますので、
どこか適当に話せる場所があって知ってる方がいましたら誘導してくだされば幸いです
775Name_Not_Found:2008/11/24(月) 19:14:21 ID:???
>>770-772
おまえらみたいなのはマジでキモい。
hogehoge.comとかどこのサイトでも昔から使われてたろ。

そもそも前スレまで普通にhogehoge.comを使っておいて
このスレから相談もなしに加えられたテンプレを遵守しなければ
バカとか泥棒呼ばわりする。

性善説を唱える奴らこそ一番危ない人間だよ。
自分が正しいと思いこんでるからこそ、それを破る人間には何を言っても
何をしてもいいと思ってる。

だいたい包茎目当てのスパムサイトを尊重しようとかマジキチ。
776Name_Not_Found:2008/11/24(月) 19:24:50 ID:???
逆逆
性善説ならhogehoge許されるがな('A`)
世の中には悪い事する人がいる(性悪説で見てる)からRFCで規定されてhogehoge使わずにexample使いましょうねってルールが作られたようなもんでがしょ
777Name_Not_Found:2008/11/24(月) 19:26:46 ID:???
>>775
お前は何か規則が決まってもそのまま「前はこんなのなかっただろ!!!」と暴れるのですね。
まるで糞マイクロソフトの言い訳じゃん。
778Name_Not_Found:2008/11/24(月) 20:33:25 ID:???
>>775
お前みたいなのは大人しくジオでホームページ(笑)作ってろ。
779Name_Not_Found:2008/11/24(月) 21:06:19 ID:???
>>775
こういう人やマイクロソフトがいるからルールをつくらなきゃいけなくなるんだよ。

780Name_Not_Found:2008/11/24(月) 22:33:59 ID:???
>>777
>何か規則が決まっても
いつテンプレ追加する話し合いがあったよ。
781Name_Not_Found:2008/11/24(月) 23:15:56 ID:???
>>780
テンプレ追加うんぬん以前に、
常識って言葉、ご存知ですか?
782Name_Not_Found:2008/11/25(火) 00:07:27 ID:???
もめてて、うざいので話が終わるまでしばらく旅に出ます。
みなさんごきげんよう(・∀・)/~~~
783Name_Not_Found:2008/11/25(火) 06:54:43 ID:???
>>781
常識って社会によって異なるって知ってた?

話をそらしてないで>>780に答えろよ
今まで認めてたものを勝手に認めなくし、
それを破ったものを責め立てるとはどういう了見だよ。
784Name_Not_Found:2008/11/25(火) 11:21:49 ID:???
>>783
あなたの常識が通じる社会にお戻り下さい
785Name_Not_Found:2008/11/25(火) 13:50:39 ID:NmrW2ymu
>>783の社会って2chの中だけじゃねぇの
786Name_Not_Found:2008/11/25(火) 14:33:37 ID:???
>>783
真剣に答えてみます。

>いつテンプレ追加する話し合いがあったよ。
この質問に対する回答は、正直このスレからしか参加していないからわたしは知らないです。

けれど、インターネットの基本的なルールが策定されているRFCでexampleを使ってくださいとなっている以上、
インターネットを利用する際にはそれに従うべきじゃないですか?

もしそのルールを知らずに使ったのならしかたがありませんが、
このスレになってから?は少なくとも>>3に明記されていますから質問前にはテンプレを確認すべきであって、
それを読み飛ばして質問してしまったであろう>>760は、そもそもテンプレを確認せず質問した愚か者であって、
テンプレを読み飛ばして質問した時点で議論の対象にもならない事は2ch利用者なら分かりますよね?

また、指摘されて気付いたなら、ネット利用者の一人としてその時点からexampleを使うルールには従うべきで、
exampleを使う使わないについてのテンプレにいつ追加した等含め、議論する余地は全くありませんよ。
787Name_Not_Found:2008/11/25(火) 16:50:59 ID:???
>>786
テンプレってのはそれなりの賛同があってこそ生まれるもので
勝手に追加されたものはテンプレとは見なされない。
同じ問いになるが2ch利用者なら分かるだろ?

少なくとも前スレにおいてhogehoge使うなとは一度も書き込まれていない。
ゆえに勝手に追加された(少なくともこのスレでは)俺ルールを遵守する理由も
それを笠に着てバカだとか資格なしだとか愚か者などと罵れる理由もない。

確かに書き込まれていた注意事項を守らなかった>>760は悪いかもしれないが、
それはやんわりと注意すればいいだけで>>761のように、
ましてや>>770-772のように責め立てるべき理由にはならない。

議論の余地はないと言うが、少なくとも以前からいる俺にとっては余地があるから
こうして口を出してるわけだし、困っている人に対してバカなどと罵るだけで
自分の優位性を語るような卑屈な人間にはなりたくない。

hoge.com、hogehoge.comの何が悪い。
人に偉そうに注意する暇があったら答えてやれ。
威張り散らすだけのレスはクソの役にも立たない。
788Name_Not_Found:2008/11/25(火) 16:54:51 ID:???
>>787
使いたいのなら使えばいいだろ・・・
お前馬鹿か・・・・

こんな馬鹿と同じネットを共有してるかと思うとしにたくなる・・・・・
789Name_Not_Found:2008/11/25(火) 16:55:59 ID:???
>>788
さっさと死ね
790Name_Not_Found:2008/11/25(火) 16:56:23 ID:???
マイクロソフトと同じでみんなが決めた事や勧告を無視するような人は
置いていくしかない。
ちゃんとした人だけで先に進めばいいよ。

791Name_Not_Found:2008/11/25(火) 16:58:32 ID:???
こんなやつが秋葉原で暴れて人殺しするんだろうな。
792Name_Not_Found:2008/11/25(火) 17:01:11 ID:???
>>788
だからお前みたいに人をバカにする奴がダメだって言ってるんだろ。
そこを理解しろよ。

>>790
だから、みんなで決めてないだろ?
このスレでも普通に答えてただろ?
なんでバカにしたり罵ったりする必要がある?
793Name_Not_Found:2008/11/25(火) 17:03:15 ID:???
ナにこのキチガイ
なんで暴れてるの?
794Name_Not_Found:2008/11/25(火) 17:04:40 ID:???
じゃ法律もみんなで決めてないから人殺しくらいしてもいいだろって事ですね。
そうですか・・・・
795Name_Not_Found:2008/11/25(火) 17:08:25 ID:???
>>794
法律は間接民主制をとってるだけでみんなで決めてるだろ・・・
何を言い出すんだ・・・

あとマイクロソフトマイクロソフト言ってる奴がいるけど
Officeの質問スレでXMLについて質問してきた奴に
時代はODFだバカ野郎って言うのが当たり前だとでも思ってるの?
796Name_Not_Found:2008/11/25(火) 17:16:36 ID:???
もういいからキチガイ
797Name_Not_Found:2008/11/25(火) 17:21:44 ID:???
>>796
俺をキチガイと罵ったところでお前の優位性が確立されるわけでも
なんでもないんだけど、その辺のところちゃんと考えてる?
798Name_Not_Found:2008/11/25(火) 17:29:50 ID:???
暴れている方々へ

ここは>>1にもある通り、
.htaccessファイル(「分散設定ファイル」)の書き方・使い方などに関するスレです

.htaccessとは関係のない話題をこれ以上続けるのでしたら、
↓雑談スレにでも行ってください

雑談スレ
http://pc11.2ch.net/test/read.cgi/hp/1091663331/

今レスされている事はスレにとって荒らし以外の何者でもないと、ご自覚ください
799Name_Not_Found:2008/11/25(火) 22:57:41 ID:???
初心者スレから誘導されました。

直リンク防止のために「a.htaccess」のファイルを作って
トップページのindexファイルと同じフォルダに置いたんですが、
これで効果があるんでしょうか?
800Name_Not_Found:2008/11/25(火) 23:08:17 ID:???
>>799
なにその「a.htaccess」て。
801Name_Not_Found:2008/11/25(火) 23:10:13 ID:???
>>800
単に、名前をつけなきゃいけなかったので・・・
802Name_Not_Found:2008/11/25(火) 23:13:29 ID:???
名前つけちゃったら意味ないぞ
803Name_Not_Found:2008/11/25(火) 23:15:02 ID:???
>>802
はずしたら、>>799の状態で大丈夫でしょうか?
804Name_Not_Found:2008/11/25(火) 23:15:59 ID:???
httpd.confで、a.htaccessにしてあるかもしれないじゃないか
805Name_Not_Found:2008/11/25(火) 23:16:34 ID:???
ファイル名は
.htaccess
じゃなきゃだめです。
例えば画像への直リンクを防止したいのなら

SetEnvIf Referer "^http://example\.net" ref_ok
<Files ~ "\.(gif|png|jpe?g)$">
order deny,allow
deny from all
allow from env=ref_ok
</Files>

※example.net は自分の環境に書き換えて

他の追加したいファイルがある場合はそのファイルの拡張子を | で区切って<Files ~ "\.(gif|png|jpe?g)$">へ入れてください。
また何をしているのか理解してから設置してください。
806Name_Not_Found:2008/11/25(火) 23:17:54 ID:???
>>804
じゃそうすればいいです。
ご自分の環境に合わせてください。そこまで面倒みれません。
807Name_Not_Found:2008/11/25(火) 23:22:58 ID:???
>>805
ありがとうございます。
画像フォルダに
SetEnvIf REFERER "example.com/" Lilith
Order Deny,Allow
Deny from all
Allow from env=Lilith

を入れたのですが、これでも可能でしょうか?
当方素材屋をやっているので画像フォルダが大量にあるのですが、
そこにそれぞれこれを放り込んでいけば大丈夫でしょうか?
直リン防止の影響でサイトにアクセスできないようなことにはなりたくないので・・・
808 :2008/11/25(火) 23:41:45 ID:???
俺んとこの鯖はa.htaccessにしてるんだよん。

AccessFileName a.htaccess
809Name_Not_Found:2008/11/26(水) 11:12:09 ID:???
誘導されてきました

ちょっと、詳しい方の意見を借りたいんだけど
サーバー移転の話です

Old server http://old.com/
New server http://new.com/

だとするじゃん。

この時、トップページおよび下位のすべてのページを新しいサーバのトップにリダイレクトするなら、301リダイレクトを使えばいいと思うんだけど

見てる人からすれば
http://old.com/2008/10/10/記事です。/

http://new.com/2008/10/10/記事です。/
にリダイレクトされた方が良いと思うんだよね。
検索エンジンも、そっちの方がPageRankを引き継いでくれるだろうし

で、こういう場合のhtaccessってどういう風に書けばいいのかな・・・
810Name_Not_Found:2008/11/26(水) 12:01:34 ID:???
>>809
あなたはテンプレを読まずに質問しています。
>>3

あなたは数レス上も確認せずに質問しています。
>>760-798

出直してください。
811Name_Not_Found:2008/11/26(水) 12:05:20 ID:???
>>810
テンプレなんか読むかよw
812Name_Not_Found:2008/11/26(水) 12:06:46 ID:???
>>810
なんの役にも立たないお前のレスの方が邪魔で無意味だって気づけ。
813Name_Not_Found:2008/11/26(水) 12:08:15 ID:???
>>810
こういうやつが必ず言うのは、「説明書よめよ」だろうな。
説明書をよんで万人が理解できるならサポートセンターなんて不必要なんだよ。
814 :2008/11/26(水) 12:33:20 ID:???
ここはサポセンじゃありません
815Name_Not_Found:2008/11/26(水) 14:28:46 ID:???
>>811-813
テンプレも読まない馬鹿は質問スレに来んなよ。
816 :2008/11/26(水) 14:53:25 ID:???
テンプレも読まない馬鹿だから質問スレに来るんじゃねぇの?
というか質問癖の付いた奴はテンプレ見ないタイプが圧倒的に多いと思う。
817Name_Not_Found:2008/11/26(水) 18:06:13 ID:???
example.com/hogeにアクセスしたら
example.com/hoge/に飛ばすようにし、また、
example.com/hoge/はexample.com/hoge.cgi/を呼ぶようにしたいのですがどうすればいいですか?
818Name_Not_Found:2008/11/30(日) 06:15:33 ID:???
質問スレで質問して文句言われるのならこのスレはいらないんだろ?
削除依頼だしてこようか?
819Name_Not_Found:2008/11/30(日) 06:41:58 ID:???
削除依頼出せるもんなら出してみろよ。どうせ通らんよ。
820Name_Not_Found:2008/12/02(火) 14:50:25 ID:???
質問です
粘着に張り付かれたんでアク禁したいのですが、403になるとファビョってくる可能性が高いです
なので404を表示してやりたいのですが、
鯖デフォの404メッセージはなく、今までカスタマイズ版も使っていないので突然そうなると不自然です
環境を問わずそれに併せた404メッセージに飛ばすような記述は出来るのでしょうか?
821Name_Not_Found:2008/12/02(火) 18:56:49 ID:???
質問すると気はおかしな自分語は使わず
ちゃんとした言葉で質問しましょう。

822Name_Not_Found:2008/12/02(火) 19:08:13 ID:???
ちゃんとした言葉で注意しましょう。
823Name_Not_Found:2008/12/02(火) 19:57:06 ID:???
そして今日も僕は、
824Name_Not_Found:2008/12/02(火) 22:50:57 ID:???
825Name_Not_Found:2008/12/03(水) 00:39:13 ID:???
>>820
粘着に張りつかれたって、一瞬このスレの事かと思ったよwww
最後の2行が理解できなかったな。
ネットストーカー?に貼りつかれて可哀想だから答えてあげたかったけどゴメン。

理解できた人答えてあげてー!
826Name_Not_Found:2008/12/03(水) 01:33:39 ID:???
偽の404ページを作ってそこにとばしてやりゃいいんでねえの
漏れも昔やってたなー
827Name_Not_Found:2008/12/03(水) 07:42:47 ID:???
偽の404を使うときは、ステータスコードも404を返すようにしとけよ
見た目は404でもステータスコードが403だとバレるぞ
828Name_Not_Found:2008/12/03(水) 19:46:46 ID:???
>>21
あなたが神か
やり方分からなくて間にphpかませてたんだが、これですっきりした
829Name_Not_Found:2008/12/04(木) 21:47:45 ID:???
830Name_Not_Found:2008/12/06(土) 16:26:35 ID:???
htaccess設置したら、co.ccドメインが使えなくなりました

403 Forbidden
You don't have permission to access /on this server.

ただ元のレン鯖のドメインではアクセスできるんだよね
何が原因か分かりますか?

831Name_Not_Found:2008/12/06(土) 16:28:01 ID:???
>>830
マルチ乙
832Name_Not_Found:2008/12/06(土) 16:51:41 ID:???
>>831
お前はレン鯖の住人かよw
833Name_Not_Found:2008/12/06(土) 17:00:26 ID:???
.htaccessの中身も書かずに質問しても分かるわけないだろバカ。
834Name_Not_Found:2008/12/06(土) 17:17:20 ID:???
>>830
きっとアクセス権が無いんだと思います。
835Name_Not_Found:2008/12/06(土) 17:24:42 ID:???
>>833
長くて・・・
>>834
でもレンサバのサブドメインでアクセスすると普通に見れるんだよね・・・
836Name_Not_Found:2008/12/06(土) 17:35:02 ID:???
試しに空のhtaccessをうpしても同じ症状だったわ・・・
ってことは拡張子に反応してる??
837Name_Not_Found:2008/12/06(土) 17:37:31 ID:???
独り言はご自分の日記でどうぞ。
838Name_Not_Found:2008/12/06(土) 17:38:24 ID:???
そもそもhtaccessで403Forbiddenはオリジナルページなのに

デフォの
Forbidden
You don't have permission to access / on this server.

なんだよね
839Name_Not_Found:2008/12/06(土) 17:43:51 ID:???
.htaccess以外には何置いてるの?
840Name_Not_Found:2008/12/06(土) 17:47:42 ID:???
>>839
phpとか置いてるけど、過去いろんな鯖で試して、問題は無かったです
問題が起きたのは今回が初めてです。

レンサバのサブドメインで我慢するしかないのかなあ
841Name_Not_Found:2008/12/06(土) 18:22:13 ID:???
.htaccessを理解せずに
適当にネットで拾ったのをコピペで貼り付けただけ
ってことなのかな?
842Name_Not_Found:2008/12/06(土) 18:30:57 ID:???
IBMので作ってるようなやつはみんな理解もせずコピペさ。
HTMLなのに
<link rel="stylesheet" type="text/css" href="./style.css" />
なんて馬鹿なこと書いてるやつ多すぎだし。
843Name_Not_Found:2008/12/06(土) 19:53:50 ID:???
>>842
それがなんでダメなの?
844Name_Not_Found:2008/12/06(土) 20:01:29 ID:???
>>843
え?
大丈夫か?
845Name_Not_Found:2008/12/06(土) 20:05:26 ID:???
>>843
それがどうしてだめなのかが分からないって
まさかウェブサイトの管理とかしてねーよな?
846Name_Not_Found:2008/12/06(土) 20:16:40 ID:???
こうすれば分かりやすいかな。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<title>なんとかサイト</title>

<link rel="stylesheet" type="text/css" href="./style.css" />

</head>
<body>

<h1>タイトル</h1>

<p>本文</p>

</body>
</html>
847Name_Not_Found:2008/12/06(土) 22:10:23 ID:???
手書きで作ってるならともかく、ビルダー使ってる人やレンタルブログの人は
html知らなくても無問題
848Name_Not_Found:2008/12/06(土) 22:14:11 ID:???
ビルダーで作られた物がウェブサイトだと?
849Name_Not_Found:2008/12/06(土) 22:19:07 ID:???
Dreamweaverからウェブサイトって言えるよね
850Name_Not_Found:2008/12/06(土) 22:32:09 ID:???
ウェブサイトの定義って何かね
851Name_Not_Found:2008/12/06(土) 23:08:13 ID:???
オナニー
852Name_Not_Found:2008/12/06(土) 23:23:24 ID:???
>>842>>846も意味がわかんないんだが
外部CSSの記述だろ? どこがダメなんだ?
853Name_Not_Found:2008/12/06(土) 23:31:32 ID:???
>>852
HTMLだ!!!

これで分かるか?
854Name_Not_Found:2008/12/06(土) 23:42:59 ID:???
俺マジでわかんねえ
855Name_Not_Found:2008/12/06(土) 23:50:27 ID:???
>>854
まじでいってるのか?・・・・
856Name_Not_Found:2008/12/07(日) 00:02:10 ID:???
こんのはどうだ。
//header("Content-type:application/xhtml+xml; charset=utf-8");

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja">
<head>

<title>なんとかサイト</title>

<link rel="stylesheet" type="text/css" href="./style.css">

</head>
<body>

<h1>なんとかサイト</h1>

<p>私の<a href="http://example.com" title="my website"><h2>ホームページ</h2></a>もよろしく!</p>

</body>
</html>
857Name_Not_Found:2008/12/07(日) 01:51:18 ID:???
htaccess 設置したのが悪いんじゃない?
858Name_Not_Found:2008/12/07(日) 01:52:17 ID:???
リロードしてなかった
859Name_Not_Found:2008/12/07(日) 02:14:51 ID:???
>>830
,htaccessの記述にミスがある
>>838
830と同一人物だろうが、記述ミスがあるからパーミッション云々ってエラーが出る

で、そういう流れで841がコピペ厨うぜえって言ってるんだよね?
その上で842がコピペ厨の実例を出したんだろうが、842の言ってることは別に誤りは無いぞ。
HTML文書に<link rel="stylesheet" type="text/css" href="./style.css" />
ってOKだから

違う?
860Name_Not_Found:2008/12/07(日) 02:35:32 ID:???
スタイルシート使ってないからじゃね
861Name_Not_Found:2008/12/07(日) 02:57:05 ID:???
XHTML
<link rel="stylesheet" type="text/css" href="./style.css" />

HTML
<link rel="stylesheet" type="text/css" href="./style.css">

この程度の事は理解しましょう。
862Name_Not_Found:2008/12/07(日) 09:27:50 ID:???
>>859
>HTML文書に<link rel="stylesheet" type="text/css" href="./style.css" />
>ってOKだから

     プ、プ、プギャープギャプギャプ♪
    \    ププププギャプギャププギャプギャ/
       ♪  (^Д^) ♪
        _m9   )>_ キュッキュ♪
      /.◎。/◎。/|
      | ̄ ̄ ̄ ̄ ̄|
863Name_Not_Found:2008/12/07(日) 10:01:32 ID:???
画像の直リン対策に
SetEnvIfを使おうと思うのですが
悪質なやつ(成りすまし野郎)のページだけイタズラしてやりたいのです
////////////////////////////////////

SetEnvIf REFERER "悪質サイトURL" Lilith
Order Allow,Deny
Allow from all
Deny from env=Lilith

////////////////////////////////////

これだとリンク不可には出来るようですが。。。。
別画像を出すなどいいイタズラはありますか?

初心者で申し訳ありませんがご教授おねがいします
864Name_Not_Found:2008/12/07(日) 10:10:16 ID:???
>>863
サーバのHotLink機能でも使えよ
865Name_Not_Found:2008/12/07(日) 11:08:39 ID:???
ブラクラにでも飛ばせば?
訴えられても知らんけど
866863:2008/12/07(日) 11:24:25 ID:???
>>864
その機能では特定のURLに限定した拒否は出来ないような
間違っていたらごめんなさい

>>865
背景画像なんですね。対象が。。。
ウイルスでも仕込みたい気分ですが
さすがに被害者は見た人になるのでね

867Name_Not_Found:2008/12/07(日) 12:48:46 ID:???
特大ゴッキーの絵やロリエロゲのCGなんか効果大だな
868Name_Not_Found:2008/12/07(日) 14:01:27 ID:???
>>866
Webの仕組み上そういうものを防ぐ方がナンセンスというもの
そうされたくなければ、公開しないこと

どんなものでも、Web上に出してしまえばコピーできる
869Name_Not_Found:2008/12/07(日) 14:17:28 ID:???
いや直リンが嫌なんだろ
870863:2008/12/07(日) 14:19:52 ID:???
>>868
確かにそうですな
でも、今回の場合、コピーライトの文面には金額も提示し
使用料を提示した上での無許諾使用です

しかも成り済まし行為です
そんな訳で 今回はそいつを法的にでも潰すつもりです

静的IPも割れているのですが、
ntoska314171.oska.nt.ftth4.ppp.infoweb.ne.jp/125.3.190.1※※
122x215x64x※※.ap122.ftth.ucom.ne.jp
871Name_Not_Found:2008/12/07(日) 14:43:38 ID:???
そんなに見てほしくないのならローカルマシーンにデーター保存してnicはずして置けばいいじゃない。
自分が思うほど他人は自分のデーターになんの興味も無いものです。
872Name_Not_Found:2008/12/07(日) 14:53:11 ID:???
>>870
それは、田舎の無人野菜販売所と同じ

善人だけが金を払う

それがイヤなら、自分が店番しろ
873863:2008/12/07(日) 14:53:32 ID:???
いや 直リンやろうに制裁を加えたいだけです

今 おまんこ画像に差し替えてやりましたw
874Name_Not_Found:2008/12/07(日) 14:59:31 ID:???
>>873
>今 おまんこ画像に差し替えてやりましたw
よそでどうぞ。もうこないでね。
875Name_Not_Found:2008/12/07(日) 14:59:37 ID:???
>>873
>直リンやろうに制裁を加えたいだけ

それならHotLinkを使え

相手は技術的にできることをしたまでだ。それは、同時にお前の技術不足である
それで、相手に損害を加えるというのは筋違い
876863:2008/12/07(日) 15:13:18 ID:???
>>875
それを自分でも理解した上での相談です

レン鯖は10年使ってますが.htaccessのお世話になる問題は
いままでなかったのですが、stickam.jpというサイト
(管理権限なし)での成り済まし被害(限りなくフィッシング風)
にあわせてバナー管理のため、無料レン鯖に画像倉庫を別に建てた次第です。

でも、リンクを書き換えても(鯖を変えても)その人は
直リンで背景画像を貼っている訳で。。。

そいつを 潰せたらな と思う今日この頃です

877Name_Not_Found:2008/12/07(日) 15:18:49 ID:???
そろそとあぼーんでいいな。
次の質問どうぞ。
878863:2008/12/07(日) 15:20:59 ID:???
使えないスレやな
879863:2008/12/07(日) 15:21:54 ID:???
訂正
>>877
使い物にならないな
880Name_Not_Found:2008/12/07(日) 15:36:38 ID:???
おまんこ画像て
借りてる鯖の規約違反だったらアカウント消されるぜ
881Name_Not_Found:2008/12/07(日) 15:38:55 ID:???
でもな、直リンを断りも無くやるっていうのも
不貞や労だわな

おしおきは必要だろ
ネチズン憲章第3条4項に違反する
882Name_Not_Found:2008/12/07(日) 15:41:02 ID:???
いやだから、おしおきしたつもりが自分の垢消されたら泣けるぜ?
883Name_Not_Found:2008/12/07(日) 15:41:16 ID:rM6vuWJq
てめぇの鯖でも無いのに直リンされて憤慨するのもおかしな話だな
自鯖にちょっとでも負荷かけられるのが嫌ってんなら解るけど。
884Name_Not_Found:2008/12/07(日) 15:43:51 ID:rM6vuWJq
背景画像の直リンくらいじゃ負荷にもならんって。
885Name_Not_Found:2008/12/07(日) 15:46:20 ID:???
仁義とマナーの問題だろ
レン鯖でも有料で銭払ってんだぜ おしおきは当然
ただ>>882には禿同
886Name_Not_Found:2008/12/07(日) 15:57:16 ID:???
無難にゴキブリとかゲジゲジの画像にしとけば?
もしくは、「私はロリコンです」とか書いてある巨大画像とか
887Name_Not_Found:2008/12/07(日) 16:02:45 ID:???
どっから沸いてきたお前ら
888Name_Not_Found:2008/12/07(日) 16:10:34 ID:???
直りんされるのが辛くてしかたがないって言うその画像をみてみたいものだ。
さぞすごくすばらしい画像なんだろうな。

889Name_Not_Found:2008/12/07(日) 16:35:05 ID:rM6vuWJq
ケツの穴のちいせぇカスの戯言に付き合えるお前らって素晴らしい!
よっぽどネタ不足だったんだなこのスレ
890Name_Not_Found:2008/12/07(日) 16:38:11 ID:???
>>885
仁義とマナーってどこのだ?
俺のサイトは直リンだろうが盗用だろうが無断転載だろうが大歓迎だぜ。
いちいち対応すんのもまんどくせぇし。
891Name_Not_Found:2008/12/07(日) 17:09:25 ID:???
俺のサイトは白地に黒文字とリンクしかないぜ
後画像が1つ
892Name_Not_Found:2008/12/07(日) 17:47:26 ID:???
後画像が1つ = Get Flash

最近こういう馬鹿サイトが増えた
893Name_Not_Found:2008/12/07(日) 18:13:01 ID:???
>>892
全然違う
妄想で馬鹿呼ばわりか
894Name_Not_Found:2008/12/07(日) 18:18:00 ID:???
て言うかなんだこの流れ
直リンされたから制裁とか、厨行為に厨行為で対抗してどうするんだ

逆恨みから嫌がらせされたら面倒くさいぞ
895Name_Not_Found:2008/12/07(日) 18:25:48 ID:???
http://pc11.2ch.net/test/read.cgi/hosting/1215689228/888

888 名前:名無しさん@お腹いっぱい。[ ] 投稿日:2008/12/07(日) 09:49:24 0
画像に直リンされてるんだけど
.htaccessでSetEnvIfは使える?

それよりも、イタズラ画像に置き換えてやろうかなw
なんか、おもしろいのあるかな
896Name_Not_Found:2008/12/07(日) 21:43:15 ID:???
>>879
こんなスレにすがるおまいは、さらに使い物にならないw
生きる価値無し。チンポかんで氏ね。
897Name_Not_Found:2008/12/08(月) 07:27:50 ID:???
質問です。 環境:さくらサーバ(スタンダード。独自ドメイン)
www無しのアクセスを → wwwありに統一。
www.example.com/index.htmlでのアクセスを → www.example.com に。
example.com/index.htmlでのアクセスを → www.example.com に。
---------------------------------------

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

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

-----------------------------------------
前者www、後者index、この2つをどう融合すれば両方適応できるのでしょうか 
数時間格闘しましたがバカなのでお手上げです。ご教授お願いします。
898Name_Not_Found:2008/12/08(月) 20:47:36 ID:???
>>897
一部だけ答えます

RewriteEngine onは最初の一行だけで事足ります

5行目のRewriteEngine onは要りません
899Name_Not_Found:2008/12/08(月) 20:55:22 ID:???
ifごとにRewriteEngine onって書いてる解説サイト多いよな
900Name_Not_Found:2008/12/08(月) 21:23:27 ID:???
RewriteEngine って off にするために書くんだべ
901Name_Not_Found:2008/12/08(月) 21:32:58 ID:???
ああ、「いざってとき」が無いと誤解が
902897:2008/12/08(月) 21:34:26 ID:???
なるほど参考になりました。ありがとうございました。
903Name_Not_Found:2008/12/09(火) 10:37:34 ID:???
ホストで規制してしまうと、ログもホストで記録されてしまいますが、これをホストにならないようにできないでしょうか?

携帯規制をしようと思っているのですが
deny from .docomo.ne.jp
としてしまうとログもホストになってしまって困っています。これをIPのままにはできないでしょうか?
904Name_Not_Found:2008/12/09(火) 11:51:22 ID:???
質問です
初めて.htaccessを使ってアクセス制限をするので、
とりあえずちゃんと動いているのかどうか試そうと自分のホストを入れてアクセス拒否をしたところ、
どうしてか全く通常通りにサイトを閲覧できてしまいました。
しかし自鯖に設置してあるCGIだけは制限がかかっているようで、
カウンターやメルフォやブログなどは403エラーが出ます。
一体なんなんでしょうか。
記述は以下のとおりです。

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Options Indexes
order deny,allow
deny from ....
905Name_Not_Found:2008/12/09(火) 13:40:59 ID:???
>>904
cgiが入っているディレクトリは、httpd.confで
AllowOverride none
になってたりしないか?
906Name_Not_Found:2008/12/10(水) 01:59:44 ID:???
ホストで規制してしまうと、ログもホストで記録されてしまいますが、これをホストにならないようにできないでしょうか?

携帯規制をしようと思っているのですが
deny from .docomo.ne.jp
としてしまうとログもホストになってしまって困っています。これをIPのままにはできないでしょうか?
907Name_Not_Found:2008/12/10(水) 16:47:31 ID:???
.htaccessで解決することじゃないだろ。
908Name_Not_Found:2008/12/11(木) 04:17:09 ID:???
じゃあなにで解決することなんだよ
909Name_Not_Found:2008/12/11(木) 04:25:53 ID:???
>>908
phpでいいんじゃないの?
それにここは質問スレじゃなくなったんだよ。
910Name_Not_Found:2008/12/11(木) 15:21:26 ID:???
httpd.confとかanalog.cfgの話なんじゃね。
.htaccessスレで聞く事じゃないと俺もおも。
911Name_Not_Found:2008/12/11(木) 15:45:31 ID:???
そこをなんとか、.htaccessでお願いしまつw
912Name_Not_Found:2008/12/11(木) 17:41:26 ID:???
>>910
ホスト出力に関してApacheで弄るのは
httpd.confの HostnameLookups Off しかない。

後は.htaccessか上記にあるphp周りでなんとかするしかないんじゃね。
やったことないからわからんけど
913Name_Not_Found:2008/12/12(金) 19:21:05 ID:???
質問させて下さい。
ブログを運営していますが、思うことがあって記事別のURLを変更しました。

以前は
http://example.com/hogehoge1/200801/hogehoge2.html
だったのですが、現在は
http://example.com/2008/01/hogehoge2.html
です。

以前のURLに繋いだ時に現在のURLに飛ばすには
Redirect をどう書けば良いでしょうか?

hogehoge1はカテゴリースラッグで、記事毎に違います。
200801は年と月です。現在は200812までなっています。
hogehoge2は変わりありません。

よろしくお願いします。
914Name_Not_Found:2008/12/13(土) 03:39:03 ID:???
mod_rewrite
915Name_Not_Found:2008/12/13(土) 06:05:55 ID:???
shuffle_send
916Name_Not_Found:2008/12/14(日) 23:17:50 ID:???
>>913
Redirect permanent /hogehoge1/200801/hogehoge2.html http://example.com/2008/01/hogehoge2.html

これでOK
917Name_Not_Found:2008/12/15(月) 03:49:12 ID:???
嫌味まで書く必要は無い
918Name_Not_Found:2008/12/29(月) 13:21:05 ID:???
質問です。
http://myaccount.example.com/に、.htaccessを設置しています。
自作エラーページがhttp://myaccount.example.com/error/403.htmlにあって
ErrorDocument 403 /error/403.html
と記述しています。
でもこれだと、弾かれてる人はエラーページすら見られないことになりますが
それを回避するために
<FilesMatch "403.html">
order allow,deny
allow from all
</FilesMatch>
を記述し、自分のIPを弾いて適当なURLにアクセスしたところ
自作のエラーページは表示されませんでした。

error/に.htaccessを置いてallow from allと書いてもだめでした。
ルートディレクトリに置いた.htaccessでアクセス制限をするのは無理ということですか?
エラーコードを返したいので、403.htmlへのリダイレクトはいやです。
レン鯖はさくらです。
919Name_Not_Found:2008/12/29(月) 13:38:36 ID:???
全角英字を半角になおせばいいと思います。
web関連板で○○出来ません;;;で一番多いのがドザの質問の英数字を全角で書いているのが99%でそれを直せば問題はなくなっています。
920Name_Not_Found:2008/12/29(月) 13:42:47 ID:???
>>918
なんで
>.htaccess
だけ大文字なのか理解に苦しむ
921Name_Not_Found:2008/12/29(月) 13:59:41 ID:???
ドザ用OSってそんなに半角英数を打つのが難しいの?
殆どが全角英数だよね?
半角をうつのは辞書登録しないといけないとかなの?

922918:2008/12/29(月) 14:25:57 ID:???
htaccesが全角なのは、ccessになっちゃうからで
質問の趣旨とは関係ないです
鯖にうpる時はちゃんと半角
923Name_Not_Found:2008/12/29(月) 14:26:43 ID:???
Winでは、たしか打った時にフォントで、全角と半角の違いが分かりにくいw

Macだと強烈に違和感感じるけどね
924Name_Not_Found:2008/12/29(月) 14:27:23 ID:???
>>922
>htaccesが全角なのは、ccessになっちゃうからで

は?

もうスルーしようぜ
925Name_Not_Found:2008/12/29(月) 14:34:56 ID:???
>>918
ん?分からないの?

/error ディレクトリに .htaccess を置いて、
その中の order は allow from all だけにする

つまり、/error ディレクトリのアクセス制限は
一切無しにすればいいだけ
926Name_Not_Found:2008/12/29(月) 14:38:34 ID:???
全角で解りづらくてすまん
他板だと.htaccessって打つとhtaが消えるから
わざと全角で打ってたんだ

なんか荒らすみたいになってすまんかった
927Name_Not_Found:2008/12/29(月) 14:39:31 ID:???
>>925
それやってもだめだった
928Name_Not_Found:2008/12/29(月) 15:26:28 ID:???
>>927
どこか間違ってるんじゃない?

/ ルートと
/error に置いている .htaccess を全て晒してごらん?
929Name_Not_Found:2008/12/29(月) 15:43:56 ID:???
ErrorDocument 403 /error/403.html
<FilesMatch "!^¥/error¥/403¥.html$">
order allow,deny
allow from all
deny from 拒否するIP
</FilesMatch>

みたいな感じじゃダメか?
930Name_Not_Found:2008/12/29(月) 16:14:08 ID:???
>>929 ありがとう実験してみる
>>928 晒してみる
■ルートが
DirectoryIndex index.html index.shtml index.htm .ht
Action myphp-script /php.cgi
AddHandler myphp-script .php .html .htm

ErrorDocument 403 /error/403.html
ErrorDocument 404 /error/404.html
ErrorDocument 500 /error/500.html

<FilesMatch "403.html">
order allow,deny
allow from all
</FilesMatch>
#以下404と500も同じ ↓は正常に作動してる模様
<FilesMatch "\.log$">
order deny,allow
deny from all
allow from 自分のホスト
</FilesMatch>
#以下百度とかを弾く設定が続く
-------
■/error/の方
order allow,deny
allow from all
-----
最終行の改行はちゃんとしてあります
931Name_Not_Found:2009/01/02(金) 12:12:26 ID:???
>>924
質問者は間違いなくギコ使いでござるの巻
ギコナビだと正確にドットエイチティーアクセスと書くと
ccessと表示されるんだ

たぶんギコだけだから>>918も正しく書くがよいよい
932Name_Not_Found:2009/01/03(土) 19:18:58 ID:5P9T3SZu
質問です。
「index.html」あり・なしのURL正規化についてなのですが、検索するとサンプル文として

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

と書かれていることが多いです。もちろん正常に動作するのですが、2行目の
『^(.*)index.html$』は
『^(.*)index\.html$』のように『\』は不要なのでしょうか?

また、.htaccess作成の際に『\』をバックスラッシュのキーからではなく
\マークのキーから入力してしまうことが多いのですが問題ないでしょうか?
ご存知の方がいらっしゃいましたら教えていただきたいと存じます。
よろしくお願いいたします。
933Name_Not_Found:2009/01/06(火) 11:07:25 ID:YIsTa4dY
>>932の者ですが、どなたかご存知の方がいらっしゃいましたらお願いいたします
934Name_Not_Found:2009/01/06(火) 13:47:40 ID:???
sjisでは、バックスラッシュと¥は同じだ
935Name_Not_Found:2009/01/06(火) 19:56:48 ID:m+zOLjWZ
>>934
どうもありがとうございます!
936Name_Not_Found:2009/01/07(水) 01:31:38 ID:???
>>932-935
正確に言うと、Shift_JIS(これが正式な文字コード名)だけでなく、
ISO-2022-JP(いわゆるJISコード)やEUC-JPについても、円記号とバックスラッシュは区別されない。

どうしてそうなのかは、日本語版Wikipediaの [[円記号]] や [[バックスラッシュ]] を読むのがわかりやすいかな。
ttp://ja.wikipedia.org/wiki/%E5%86%86%E8%A8%98%E5%8F%B7
ttp://ja.wikipedia.org/wiki/%E3%83%90%E3%83%83%E3%82%AF%E3%82%B9%E3%83%A9%E3%83%83%E3%82%B7%E3%83%A5
937Name_Not_Found:2009/01/07(水) 18:39:50 ID:rQnOIHUj
>>936
>>932 です。分かりやすいご説明をいただき、どうもありがとうございます。
おかげさまで円記号とバックスラッシュの違いについては理解、解決することができました。
もしよろしければどなたか前半の質問(RewriteRuleにおける『\』の要不要)について
ご存知の方がいらっしゃいましたら、ご教授いただけないでしょうか?

何度も申し訳ございませんが、どうぞよろしくお願いいたします。

938Name_Not_Found:2009/01/08(木) 01:00:46 ID:???
>>937
「index\.html」でも「index.html」でも運用上は大差なし。
前者はindex.htmlだけが対象だが、後者だとindex.htmlに加えてindexAhtmlやindexZhtmlやindex_htmlなんかも対象になる。
その理由はエスケープシーケンスや正規表現を調べるがよろし。
939Name_Not_Found:2009/01/08(木) 01:56:53 ID:???
回答支援

正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
940Name_Not_Found:2009/01/08(木) 18:13:32 ID:GqtnLvfq
>>938 , >>939
>>937 です。丁寧なご回答ありがとうございました。
正規表現道場で勉強してきます!
941Name_Not_Found:2009/01/08(木) 18:15:20 ID:???
sage忘れました。すみません
942Name_Not_Found:2009/01/11(日) 18:56:53 ID:???
アクセス制限をしたい相手が自分と同じIPのとき
相手のみを制限するというのは可能ですか?
943Name_Not_Found:2009/01/11(日) 19:17:04 ID:???
>>942
IPアドレスが同じなら、他の方法を考えるしかないんじゃねの
しかし...
同じオフィス内に、見せたくないヤツがいるということか?
944Name_Not_Found:2009/01/11(日) 19:26:53 ID:???
>>943
ありがとうございます
隠してたサイトがばれちゃいまして…

今後見るなと言ったところで聞くわけないですし
かといってサイト引っ越すのも嫌なので…
945Name_Not_Found:2009/01/11(日) 19:27:51 ID:???
>>942
1)パスワードをかける。
2)公開しない。
3)「※○○さんはみないでください。」と名指しで書く。

おれなら3を選択するが。
946Name_Not_Found:2009/01/11(日) 19:31:45 ID:???
>>942
あれよ。パスワードをかけるのは、そのipからのアクセスだけにかけるのよ。
そうすれば同じipの自分はパスワードを知ってるので問題ないし
違うipの人にはパスワードは要求しないわけだから問題ない。

それでは俺なら3の見ないでくれと伝える。
言葉と文字で。
947Name_Not_Found:2009/01/14(水) 01:52:33 ID:???
mod_rewriteについて質問させてください。
(おそらくmod_rewriteで書き換えを行っているであろうニコニコ動画を例に挙げます)

ニコニコ動画のタグページへのアクセスは通常
http://www.nicovideo.jp/tag/xxx
このようなURLを踏んでそこから内部的にmod_rewrite、
どこかのURLにリダイレクトしているものと思いますが、

http://www.nicovideo.jp/tag/%
のようにxxxの箇所が%や%a(/%.+/)だと400Bad Requestとなります。

mod_rewriteに起因するものだと私は考えているのですが、
実際にはこれは何が原因なのでしょうか。
また、回避する手段はあるのでしょうか。

ご教授ください。
948Name_Not_Found:2009/01/14(水) 10:37:44 ID:???
rewrite関係ない、URLの書式として間違っている
percent encoding
949Name_Not_Found:2009/01/15(木) 11:32:20 ID:???
全然仕組みがわからないまま質問します。

bbs/index.php?mode=rss

をFeedburnerにリダイレクトさせるためにはどのように書けばいいのでしょか?

今までは他のFeedをこんな風に書いていたので
RewriteRule ^files/rss?¥.xml$ (FeedBurnerのアドレス) [L,R]

このように書いてみましたがダメでした。
RewriteRule ^bbs/index?¥.php?mode=rss$ (FeedBurnerのアドレス) [L,R]

よろしくお願いします。
950Name_Not_Found:2009/01/15(木) 11:43:32 ID:???
>>949
index.php
でリダイレクトしたほうが早いんじゃないのか?
951949:2009/01/15(木) 11:58:39 ID:???
>>950
あっさりできました。ありがとうございました。
952Name_Not_Found:2009/01/15(木) 14:19:14 ID:ySrOPkFa
----------------------------------------------
AddHandler cgi-script htaccess
Options -Indexes
SetEnvIfNoCase User-Agent "GetHTML|WeBox" no
Order allow,deny
Allow from all
Deny from env=no
<Files ~ "\.(png|jpg)$">
SetEnvIf Referer "^http://hoge\.jp" ref_ok #自サイト以外からの呼び出しは許可しない
SetEnvIf Referer "^$" ref_ok #リファラが無い場合は蹴る
order deny,allow
deny from all
allow from env=ref_ok
</Files>
---------------------------------------------------

現在こういう構成です
画像を専ブラや直接ブックマークで読み込んだ時403、
サイトから呼び出さないと403になるように設定してます

FirefoxのUAをWeboxに変えてアクセスしたらチャント弾かれて403になるのですが、
Webox等のダウンローダーを使用するとなぜか弾かれずに全部落とせてしまいます。

直リン対策の部分(<Files>で囲んだ部分)を消すとダウンローダーも弾くようになるのですが、
このままだと直リン対策が出来ず、どっちか一つを選ぶしかない状況になってます。

リファラ無しのリンクと自サイト以外のリファラリンク対策とダウンローダーを弾く、この両を有効にするにはどう記述するべきでしょうか
953949:2009/01/15(木) 21:47:52 ID:???
>>950

出来たと思ったんですけど

bbs/index.php

にアクセスしたらFeedBurnerのページに飛ばされてしまいます。
FeedのURLにアクセスした時だけFeedBurnerに飛ばしたいのですがどうすればよいでしょうか?

bbs/index.php?mode=rss
は掲示板のRSSFeedのアドレスです。
954Name_Not_Found:2009/01/15(木) 23:49:26 ID:???
>>953
FeedのURLにアクセスした時だけFeedBurnerに
リダイレクトすれば良いだけなんじゃないの??
955Name_Not_Found:2009/01/16(金) 02:32:32 ID:???
>>949
feedburnerのbotは除外しろよ?
FeedBurner自身が読めなくなるから。

だから、これはPHPなりCGIなりを使って実装すべき
956Name_Not_Found:2009/01/16(金) 13:05:51 ID:???
エラードキュメントについて質問です

public_html(ドキュメントROOT)
| /error/ ErrorDocument 404 /error/404.html
|
test(ディレクトリー)
/error/ ErrorDocument 404 /error/404.html

http://ドメイン/test/にアクセスしてもドキュメントROOTのエラーに反応しますが正常でしょうか
testディレクトリー内のエラーはそのディレクトリー内に置いたerrorに表示したいのですが
957Name_Not_Found:2009/01/23(金) 21:12:57 ID:MvOgRn+i
>946
自分は942ではないのですが質問です。
同IPでの閲覧時ににパスワードをかけたい。
フツーにBASIC認証を設定までは行いましたがその後がわかりません。

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
AuthUserFile /home/example/public_html/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
order deny,allow   今ココ

order allow,deny
allow from all
deny from ××.××.××.× にすると弾くだけだし

よくわからないまま
<LIMIT GET POST>
order deny,allow
deny from all
allow from ××.××.××.×
</LIMIT>とか試したけど何も認証を求めてきません。
正しいやり方がありましたらご教授いただけませんでしょうか・・・
958Name_Not_Found:2009/01/24(土) 07:43:00 ID:???
>>952
>>3
【例示用ドメインについて】
959Name_Not_Found:2009/01/25(日) 15:40:02 ID:???
質問です。

ttp://web-php-proxy.com/ のサイト経由で自分のサイトにやってくるアクセスを
弾きたいのですが、このように特定サイト経由のアクセスを弾く事は出来ますか?

960Name_Not_Found:2009/01/25(日) 15:54:42 ID:???
>>959
はい、弾く事は出来ます
961Name_Not_Found:2009/01/25(日) 17:09:24 ID:???
>>959
ありがとう。調べてみます。
962Name_Not_Found:2009/01/27(火) 07:49:31 ID:???
質問です。
example.com/aaa.cgiにアクセスしたときexample.com/aaa/と表示させたいのですが
どうすればよいのでしょうか?
963Name_Not_Found:2009/01/27(火) 07:54:56 ID:???
962です。間違えました。
example.com/aaa/bbb.htmlにアクセスしたときアドレスはそのままで
example.com/aaa.cgiの内容を表示させるにはどうすればよいのでしょうか?
964Name_Not_Found:2009/01/27(火) 08:00:42 ID:???
>>963
bbb.htmlにフレームを採用してaaa.cgiを埋め込むのでは駄目なのですか?

といいますか、いまいち質問の環境が理解できないのですが…

あなたが分かっている事って他人は全く知りませんから、
ディレクトリやhtmlファイルとcgiとのリンクの結びつき等、
どうなっているのか構成をもう少し示していただかないと、
答える人は憶測でしか答えられないと思いますよ?
965Name_Not_Found:2009/01/27(火) 09:09:14 ID:???
>>964
ありがとうございます。解決しました。
966Name_Not_Found:2009/01/27(火) 18:20:22 ID:jhxN+Rtc
http://aaa.com/にアクセスするとhttp://aaa.com/hoge/にリダイレクトするようにしたいのですが、逆は上手くいくのにどうも上手くいきません。

Redirect permanent /hoge/ http://aaa.com/ 成功

Redirect permanent http://aaa.com/ /hoge/ 失敗

どのように記述するべきでしょうか
967Name_Not_Found:2009/01/27(火) 18:50:34 ID:???
そんくらいマニュアル嫁よ
968Name_Not_Found:2009/01/27(火) 21:40:21 ID:???
>>966
テンプレくらい読みなさい

>>3
【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
969Name_Not_Found:2009/01/27(火) 21:56:46 ID:???
マニュアルを読んで全ての問題が解決するなら、サポートセンターなんて必要がない。
ゆえにこのスレも必要ない。
次回はスレは建てないように。
970Name_Not_Found:2009/01/28(水) 02:39:06 ID:???
>>969
それは読んだやつが言えるセリフ
マニュアルをろくに読まずにいきなりサポートセンターに頼っちゃいかん
971Name_Not_Found:2009/01/28(水) 08:52:15 ID:???
>>970
お前のようなやつが契約書の但し書きもまもとに読まずに後で暴れるんだろうな・・・
972Name_Not_Found:2009/01/28(水) 09:25:25 ID:???
>>971
そしてお前のようなやつがサポートしてくれるんだなw
973Name_Not_Found:2009/01/28(水) 13:23:11 ID:???
いつからここがサポートセンターになったんだよ。
>>966 の恥ずかしい質問を読んででから、持論を展開しろよ。
974Name_Not_Found:2009/01/28(水) 13:46:56 ID:???
>>973
答えるなら早くしろ
でなければ帰れ!(色眼鏡をクイッと上げながら
975Name_Not_Found:2009/01/28(水) 15:33:30 ID:???
>>973
それなら質問コーナーなんてスレタイ付けずに、雑談スレにしろよ。
馬鹿じゃねーの?
976Name_Not_Found:2009/01/28(水) 20:13:42 ID:JbQ/Cvsl
htaccessのアクセス制御についてお伺いいたします。

特定のIPからのアクセスは無条件に許可
その特定のIPアドレス以外からのアクセスにはベーシック認証をかける

という設定にしたいです。片方ずつはうまく動いたのですが、この二つを組み合わせるのに
どのように記述すればよいか分からず困っています。

よろしくおねがいします。
977Name_Not_Found:2009/01/28(水) 22:01:14 ID:???
>>976
マニュアルに全てかいてあるらしいので
マニュアルを読め。
それでもわからなければぐぐるか自分でしらべろ。

と。このスレの模範回答でレスしました。
978Name_Not_Found:2009/01/28(水) 23:12:07 ID:???
>>976
>>977は無視していいからね

どういう風に書いているのか、
もしよかったら.htaccessなり書いてある物を全て晒してもらえるかな?

そうすればどこが間違っているのかとか答えやすいと思うから
979Name_Not_Found:2009/01/29(木) 13:05:06 ID:???
980Name_Not_Found:2009/02/03(火) 20:58:14 ID:???
すみません、質問よろしいでしょうか。

Webメールからのリファラをはじきたいと思っています。
以下のような記述ではできませんでした。

order allow,deny
allow from all
deny from .example.com

SetEnvIf REFERER "mail" Ref1
deny from env=Ref1
deny from env=shutout

SetEnvIf REFERER "mail" shutout
も試しましたができません。
どうすればよいでしょうか?
ちなみに、example.comからのアクセスを弾く事はできています。
よろしくお願いいたします。
981Name_Not_Found:2009/02/04(水) 02:23:44 ID:???
Refererが大文字になってるからダメなんじゃない?
982980:2009/02/04(水) 07:17:06 ID:???
>>981
レスありがとうございます。
REFERERをRefererやrefererに書き換えてみましたが、できませんでした。

他に何か要因はないでしょうか?
983Name_Not_Found:2009/02/04(水) 07:42:46 ID:???
SetEnvIfディレクティブが使用できない鯖というオチではあるまいな
984980:2009/02/04(水) 08:00:10 ID:???
>>983
!!!
鯖には「.htaccess使用可」としか書いていないので問い合わせてみます!
985980:2009/02/04(水) 14:21:35 ID:???
すみません、ノートンのせいでしたorz
ノートン切ったら980で書き込んだままの通りで弾けました。
お騒がせしました。

あの、スレ違いだったら無視で結構なんですが、他のノートンを使っている人が
Webメールからアクセスしてきた場合に弾く方法はあるでしょうか?
図々しくて申し訳ありません。
986Name_Not_Found:2009/02/04(水) 14:30:46 ID:???
>>985
ノートン先生がブラウザーがリファラーを吐くのを切ってますから、
どうにも対処がないと思います
987980
>>986
やっぱり無理ですか……。
このままで行きます。

ありがとうございました。そして何度も失礼しました。