当分スレなしでもいいかと思ったんだけどなんとなく立ててみた。
>>4 これはありがたいです。
初心者スレでも伺ったのですが、固体識別番号での
アクセス制限について聞きたい事があります‥
特定の携帯電話(主にDoCoMo)だけを入室可にしたいのです。
Basic認証だと入室の際、手間が掛かるので固体識別番号で
振り分けが出来ればなと思ってます。
しかし、そのままicc又はserを記述しても出来ませんでした。
やはり公式サイトでしか出来ないのでしょうか?
>>5 RewriteCond %{HTTP_USER_AGENT} ser[0-9a-zA-Z][0-9a-zA-Z]
みたいなのでできね?
>>6 レスありがとうございます
帰り次第速攻で試してみます
携帯はいつでも識別番号吐きながら GET や POST してるわけじゃないですよ。
>>8 知ってる。
だから
>>6 は、utn属性でpost/getしてきた時だけに有効。
10 :
5 :2008/03/22(土) 00:51:07 ID:???
度々すみません 私の固体識別番号が serxxxxxxxxxxxxxxx(iccの場合なら、iccyyyyyyyyyyyyyyyyyyyy)だった場合、 私のみを入室可能にするにはどのように記述すればいいのですか? .htaccessは無知でして、質問ばかりすいません。 お暇であれば回答お願いします。
>>10 マジレスしてやろう。
ドコモの勝手サイトの場合は、端末IDを取得する場合は、必ず警告が出る。
mod_rewriteのURL書き換えで対応する場合は、サイトの入り口だけでなく
全ページで端末IDを確認するとなると、ページ遷移のたびに警告が出るって
ことだけど、それでも良いのかえ?
現実的には、mixiがやってるように、サイト入り口で端末IDで認証して、そ
れ以降は、セッションで持ち回るしかないんじゃね?
A.html → B.html B のページに行くとき、A.html経由じゃなきゃ行けないようにしたいです。 つまり、リファラが A のアドレス以外は全てアクセス拒否にしたいのですが、 このとき B.html があるディレクトリ内の .htaccessには 何て書けば良いのでしょうか お願いします。
age
14 :
Name_Not_Found :2008/03/22(土) 21:13:40 ID:a3FnqSDt
>>11 レスありがとうございます。
毎ページで警告となると考えものになりますね‥
しかし一度試したい気にもなります。
もしよろしければ、教えて頂きたいです。
そこから工夫してみます。
ちなみに
簡単ログインプログラム(サンプル?)は持ってはいるんですが、
sendmailという未知なものが必要で避けました‥
15 :
12 :2008/03/22(土) 21:37:17 ID:???
自己解決しました
>>1 おつです 早速使わせていただきますね
サイトを表示した際(特定の形式のファイルを)キャッシュしないようにしたいのですが、
<Files ~ "\.(gif|xml)$">
Header set Pragma no-cache
Header set Cache-Control no-cache
</Files>
これですとOpera使用の場合にキャッシュしてしまいます
グーグル先生に聞いてみたのですが同様の質問は幾つか見つかるのですが回答が見つかりませんでした
Operaのキャッシュの挙動が特殊で、構築側での制御が無理なのでしょうか?
>>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"も
試してみる必要がありそうよぉ。
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 ねぇ。
>>12 ノートン大先生使っている場合、リファラが出ないことが多くない?
特定のパラメータをもったURIをリダイレクトしようとしているのですが
リダイレクト先にパラメータを引き継いでしまいます。
パラメータを引き継がない方法はありますか?
【現在の設定】
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/home/hoge\.cgi$
RewriteCond %{QUERY_STRING} ^id=3$
RewriteRule ^.*$
http://hogehoge/hoge/index.html [R]
クエリーは、[QSA]を指定しなければ、消えるんじゃないのかね?
リダイレクト先にも、消えずに、くっついて、来ます、よ。
つーか、試せばわかる話で。
RewriteEngine on
RewriteCond %{QUERY_STRING} ^q=%E7%9B%86%E3%81%AE%E7%AA%AA$
RewriteRule .*
ttp://www.google.co.jp/search [R,NE]
乳酸菌の摂り過ぎで脳ミソが腐ってしまってやがるですぅとか書こうと思ったら
ドキュメントにマジで最後を?で終わらせると消せるって書いてありやがったですっ!
ちょっと前までSetEnvで茶を濁してばかりだったのにいつの間にこんな細かいところまで
読んでやがったですかぁ!
>>22 QSAはクエリー付きのURLに置換した後さらに元のクエリーをくっつけるっぽいですぅ。
25 :
Name_Not_Found :2008/03/25(火) 16:40:01 ID:QZVJ63A1
26 :
16 :2008/03/25(火) 21:00:10 ID:???
>>17 ,18
レスサンクスです 調べたところサーバにmod_headerとmod_rewriteは入っていました(mod_expiresはなし)
期間設定でなくキャッシュそのものを作らないようにしたいのですが、その場合はno-cacheのままでよさげでしょうか?
そして Header set Expires -1 も書き加えてみたのですが、相変わらずキャッシュしてしまいます…
そもそもOperaの設定自体でキャッシュ無効にしても、終了時に消えるだけでキャッシュ自体はしているようなので
キャッシュを作らないように出来ないのがOperaの現仕様なんでしょうかねえ…
27 :
18 :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 にとっては「キャッシュしてないよ」なのかもしれない。
28 :
18 :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 こんな感じに。
誘導されてきますた ロボ避けと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 になる? 初歩的な質問ですまないが助言くれると助かります
国外からの接続を切ろうとしています。
攻撃を受けたことはないので、一応の希望ということで考えています。
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が羅列されていますが、
これをそのまま使ってもよいのでしょうか。
ずいぶん長い列ですが、これでなければならないのかと気にしています。
>>30 apacheのhttp.confでHostnameLookupsがonになってなかったら、
Allow from .jpなんてのは使えないと思うけど、それは大丈夫?
それと、国外からのアクセスを全て拒否なら、
order deny,allow
deny from all
で、全てを拒否して、それから、
allow from 国内のISP
として、国内だけを許可するほうが良いと思うが。
>>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>
みたいなのを追記して認証の制限から除外しておく。この記述だとロボットも歓迎するけど。
33 :
32 :2008/03/26(水) 16:36:30 ID:???
ていせい。 × /home/example1/.htaccess の内容 ○ /home/example1/public_html/.htaccess の内容
>>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はどうしても蹴りたくないのなら
その「ずいぶん長い」のを使うのが無難かも。
35 :
29 :2008/03/27(木) 01:48:22 ID:???
>>32 初心者丸出しでスマソorz
レスありがとう、やってみます。
36 :
30 :2008/03/27(木) 02:50:45 ID:???
どうもありがとうございます。 .net と .com のプロバイダを調べるのが面倒で、 うろ覚えですが、Accept-Languageを入れておけば とりあえず問題ないかと考えていたような気がします。 Accept-Languageだけで規制するならば、 確かにホストやIPを見る必要はなさそうですね。 容易に偽装できるのであまり役に立たないかもしれませんが…。 プロキシを使って接続するのは自分のホストを知られたくないからだろうかと思うと 無理に規制するのもどうかとは思うのですが、 なんとなく気持ちが悪いので>30のリストを使うことも考えてみます。
JPNICの国内アドレス全部とBBQで海外と国内のプロクシ含めた国内以外全部弾けるよ うちはそうしてる
特定の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以下をどのように書けばよいのか 分かりません。
>>38 なぜにそんな面倒くさいことを・・・
order deny,allow
deny from all
allow from 127.0.0.1
allow from 192.168.0.0/24
ではダメなのか?
どうせあいつの事だから 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
>>38 >Hostが特定のものの場合だけ
Virtual Hostにして、HOSTが特定のものじゃない時には別サイトを表示
すればいいのじゃまいか?
43 :
38 :2008/03/27(木) 17:46:41 ID:???
みなさん回答どうもです。
IPでのアクセスや、こちらが用意したHost名以外からの
アクセスを禁止したかったのですが、
>>40 さんの方法で
無事できました。
先に全てをNGに設定しておいて、許可する場合だけ
NGの環境変数を無くすというのは目から鱗でした。
ありがとうございました。
44 :
26 :2008/03/27(木) 21:23:09 ID:???
>>27 教えて頂いたものを試したら無事出来ました!どうもありがとうございました
■ おすすめ2ちゃんねる 開発中。。。 by FOX ★ このスレを見ている人はこんなスレも見ています。(ver 0.20) MySQL 総合 Part13 [データベース] qsv系のスパムメール被害 qsv03 [架空請求・spam]
>>3 の後半を書いたのは無意味だったような気がしています。
>>42 前にも似たような書き方を見たから
RewriteCond %{HTTP_HOST} ^(example\.com)(:80)? [NC]
どこのサイトでこういう書き方を教えてるのかなと気になる程度で
記述の問題ではなさそう。
・www ありのほうのドキュメントルートにそれを置いていないか
・ドメイン屋のおまけ機能のフレーム転送たら言うのが www なしのほうで効いてないか
・その他いろいろ
・日頃の行い
この辺を確認してください。
47 :
42 :2008/03/29(土) 14:56:20 ID:???
>>46 レスありがとうございます。
.htaccessの記述に関しては、以下のサイトで作成しました。
ttp://www.htaccesseditor.com/ >・www ありのほうのドキュメントルートにそれを置いていないか
レンタルサーバー業者からは、ドキュメントを置くフォルダを指定されていて、
wwwありとか無しとかの区別がよく分かりません。
もしかしてこの辺が問題なのかもしれないです。
とりあえず、いろいろやってみます。
質問させて下さい。 ・refererが外部サーバだった場合、トップページにリダイレクト というのはどう書けばいいのでしょうか? テンプレに載っているリンク先を読みましたが、 ・refererによるアクセス制限で、外部サーバからの呼び出しを禁止 ・あるディレクトリ(または古いサーバなど)にアクセスしたら今のサーバのトップにリダイレクト というのは分かったのですが、両者の機能を足したやり方が分かりません。 どうか宜しくお願いいたします。
特定のREFERERがトップページではない場合に トップページにする方法を教えてください
>>49 自サーバーがwww.example.comだとして、これでどうだ?
試してないから自信はないがw
RewriteCond %{HTTP_REFERER} !www¥.example¥.com
RewriteRule ^.*$
http://www.example.com/ [R,L]
55 :
51 :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
56 :
Name_Not_Found :2008/04/01(火) 06:52:33 ID:DjL4NC5I
初心者スレから誘導されたので、こちらで質問させて頂きます。 トップページ以外へのアクセスをすべてトップページへ転送させたいのですが、 Refererが自分のサーバ以外の場合にしたいのです。 .htaccessを自分でも出来る限り調べましたが、Refererによる制限とリダイレクトを組み合わせる方法が分かりません。 組み合わせは出来ないのでしょうか。 どうかご教授宜しくお願いします。
>>54 > 他サイト1,2
ってなんだよ。
参照元のことか?
>>57 そうです。
特定の参照元からのトップ以下のアクセスは
すべてトップに飛ばしたいです。
>>58 じゃ不特定の参照元から、トップ以下のページへアクセスがあった場合は、
トップに飛ばさずにそのまま見せるということでいいのか?
HTTP_REFERER && Redirect な注文の中の人は何人いるんだろう。
>>60 zen.example.com 側で
RedirectMatch 301 .*
http://go.example.com/ すれば go.examle.com の / に 301 してくれたような気がします。
>>61 そうです。
REFERER無しの場合もそのまま見せます
ここのうぷろだみたいに
http://www.uploda.org/ 音声ファイルを直リン禁止にしつつ
右クリでダウンロードできるようにするには
どうしたらいいだろ?
その辺のサンプルみてやったら
音声ファイルは左クリも右クリも駄目になった
>>62 ありがとうございました!できました!感謝です。
67 :
1/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 : :
68 :
2/2 :2008/04/02(水) 15:35:12 ID:???
※.htaccess(B)の内容※ #ブラックリスト order allow,deny allow from all deny from ***.***.jp deny from ***.***.il24.net : : ---------------- 検索をかけても他のページばかりが引っ掛かり、 目的の情報が見つからず途方に暮れています…。宜しくお願いします。
.htaccessって <Directory> は使えなかったっけ?
>>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で囲まれている部分の中身のようなものですぅ。
厳密には解析される順序が違うですけど。
公式のドキュメント以外で s/(allow|deny) from all$//ig; な話が 一番たくさん書かれてるのは歴代のこのスレかもしれない。
72 :
67-68 :2008/04/02(水) 18:06:44 ID:???
>>70 教えて頂いた方法で上手く行きました。
ありがとうございました!
海外弾きを入れる前まではOrder allow,denyだけを使って弾いていて、
階層別に記述した.htaccessも何となく上手く行っていたので
解答が得られなかった場合はそのままで行くつもりだったのですが、
すでに落とし穴に嵌っていたのですね…。
早めに気付けて良かったです。本当に助かりました。
>>65 特に細工しなくてもできるってことか
じゃ使ってるXREA鯖の仕様の問題かな
74 :
74 :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 おおまかにこのような状態です。続きます
75 :
74続きです :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を置くことは
避けたほうが良いのでしょうか?
回線のせいか自分では非常に重くなったと感じませんが、サーバに大きな負担になるものでしょうか。
/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 のように同じ階層でもたくさんあるとディスクキャッシュから落ちた分を 読み込みなおす分の遅滞が起きやすくなるですぅ。
77 :
74 :2008/04/03(木) 14:22:10 ID:???
>>75 なるほど、あまりにも多重にならなければ
現在ではそんなに差がないのですね。
読み直す分の遅延、という点のほうを気をつけることにします。
ありがとうございました。
29でBASIC認証について質問した者です おかげで思い通りに設置出来ました。ありがとう。 すみませんがまた質問をさせてください。 設置は出来たんだけど、今度は何故か正しいPASSを入力しても中に入れないんだ… 普通に.htpasswdにIDとPASS書いたんだけどな。 PASSはネット上の暗号化ツールを利用させてもらって暗号化しましたし…。 何度も試してるんだけど何が良くないんだろう… 何か思い当たる原因などあるでしょうか。
このスレでは.htpasswdの質問まで受け付けてくれるのでしょうか? .ht*関連対応かという、スレに挙がる質問全般についての疑問です スレタイ".htaccess"に忠実なのか、意外とファジーなのか 今後質問する際の参考にしたいと思い質問させてください
81 :
Name_Not_Found :2008/04/04(金) 16:37:31 ID:fWriW/iS
ErrorDocumentの後ろにQUERY_STRINGつけて飛ばしたいんだけど、 どうやればいいの? こんな感じのことしたい ErrorDocument 401 /404.php?%{QUERY_STRING}
解決しました
>>81 →
>>82 ?
>>79 考えられる原因は
・改行とかパーミッションとか
・諸事情でパスワードの暗号化方式に種類があって(以下略
・.htpasswd が AuthUserFile で指定された場所に、ない ←たぶんこれ。
今まで同じ質問が来るたびに ID=nanasi / PW=aaaa 時の記述・数パターンを提示しても
「全部通りません」が大半なので、暗号化にミスって云々の可能性は低そうです。
配置確認用のCGIでも書いておけば、スレで使い回せるのかな。
>>80 単に正規表現の話になってたり RFC2616 の話をしてたりするぐらいの忠実さです。
.htpasswd の質問はここでいいと思うけど /usr/sbin/htpasswd の質問がどうなるかは不明。
AuthUserFileが読めない時はInternal Server Errorになるから Authorization Requiredが返ってくるならAuthUserFileの 中身の問題になるわぁ。 $apr1$で始まるMD5ハッシュと{SHA}で始まるSHAハッシュ以外は サーバのOS依存になるわぁ。 パスワードをそのまま平文で登録する→Windows, BeOS, NetWare? のみ OS付属の関数でハッシュ化する→上の3種以外のOSのデフォルトで通常はDESが使われる htpasswd以外での暗号化ツールのほとんどはDESによるものだから Windows上でちょっと実験用にというときにパスワードが通らなかったりするわぁ?
85 :
83 :2008/04/04(金) 22:10:31 ID:???
> AuthUserFileが読めない時はInternal Server Errorになるから 「あれっ、勘違いしてた?」と思いながら試してみたら AuthType Basic AuthName "test area" AuthUserFile /dev/urandom/.htpasswd Require valid-user 401 の進呈を受けました。うーん。
「あれっ、勘違いしてた?」と思って探してみたら、ファイルが読めなくても Authorization Requiredが返る条件があるわぁ。 Authorization Requiredが返ったからファイルが読めていると勘違いされた方々には 深くお詫び申し上げますわぁ。
87 :
79 :2008/04/05(土) 12:28:57 ID:???
>>83-86 返答ありがとうございます!
Authorization Requiredが返ってきてます
つまりは
AuthUserFile /xxx/eample/.htpasswd
の部分の記述がおかしい可能性が高いってことでしょうか。
指定場所は今ので合ってるつもりなんだけど…、うーん…
とりあえず、色々やってみます。レスありがとうございました!
88 :
79 :2008/04/05(土) 12:53:18 ID:???
解決しました!! 配置指定にpublic_htmlが足りなかっただけのようで。 何やら稚拙な質問ばかりしてしまいすみません。 反応くださった方々、本当にありがとうございました! スレ汚し失礼しました!
ヽ _,,.,、、,.ィ-- 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 ノ
しかしなんだな。文末に!を連発されると、なんかこう.....
若いっていいじゃないか┐(´ー`)┌フッ
すみません。 ファイルの一覧表示を禁止し、エラーページを表示出来るようにするために Options -Indexes ErrorDocument 401 error/401.html ErrorDocument 403 error/403.html ErrorDocument 404 error/404.html ErrorDocument 500 error/500.html という記述をしたのですがどうにもこうにもインターネットエラーになってしまいます。
>>92 Options は使える環境?
レンタルサーバだと Options が使えない場合があるよ
.htaccess の最後の行は改行してる?
>>92 こういうときは、1行ずつ試してみるものさ
.jpと.bbtec.netなど日本のプロバイダ限定にしています。 今まではそれで海外や串からのアクセスを弾けていたのに 昨日中国のIPが入ってきました。韓国など他のIPは弾けています。 .cnをいれても中国IP(変動)だけが弾けません。特別な方法などありますか? 宜しくお願いします。
1) deny,allow 2) allow,deny の書いている順序は上記どちらになっていますか? 過去ログをさかのぼれば分かると思いますが、 上記の順序によっては設定が筒抜けになっているのかもしれませんね
95です。レスありがとうございます。 deny,allowになっています。他の国は弾けているんですけどね…
何度もすみません。記述の仕方はこうです。↓ Order Deny,Allow Deny from all Allow from .bbtec.net Allow from .jp
APNIC
>>93 さくらインターネットなのでOptions使えないみたいでした。。
ErrorDocument単独でやってみたのですがそれもできませぬ・・・。
うーん、さくらインターネット。。。
ちなみに最後の行は改行してます。
一行ずつも試してみたのですが。。。
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は付加してくれないし、読み込んでもくれません(涙
Options使えなきゃ一覧隠せないなぁ・・・。 あぁ、まじさくらインターネット、まじさくらインターネット。
>>101 >SetEnvIf HTTP_X_DCMGUID "*******" mypage
おまい、この記述が好きだなw
>>100 さくらでも ErrorDocument 使えますよ
設定のどこかで挫けているはずなので、以下の手順でいかがでしょう?
1) 適当なディレクトリに ErrorDocument の記述だけした .htaccess を設置
2) <アカウント名>.sakura.ne.jp/<適当なディレクトリ> へのアクセスで実験
3) 手順 2) が成功した後、独自ドメイン等でもテスト
あとは他の方のアドバイスを参考にしつつ、
さくら独自の設定でこけていると感じたらこちらへ
さくらインターネット 質問にマジレスするスレ Part15
http://pc11.2ch.net/test/read.cgi/hosting/1204808205/
>>102 Options 使えなくてもファイルやディレクトリの一覧は隠せますよ
違うことの一覧をおっしゃっているのでしたら失礼
質問される方は質問した最初のレス番号を名前欄に入れておくと
回答側から分かりやすくてよいと思いますので参考まで
>>103 >>105 どもっす。
相対パスでうまくいかなかったので絶対パスでやったらうまくいきましたです。
どうもよくわからんなぁ・・・、なんで相対パスが上手くいかないのか・・・。
>>106 DirectoryIndex index.html .ht
これを使ってみたら成功しました♪
回答ありがとです。
>>104 一回使うと、特に理由がないけど、次からも同じような記述をしてしまう・・・
同じパターンで使えば、不具合箇所を探すのも楽だし。
IEとそうでないブラウザで別の拡張子のファイルを提示、なんてことできる?
111 :
Name_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とコンテントネゴシエーションの併用するには、他に何か必要ですか?
mod_rewrite
114 :
Name_Not_Found :2008/04/10(木) 13:52:30 ID:vDjoaP21
質問させてください (1) RewriteCond %{REMOTE_ADDR} ^xxx\.xxx\. で弾くのと、 (2) deny from xxx.xxx. で弾くのと、 サーバにかかる負荷は(2)の方が若干軽いといったことはありますでしょうか? 色々と調べてみたのですが該当する記述を見つけることができず、 どこかに該当情報がありましたら教えていただけますと助かります よろしくお願いいたします m(_ _)m
あるよ
117 :
111 :2008/04/10(木) 14:16:26 ID:???
softbank000123456789bbtec.netを規制するのだったら 2chがSoftBankBB規制する時と同じ要領でsoftbank000123を規制すればいい softbank000123XXXXXXbbtec.net ↑ ここは変動しても softbank000123XXXXXXbbtec.net ↑ ホストの先頭6桁は地域固定されてるから変動しない
質問です。 PHPを組み込んだXHTMLを動作させるためには、 必ずMIMEタイプはapplication/x-httpd-phpでないといけないのでしょうか。 できればXHTML文書としてapplication/xhtml+xmlを指定したいのですが・・・。
>>120 IEが表示できないと思うが
ま、それはさておき、phpから、ヘッダーを出すときに、
application/xhtml+xml
を指定すればよいだけでは?
122 :
120 :2008/04/10(木) 20:37:16 ID:???
>>121 ごめん、どうやったらPHPからヘッダーを出すときにMIMEタイプを指定できるの?
123 :
edry(えどりぃ) :2008/04/10(木) 20:51:18 ID:vDjoaP21
124 :
120 :2008/04/10(木) 20:54:46 ID:???
>>123 なるほど、専用の関数が用意されているんですね。
ありがとうございました。
お前らってどうやって.htaccessについて勉強してるんだ? なんか基礎的な文法から体系的に説明しているサイトなり書籍なりは存在しないものか。
日本人の情報は真偽が確かじゃないからマニュアル
>>122 phpは、スクリプト中でprintやechoが出てきたとき、ヘッダーが
送られてなかったら、勝手に
Content-type: html/text
を送るあるよ
なので、phpからhtml/text以外のコンテンツをはき出す場合は、
header
で、適切なヘッダーを送り出さないといかんのです
>html/text
>>128 アイムソーリー、フクダソーリー
text/html
だなw
131 :
125 :2008/04/10(木) 22:41:37 ID:???
うーん、やっぱり体系的に説明されているものはないのか。 プログラミング言語とかXMLとかはそういうサイトなり本なりがあるのに、 なんで.htaccessに限ってないんだろうね。 不思議だ。
>>131 .htaccessでやることは、httpd.confでできるからな。
.htaccessで探さずに、httpd.confでさがしたほうが良いかも。
>>133 「俺様のやりたいことが、すぐに見つかる」
じゃないかと
>>125 人によって違うんだろうけど、
>>126 >>130 に同じ。
http://localhost/manual/ で済む回答者は自分だけじゃないと思います。
・DNS 方面のお話。
・PCRE な正規表現。
・主に RFC2616。
・まだ何かありそう。
本気で解説しようとすればこんなめんどくさい事柄まで言及しないといけないから
「どっかで見たようなネタだけ」の解説サイトになりがちなのかもしれません。
(allow|deny) from all を教えて Order で「原則(許可|拒否)」が変わることを教えない
解説サイトが多いのは謎ですが。
>>132 それちょっと罠あるよね。初めにはまったw
サーバー設定ファイルと .htaccess との関係とか前提知識がないと
.htaccess に設定したものが有効にならなくて困惑する。
前提知識がないままに(正しいと思って)解説しているサイトがあるので、
>>126 のように信じられないと言われるのも仕方がないのかな。
.htaccess に関して情報を必要としているのは、サーバー管理ではなく、
レンタルサーバーとかのユーザーだろうから、
>>134 の言う通りで、
何ができるかが解りやすく説明されていると、
>>136 の求めているもの
になるのだと思う。
私はさくらインターネット使っているので、有志のサイトとかも参考にしてる。
http://faq.sakuratan.com/ たとえサーバー設定ファイルをいじれないユーザーであれ、ウェブサイトを
運営するなら、
>>135 の挙げたことは理解している方が望ましいけれど、
正直、それは情報量が多いし深い知識が必要なので、このスレで質問をする
人が求めているものではないのかもしれないし、その見解の相違があるから
質問者と回答者の間で不毛なやりとりになってしまうこともあるのだと思う。
そんなところかな。
それらを踏まえて、このスレのテンプレをちょっと考えてみます。
いい感じで誘導できて、質問者と回答者がうまいこと話せるもの、
日曜までには素案書くよ。
このスレの住人居る? いなければ次のスレ立てるまでは面倒みるけど、
住人が居るなら、テンプレの件を気に留めておいてもらえるとありがたい。
勉強のためずっと居座ってはいるけど、 サーバを持っているわけでないので実際にひとつ試すだけでも手間がかかり、 結果なかなか身につかないという印象はある。 アクセス制限だけでも、 書いたものが希望通りに機能しているか調べるには時間がかかることがあるし。 せっかく勉強してもサーバごとに使用が許可されていたりされていなかったり、 同じ書き方でもレスポンスが違ったりするらしいので、なおさらわかりづらい。 目的別に書かれていてわかりやすいテンプレがあればうれしいとは思います。
ちょっと前から自サイトに 外国からのアクセスが非常によく来るようになりました。 これを機にアクセス制限したいと思い 解説サイトやスレなどを参考に書きましたが これをこのままアップしていいか今ひとつ自信がないので どなたか詳しい方、添削・採点をお願いします。 したいことは 直リン防止・日本語使用者のみ許可・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
141 :
140 :2008/04/12(土) 02:17:57 ID:???
すみません、長過ぎたので分けました。上の続きです。 #「百度」を弾く SetEnvIfNoCase User-Agent "Baiduspider" shutout SetEnvIf User-Agent "baiduspider" shutout SetEnvIf User-Agent "Baiduspider" shutout(略) よろしくお願いいたします。
>>140 直リンというのが何を意味しているのでしょうか?
・検索エンジン結果からのサイトの各ページへのダイレクトリンク
・掲載している画像など、txt系ファイル以外のコンテンツファイルへのリンク
・その他
百度以外も "spider" という UA (User-Agent) を使っているところが多いので、
"baiduspider" よりも
"spider" で弾いてしまってもよいかもしれません
それ以外のことについては他の方↓のアドバイスをご参考に〜
やってみて不具合があったら質問しろよ
めんどくせーから俺の使ってる奴晒してやるよ #百度 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
>>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
# 許可したものに当てはまらない百度はアクセスがないと思いますが、
# すり抜けてきたものは個別に拒否するしかないかな。
──────────↑ここまで
>>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>
──────────ここまで
>>147 >Allow from .jp
これは、apacheのhttpd.confの設定が
HostnameLookups On
でなければ、効かないですな
ホスティングはオンになってることが多いのかな?
apacheのデフォルはoffだけど。。。
>>137 ではテンプレの素案を書くって気分だったけど、
.htaccess に触れて間もない私が書くにはも少し勉強が必要だった。
スレの雰囲気を理解しつつ、6以前の過去ログにも目を通したりして
時間かけてちゃんと考え直します。
とりあえず思うのは、まとめサイトあるといいね。
レンタルサーバーとかのまとめサイトで個別に .htaccess の説明が
あったりするけど、レンタルサーバーに依存しない共通の情報あれば
使いまわしもできるだろうし。
不特定多数の人間が編集できるようなまとめサイトを作ろうという人がいるのであれば、 .htaccess関連の情報はセキュリティ的にクリティカルなものが多いので、 アカウントを取得しなければ編集できない等の注意を払っていただければ 積極的に編集参加したいと思います
153 :
Name_Not_Found :2008/04/14(月) 06:52:51 ID:uOtvAZ0q
質問です。 携帯からのアクセスは別ページに飛ばす、というのは どうやればいいのでしょうか? ・特定のホストからのアクセスを制限 ・転送 この2つを組み合わせるのが分からなくて… 個人的にも調べましたが、有用な参考サイトがあれば教えて頂けるとありがたいです。
>>153 3キャリアにリダイレクトするだけなら、それほどでもないよ
User Agentで判別すればいい。
振り分けには、色んな場合というか条件があると思うので、それを
ちゃんとまとめて、書き換え条件を書いていけば、面倒ではあるけ
ど、難しくはないと思う。
>>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`)
156 :
153 :2008/04/14(月) 11:18:21 ID:???
>>154 >>155 うわ!神が2人もいらっしゃる!本当にありがとうございます。
「.htaccess」で検索していても何処をどうすればいいか全く分からなかったのですが、
「.htaccess 携帯 振り分け」で検索したらやっと参考サイトが出てきました。
(恥ずかしながら「振り分け」というキーワードが思いつきませんでした。でもまだ自己解決したわけではありません…)
>>155 さんが書いて下さったおかげで、自分が何をすればいいのかやっと分かりました。
ありがとうございます、頑張ってみます!
携帯の振り分けの場合、User Agentを使うと、特にSoftbankは条件が面倒になる。 なので、俺は、ヘッダーのx-jphone-msnameで判別してる。 このヘッダーが存在してれば、Softbank端末として処理してる。
>>159 たかだか158個の過去ログもよまんのか?w
>>159 出来ます
>>56-からを読んでも分からなければ、
1.調べたこと
2.やってみたこと
3.その他、 .htaccess について知っていること(レベル)
などを書き添えて再質問してみてください
>>160 まぁねぇ
┐(´ー`)┌
>>162 localhost で試してエラーログ見てみましょう。
質問させて下さい /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)の制限を有効にし、かつそれぞれ直リンク禁止・認証を行うには どのように記述するのが最も負荷が少なくてすむのでしょうか。
>>164 ほんの一月ほど前にも同じような質問があったな
またおまいか?w
>>163 ↓これ出力された。
File does not exist: /home/user/www/test/favicon.ico
そっちの環境でなんか問題があるなら、
試した環境と結果の内容書かないと言いたいことが伝わらないよ。
>>166 言いたいことは
Request exceeded the limit of 10 internal redirects due to probable configuration error.
です。そちらの環境では壮大なループにならないんですね。
%{HTTP_REFERER} ^$ で GET / しようが RewriteCond にマッチするので
RewriteRule を適用されて内部リダイレクトされるんだけど
その結果がまた RewriteRule 適用で内部リダイレクトされてその結果がまた(ry
というのが起きる環境を書け、と言われるとは思わなかった。
アニヲタさん(複数?)や無駄に腰が低い人(
>>27 とかの人)を
最近見かけなくなったように思う
>>86 ぐらいまで?
よく分からないけど、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)で問題がないか、負荷が
どれくらいかを見るべきだと思う。それで負荷高くてダメな場合はそれ以上
できないわけだし。
>>171 質問する人以上に回答する人がいても無駄が多くなるから
>>86 以降は様子見モードに切り替えることにしたわぁ。
>>174 時々出てきてくれないと寂しいです!><(いや、けっこーマジで)
ヽ _,,.,、、,.ィ-- 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 ノ
変なコテより断然中身が適切な
>>174 が必要なんです!
178 :
1 :2008/04/18(金) 14:14:35 ID:???
>RewriteEngine on >RewriteRule ^(.*/)$ himmel/sora.php?id=/$1 >RewriteRule ^$ himmel/sora.php?id=/ どなたかこのコードを日本語に翻訳してください・・・。
>>181 テンプレ
>>3 の 【例示用ドメインについて】 にも記載しているとおり、
例に挙げただけでも、過去・現在・未来に存在する可能性があるため、
質問/回答時の例として使うドメインは、例示用として予約されている
example.com、example.net、example.org、example.jp などを使いましょう
これに好きなサブドメインをつけて説明するのは OK です
例) hoge.example.com
以上のことに注意しつつ質問や回答するよう次回から心がけましょう
183 :
181 :2008/04/18(金) 17:44:12 ID:???
>>182 申し訳ありませんでした。
引き続きわかる方がいらっしゃいましたら、お願いします。
184 :
109 :2008/04/18(金) 21:17:06 ID:???
確かにRewriteCondを使ったらブラウザごとに違うURIを出力できるみたいだけれど、
俺がやりたいのはコンテントネゴシエーションをしている場合のことで、
出力するURIが同一でファイルはブラウザごとに振り分けたいんだ。
具体例を出せば、
ttp://kuruman.org/diary/latestになる 。
これ、普段はXMLを出力しているけれど、IEのときに限ってHTMLを出力しているんだよね。
URIはどちらも全く同じなのに。
これってどう設定しているのかな?
>>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]
>>184 RewriteCond %{HTTP_USER_AGENT} MSIE
RewriteRule !^(MSIE.*)$ /MSIE/$1 [QSA,L]
でどうだ?
UserAgentにMSIEが含まれるときだけ、/MSIE/以下を表示する。
それ以外はそのまま。
検証はしてないので、動かなかったら勘弁な。
>>187 自己レス
RewriteRule !^(MSIE.*)$ /MSIE/$1 [QSA,L]
がおかしいね。
RewriteRule !^MSIE/(.*)$ /MSIE/$1 [QSA,L]
かなあ?
>>179 >>180 の第二号
URLの任意の文字0個以上と最後の/で終わるところまでを記憶し → himmel/sora.php?id=/"先ほど記憶したURLをここに展開" に書き換える。
以下次号
190 :
Name_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
教えて君でごめんなさい。 中国、台湾、韓国を弾く設定と refererがないとアクセスできない設定は書けたのですが、 両方を満たす.htaccessが書けません。 検索のヒントでも教えてもらえたら嬉しいです。
>>191 .htaccessに何を書いたかを出さないとコメントしようがないと思うが
>>190 rewrite_logを見たら、ヒントがあるかもね
>>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
すいません、すいません。これは例ですが、
これを一緒に書くにはどうしたらいいでしょうか?
>>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 が出る。
>>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
197 :
196 :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
>>194 下のallow from allで、それまでの設定が全てチャラになるよ
>>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 が定義されているときはアクセスを拒否する。
──────────
>>199 質問者がそれを doc_root に置きそうなことまで考えて
<Files> 使うぐらいのエスパーカ(えすぱーか)はあったほうがいいと思う。
>>197 ああ、そうなんですね。
ありがとうございます。
早速試してみます!
>>200 直リンクはOK 直接呼び出しNG とする理由次第かな。
逆のことをやりたいという状況はよくあると思いますが、今回の内容は初めてなので、
とりあえず、可能かどうかを知りたくて .htaccess で実現ができるかを質問してる
ことから、どのように実現できるかに絞って書いてみました。
魚と釣り方のどちらを求めているのかにもよりますが、魚なら
>>148 のとき同様に
拡張子で対象を絞れるように追加で示せば足りますが、釣り方なら混乱を避ける為に
最小限の方法を示すことが理解が容易になると考えました。
深読みが過ぎるかなとは思いましたが、画像サーバーと考えたときに、質問者が魚を
求めていて書かれたものをそのまま使うと、余計な記述は負荷にしかならないので、
最小限の記述にしたという背景もあったりします。
さらに深読みが過ぎるかなとは思いましたが、直リンクを許可したいサイトを特定の
ものとしたいとか(ry
不毛になりそうなんで。
>>150 な感じです。
204 :
Name_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 の場合どうかけばいいのでしょうか?
^58\.1[45]\.
>>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
>>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
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
使用サーバーはさくらインターネットのプレミアムです。
日本以外のホストを弾くと言うことも出来るのですが、
海外から来ている日本人ユーザーが結構いるので規制できないで居ます。
210 :
Name_Not_Found :2008/04/25(金) 13:28:24 ID:3P1p33XL
中国からの全ipを規制したいけど 何か効率のいい方法ないのかな? ip1つづつをdenyしてるとhtaccessがすごい行になるんだけど
deny from chankoro
>>209 CGI の環境変数を .htaccess で使おうとしてませんか。
おそらく試した .htaccess の2〜4番目は不要です。
SetEnvIf Range "^bytes=0-1048575$" deny_env
でマッチすると思いますので試してみてください。
213 :
Name_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を指定した場合はうまく規制できています。 何が原因なんでしょうか?
>>213 HostnameLookups Off
じゃね?
215 :
Name_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を規制するようにします。 お騒がせしました。#中国からのアクセスを国側でどうにか規制してほしいものです・・・
んなめどいことやらんでもソースに<!--天安門事件-->で終了
219 :
Name_Not_Found :2008/04/28(月) 17:50:57 ID:psY/2XFv
ハ,,ハ 僕、アルバイトォォ!! ('(゚∀゚∩_ 僕をどこかのスレに送って! /ヽ 〈/\ お別れの時にはお土産を持たせてね! /| ̄ ̄ ̄|.\/ | モツ煮 |/  ̄ ̄ ̄ 現在の所持品:新聞、∈(・ω・)∋ダムー、ゆうパック、ダム穴、百度
220 :
Name_Not_Found :2008/04/29(火) 21:25:56 ID:sS5y1L8c
超初心者ですがお願いします。 HPじゃなくて、ブログ(それも無料ブログ)で.htaccessを使って 特定のIPアドレスを制限することは可能ですか?
221 :
Name_Not_Found :2008/04/29(火) 21:35:27 ID:ac7HHgMU
222 :
Name_Not_Found :2008/04/29(火) 21:42:17 ID:sS5y1L8c
そうですね・・・ でも、できれば教えてもらえませんか?
224 :
Name_Not_Found :2008/04/29(火) 22:05:47 ID:ac7HHgMU
まずは人に聞く前に自分で調べる癖をつけましょう。 せっかくインターネットに繋がっていて2chだけしか利用しないのはもったいない。 君の文章から得られるキーワードは「htaccess IPアドレス 制限」 それから得られる情報は日本のサイトだけでもhtaccess IPアドレス 制限 に一致する日本語のページ 約 643,000 件 こんなにもあります。ここで聞くより643,000 件の中から自分で情報を探す方が君にとって有意義です。 その上で理解出来ない部分なんかがある場合にここなどで聞くとさらに知識が深まるのです。
WEBに公開している以上「完全」に制限することは不可能だと常に覚えておいて下さい
226 :
Name_Not_Found :2008/04/29(火) 22:27:10 ID:sS5y1L8c
みなさんヒント色々ありがとうございます。 htaccessでIPアドレスを制限する事に関するページはたくさんありますね。 ただ、初心者すぎて、HPじゃなくてブログでもそれができるかわからなかったんですが ブログでも可能のようですね。 なんとかやってみたいと思います。
>>212 規制されていて返答遅くなりました。
CGIの環境変数と.htaccessの環境変数は別なのですね。勉強になりました。
SetEnvIf Range "^bytes=0-1048575$" deny_env
で設定してマッチ出来たようです。
お陰でスパムの9割を規制できました。有り難うございました。
>>226 普通に借りるようなレンタル形式のブログじゃできないよ
ってみんな教えてあげないとw
自分で借りてるところのヘルプ見りゃ済むのにそれもしないし じゃあ、どこなら出来ますか?とか聞かれるのがオチだろ
そーゆー時はブログ系のスレに誘導して終了w
231 :
Name_Not_Found :2008/04/30(水) 02:14:26 ID:Ah742n5q
ブログなんかで何かしようと思うのが間違い
バカにされたー どうせバカだけど
ここまで while による自演
234 :
Name_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」 が出てきたので、これを利用して書き換えればいいのかと思っても どこをどう書きかえればいいのか解りません。 自分の機種を参考に適当な書き換えも試してみましたがアクセスできてしましました。 使用サーバーはさくらです。 よろしくお願い致します。
>>234 BrowserMatch のところを書き換えればいいじゃねーか
236 :
234 :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
お手数をおかけしてすみません。本当にありがとうございました!
>>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 が何やっているか分かりやすいのかな。
238 :
164 :2008/05/03(土) 19:06:10 ID:???
>>164 です
お礼が遅くなってすみません
>>165 ,173
この板には初めてきたので人違いだと思います
(A)〜(C)は1年以上前から設置してあるのですが、最近になって
(C)のディレクトリに対するIP制限が効いていないらしいことに気付きました。
((A)には串避けの記述もしてあるのですが、その串で(C)にアクセスできてしまったので)
それで今のままでは穴があるのでは…と心配になり質問をさせていただいた次第です。
とりあえず
>>173 さんが示して下さったページを熟読し、それでも不明な場合は
またお邪魔させていただこうと思います。
レスありがとうございました。
>>238 次回質問することがある時は、トリップをつければよいと思いますよ
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
>>240 > Allow from all
これがあるため、日本語環境でははないものも許可しちゃいます。
あと、welcome は許可設定しないの?
242 :
Name_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
と書き換えてみましたが如何でしょうか?
243 :
240 :2008/05/07(水) 11:38:33 ID:/tfusj0l
>>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
245 :
240 :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処理で大丈夫でしょうか?
>>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
ここの皆には常識だと思うがいくら弾いても携帯やモバイルとかゲーム機でしつこくアクセスしてくる奴が居るからそっちのUAも弾かないと無意味だよ
248 :
Name_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の"/"はディレクトリではなく文字なわけですが、どうやってただの文字であると認識させているのでしょうか
249 :
240 :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となっていたのですが…。
>>250 >各ディレクティブの基本的な使い方はドキュメントで確かめるのが吉。
それをやるのがイヤだから、このスレで質(ry
質問です。
直リンクを禁止し、リファラ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
>>252 下から3行目で
allow from all
ってやってるからじゃね?
254 :
252 :2008/05/10(土) 22:06:04 ID:???
>>253 ご教示ありがとうございます。
下から3〜4行目を削除して様子を見てみます。
>>248 質問の趣旨がわからないのですが、"何が"認識しないのか主語ほしいです。
自分で書いた PHP のお話ですかね?
あと、Wikipedia の例えですが、それは推測?
実際にその .htaccess を自分で試した結果ですか?
何かしら答えを求めているとは思うのですが、
その方向が明後日の方を向いていると、どつぼにハマる。
何かうまくいかないことがあるなら、次の情報を書くと吉かも。
1. 環境
2. やったことの手順
3. 期待していた動作
4. 実際の動作
>>255 趣旨がわからないっつーかお前が日本語読めないだけじゃない?
クエリに/が含まれている場合、
文字の場合はディレクトリではなく文字として認識させたいけど、
ディレクトリとして認識されてしまうってことだろ
すごく初歩的な質問になってしまうのですが、教えて下さい。 .htaccessのファイルをアップロードしたのですが、「アップロード完了」という表示は出てもホスト側のファイル一覧に表示されません。 「.で始まるファイルを表示」のチェックも入れており、ファイル名に関してもひととおり調べて、 アップロードしてから「.htaccess」とファイル名変更をしたりしてみても変更したとたんに表示されなくなってしまいます。 ちなみにロボ避け目的のみで文面はほぼ支援サイトのコピー、鯖は忍者でFTPソフトはFFFTPを使っています。 しばらく調べてみたのですが.htaccessに無知なのもありわかりませんでした。できれば教えてくださいorz
>>248 RewriteRuleってやつが/って文字をディレクトリの区切りであると認識するところの前に割って入って
別のところをさすように書き換えてるから/が文字のままで扱われるですぅ。
>>253 違うですぅ。
けど、妙にOrder, Allow, Denyがお気に入りの方がいらっしゃるから
そちらに任せて見てるだけにするですぅw
261 :
252 :2008/05/11(日) 16:11:53 ID:???
>>253 残念ながら、うまくいきませんでした。
>>260 解決法をご存知でしたら、どうかお知恵をお貸しください。
ホストBが掲示板に四六時中数分おきに書き込もうとしており、大変困っています。
>>260 しったかしないで、ちゃんと教えてあげて欲しいですぅw
>>248 「例えば」の wikipedia(MediaWiki) の場合は
> OS/2の"/"はディレクトリではなく文字なわけですが、どうやってただの文字であると認識させているのでしょうか
REQUEST_URI なり PATH_INFO なりを解体して解釈してるだけなので .htaccess は
あまり関係なさそうです。includes/WebRequest.php を眺めた限りでは。
SetEnvIf Referer "許可したいホスト" ref_ok SetEnvIf Referer "禁止したいホスト" !ref_ok order deny,allow deny from all allow from env=ref_ok みたいな。
>>258 ありがとう!よくある質問は見たつもりだったけど読み飛ばしてしまってたみたいだ
調べ足りなくてすみませんでした
>>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」にマッチしない。
あるページへの特定のリファラを含むアクセスを別のあるページにとばすのはどうしたら良いんでしょうか。
>>264-265 リファラの方はOKらしいのでハメチャダメ。
直リンクの方もOKなんでしょう。
> リファラAとホストBのアクセスを禁止したいのですが、
> リファラAは禁止され、ホストBは許可されてしまいます。
> どうすればいいのでしょうか?
質問の趣旨はこっちかと。
>>261 掲示板がphpなら <Files ~ "\.(gif|jpe?g|png|php|lzh|zip)$"> に php が紛れているのが
ものすごく気になるですぅ。
>>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
くだらない事を思いついたせいで肝心な事を書き忘れたですぅ。 .htaccessの中で<Filesとか<FilesMatchとか<Limitとか<LimitExpectを使ったときは それらの中外すべての場所にdeny from B.netと書いてしまえば確実ですぅ。
275 :
252 :2008/05/12(月) 20:07:52 ID:???
すみません、自己解決しました。 少し気になったので、該当のIPアドレスをWhoisにかけてみたところ、 ホスト名と一致しませんでした。 今まではホスト名で弾くようにしていたのをIPアドレスに変え、 掲示板のあるディレクトリに別の.htaccessファイルを置いてみました。 現在のところ、弾くことに成功しています。 元のファイルも皆様のアドバイスを元に改良してみるつもりです。 ありがとうございました。
>>275 こんにゃろ。最後まで面白いじゃねーかw
いろいろとワクワクすること思いついたので、
もし、試してもらえるならやってほしいことあるー
すみません、ご教授ください
ある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
と書いて大丈夫なのでしょうか?
279 :
278 :2008/05/13(火) 11:59:52 ID:???
自己解決しました、ども
280 :
Name_Not_Found :2008/05/13(火) 12:15:36 ID:YxK98GNV
>>279 自己解決したのならその内容を書いていけよ。
そうすれは同じ質問をする人も減るだろ?
それとも自分だけがよければいいの?
今に始まったことじゃないス 質問者は大抵そんなもんス
質問させてください。 BASIC認証のユーザーごとに違うページへリダイレクトさせたいのですが、 .htaccessだけで実現可能でしょうか? ドキュメントルート、/の配下に.htaccessを置き BASIC認証USERがtomで認証OKの場合は、/tom/tomindex.htmlへ BASIC認証USERがjohnで認証OKの場合は、/john/johnindex.htmlへ よろしくお願いいたします。
283 :
Name_Not_Found :2008/05/14(水) 17:29:13 ID:RvbsSWVp
すいませんageます
RewriteCond ででけへんのかな?
285 :
Name_Not_Found :2008/05/14(水) 19:56:59 ID:RvbsSWVp
>>283 あ?ほんとに分かってんのか?
「はい」ってのはな「はい、わかりました」を略して「はい」なんだよ
頭だけでわかったって言わねんだぞ?学校の勉強じゃねえんだから
社会では?お?実際に出来て初めて「わかった」言うんだ
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ
お?聴こえてんのかよコラ?あ?
やる気がねえんだったら来なくていいぞ?
お前ナメてんだろコラ?
仕事中だと思って優しく口で言ってりゃ調子に乗ってんじゃねえぞコラ?お?
外で遭ってたら今頃カタワだぞお前?とっくに?あ?
調べたなら山程あるし、過去レスくらい嫁
>>277 そんな瑣末なことのためにCGIを動かすと、
セッション数が増えたときに自分の首を絞めることになりますよ
リンク先のCGIで〜というの消しておいた方がいいと思います、かなり真剣に
>>287 RewriteEngine on
RewriteCond %{HTTP_REFERER} example\.com
RewriteRule ^.*$
http://me.example.jp/idou.html [R,L]
テンプレやスレ内の過去ログくらいは読みましょう
でないと、これから先も同じ程度のことで壁にぶつかって困るのは自分ですよ?
>>287 おまい、以前にも同じような質問しただろ?
リライトさえも使えない時でもErrorDocument 403が使えればまだ身動きが取れるですぅw
スルーされてる内が華っていい加減気付けんかね。
>289の発言の真意がわからなかったが、whoisすると意味がわかったような。 wikiを誰が書いてるかなんてことがわかるのか。 Wikipediaではそういうこともわかるらしいが。
>>294 Wiki側でアクセス制限していない限り、
Proxy経由でアクセスすれば誰が編集したか実際には分からないですよ
296 :
Name_Not_Found :2008/05/17(土) 10:48:46 ID:Ys1AkM/Q
ホームページビルダーで制作していますが、方言に音声をリンクしたい のですが、ウインドーメディアプレーの画面が出ないで音声が出るように する方法を教えていただけないでしょうか。
ま。スレ違いの上に板違い。 背伸びせずまずはうぃんどうずをもう少し勉強してからおいで・・・ ソフトの使いかたをここできいてどうすんでしょ・・・・
300 :
Name_Not_Found :2008/05/17(土) 12:04:20 ID:Ys1AkM/Q
いろいろご指導いただき感謝します。
しかし、私の能力ではビルダーデーターを開いてみましたが
解決に至りません。また、フラッシュプレーヤーも以前に少し
勉強したのですが・・・
具体的に見ていただくと
http://www.geocities.jp/kounit/の石黒の方言の最初の 「あ」の
「あいどり」にリンクを掛けたのですが、ごらんのようなメディア
プレーヤーの画面が出てしまうのです。
この画面をだしたくないのですが、簡単方法はないものでしょうか。
すれ違い、勉強足らずは承知の上での質問ですが、よろしくご指導
ください。
301 :
Name_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という形で表示させる方法を探しています。 どなたかご存知の方がおられましたらご教授願います。
AddType application/octet-stream .mp3 .wav とかそういう方向の話のような気がするですぅ。 これでメディアプレーヤーが出なくなってダウンロードさせられるように変わるですぅ。
>>301 それならapplication/x-httpd-phpのところにtext/htmlと書けばいい気がするですぅ。
あと、
>>303 にAcceptPathInfo Onも忘れちゃいけない気がするですっ。
305 :
Name_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をどのようにすればいいのかもご指導いただければと思います。
いつからここはなんでも相談室になったのだ
308 :
Name_Not_Found :2008/05/17(土) 15:21:28 ID:Ys1AkM/Q
>>307 ご指導ありがとうございました。お叱りはごもっとです。
>>306 答えてくれる人たちが優しいんだよ〜
折を見て誘導支援はしてるけどねー
と思ったら、上で回答されてる方めちゃ紳士
優しさとお節介を混同してるアホが大杉
>>305 単なるHTMLファイルを.htmlサフィックスなしでアクセスと勘違いしていたですぅorz
リライトできるならRewriteCondでリライトしてしまうのが簡単な気がするですぅ。
RewriteCond watch(/.*)? watch.php$1
とかで大丈夫じゃないかと思うですけど、最近はチェックしてから投下するのが
面倒ですから正常に動くかは知らんですぅw
AcceptPathInfoが使えない時は無視して構わないですぅ。
MultiViewsは画像は表示できるかとかどこの言語なら読めるかとか
ブラウザが送ってきた情報を元にもっとも最適な内容を返すものですぅ。
ブラウザによってエラーが返ることもあるですぅ。
>>307 無理やり.htaccessの方へ引っ張り込む訳じゃないなら
<object>とか<embed>で埋め込むくらいの回答をしないと
大きな変化は無い気がするですぅ。
313 :
Name_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
今のところ特に問題なく動いております。
分かり易く親切な回答を有難うございました。
今後もお世話になることがあるかもしれませんが、何卒宜しく御願い致します。
315 :
Name_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エラーになってしまいます。ご指導よろしくお願いいたします。
>>315 こういうときは、全部コメントアウトして、上から順番に外していけばわかるんじゃね?
ま、そういうデバッグをやりたくないから、ここに来るんだろうけどw
>>315 .htaccess 消した状態でも500なら笑える。
> deny from .ac.jp
> deny from 130.90.
ケツになんかあるよ。
> 長すぎるためソースは一部削除記述していますが
その削除部分に問題があるとお手上げ。
長いなら分けて書けばいいよ。
とりあえず、ケツのスペースもいじらずにlocalhostとさくらで試したけど、
500エラーにはならなかったよ。
1. .htaccess 無しで問題が無いか確認。
2. .htaccess 有りで上から一行ずつ追加して確認。
この順で試せば、切り分けできるかな。
319 :
315です :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
320 :
315 :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
321 :
315です :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
322 :
315です :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
までを削除してもエラーになってしまいます。
なにがなんだか・・・・
ロリポは設定できることになってはいるのですが・・・
ご助言おねがいします
323 :
315です :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
までを削除してもエラーになってしまいます。
なにがなんだか・・・・
ロリポは設定できることになってはいるのですが・・・
ご助言おねがいします
324 :
315です :2008/05/23(金) 18:32:34 ID:mEwsvACP
なんでまだ誰も尋ねていないんですか><
>>315 ・改行コードはLFですか? (はい・いいえ・よくわかんないんです)
・(はいLFです、と言えない場合)アスキーモードで転送してますか? (はい・いいえ)
# LF改行にしてからサーバに載せるか、アスキーモードで転送する。
これと
>>316 の確認が先のような。
>なんでまだ誰も尋ねていないんですか>< 超初心者の面倒なんかみたくないから
これを正しくして下さい お願いします
<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]
全然関係無いと思うんだが コメントだけの行を入れてると500エラー出た記憶があるんだが。 コメントは何か書いて、その右側に入れないとダメだった様な。 多分間違ってると思うけど、試す気があったら試してみてくれ。
鯖側で許可されてないディレクティブ入れてると500なる
330 :
315です :2008/05/23(金) 21:22:51 ID:mEwsvACP
>>325 回答ありがとうございます。
アスキーモードで・・・という件ですが、私はFTPを使用せずに
直接クリエイトファイルで作成しているので・・・・なんとも
>>319 >コメントアウトして、上から削除していっても原因がわかりませんでした
うそつけwww
おまえ、何もしてないだろwww
332 :
Name_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>
334 :
Name_Not_Found :2008/05/24(土) 00:35:51 ID:npTdX2xB
>>333 過去ログ膨大すぎて読めません
読んだとしてもHTMLぐらいしかわからないので
どの書き込みがそれを指しているのかわからないと思います
せめて何かヒントだけでもお願いします
ヒント 1 読まない 2 調べない 3 試さない 4 理解力が足りない 5 人を利用することしか頭にない
336 :
332 :2008/05/24(土) 03:03:54 ID:GsN7pReL
ニュー速でマルチしまくったらすぐ答えてくれたぞ 寂れた専門板のクズはやっぱり使い物にならんな さっさと家族共々自殺しろカス共w
.,,,、 _ .,-'ニ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、 ゙-ノ `ー'゜ `ー-‐゙'''゙ ゙''―――''" `'''ー''" ヽ┘ `''―-ー'゙
>>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の前のスペースを削除したらエラーは出なくなったよ。
地道に書き方間違っていないか確かめていくのが吉。
>>338 > 地道に書き方間違っていないか確かめていくのが吉。
それをやりたくないから、このスレに来ているんだと思うぞw
とくに、ずらずらと長い設定を行ってるヤツほどその傾向大
340 :
315です :2008/05/24(土) 14:51:41 ID:dvh/DaQu
再質です お願いします
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]
343 :
Name_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の方でアクセス制限したいのですが、
制限できる方法をお教えいただけますでしょうか?
どうぞよろしくお願いいたします。
>>343 nslookup srea.jp
IPが違うみたいだよ。
345 :
Name_Not_Found :2008/05/25(日) 08:25:11 ID:mKdRgkTO
>>344 上記のリンク先から、サイズ変更したい画像のURLをリンク先の窓に入力すると
サイトの別サーバ?から画像をGETしにくるようなのです
その時のIPアドレスが202.212.38.74=www.srea.jpのようでした
もしよろしければ、実際に上記のリンク先から確認していただければと思います
こいつ何様
馬鹿殿様
>>345 >>343 > 他のサイトからの画像へのアクセスは許可していますのでそれら設定は生かしたまま、
で上書き許可してしまっている可能性がひとつ。
まずは自分のIPアドレスでも設定して、
Deny がちゃんとできるか確かめてみては?
>>342 正しさとは...
何がやりたいのかはよくわかりませんが、
index.html ついてますってのは、$1 で付けてるから。
同じ要領で追記した部分を一旦消して、$1 も消せば期待した結果になりますか?
>>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]
──────────
お試しあれ。
>>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]
──────────
352 :
Name_Not_Found :2008/05/26(月) 05:28:39 ID:FalhCbeD
質問させてください。 コメントはこのように記載しても問題ないでしょうか。 deny from 10.0.0.1 #コメント それとも行頭に記載した行だけがコメントとして扱われるのでしょうか。 #コメント deny from 10.0.0.1 些細なことで申し訳ないですがご教示いただきたくお願いいたします。
353 :
Name_Not_Found :2008/05/26(月) 16:56:04 ID:PWHd1x+2
携帯サイトなんですが、最近自鯖のgifやjpgやswfファイルを無断で直リンしてる輩がいます。一部のサイトには許可してるんですが、許可してないサイトだけを拒否したい場合どう記述すれば防げますか?分かる方お願いします。
なんで直リンって分かるの?
357 :
343 :2008/05/29(木) 01:53:33 ID:Oc+g7rwq
原因が分かりましたので後の方のために報告しておきます 今回対象としていたサイト「画像リサイズ」にはGETした画像をキャッシュ保持する 機能があり、一度取得されてしまった画像が同サイトのサーバに残っていました このため、画像を読み込まれてしまった表示側のサーバでdenyしても、 「リサイズ」のサーバ上の画像が先読みされ、結果denyが反映されていないような 挙動をしていました
ファイルの内容はあっているのに まったくアクセス制限が機能しません 試しに自分のホストを記入して 任意の階層に.htaccesファイルをいれましたが、容易に入れてしまいます 同じファイルで違う階層に入れたときはうまくいっていたんですが… どんな理由が考えられますか?
>>358 ×.htacces ○.htaccess
このようにくだらない間違いが原因でしょう。
360 :
358 :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
なにかまちがってます?
まちがってないよね?
もう一回初めから書き直してみなよ
ここに貼ったのが間違っているのか正しいのかはさておき、
かなりのおっちょこちょいさんなのかしら?プニュ( ´∀`)σ)Д`)
>>360 とりあえず、ピリオドが2つあるみたいだけど、いいのかな?
deny from hoge..ne.jp
>>361 うーん
見直してもまちがってはないですな…
>>362 ピリオドは原文にはふたつないです
ここに張るためにほげに書き換えたときにできた模様…
おっちょこちょい連発ですまない
桜のサーバーに原因があるとかではない…のかな…
契約しているサーバでlimitって使えるのかにゃー? 基本的過ぎてこれはクリアしていると思うけど念のために〜 最後の行に改行は? アスキーモードで転送してる? サーバ側のファイルを削除、再アップしてみた? Limit外してやってみたら? ついでにErrorDocumentも外してみたら? denyしたい対象はexample.or.jpといった名前解決された状態でいいの? IPアドレスじゃないと弾けないとかない? その他 ↓
誰が見直せと言った 書き直せと言ったのだよ
366 :
Name_Not_Found :2008/06/02(月) 22:52:12 ID:EMjgd12Y
.htaccessで自分のIP以外は入れないように規制してるんですが これって安全なのでしょうか? IDとPASSで規制するのは危険というのは見るのですが IPの場合はどうなのでしょうか? お願いします。
Webサイト制作初心者用質問スレから誘導されてきました 国内のアクセスを一つを除いて制限するってhtaccessで設定しようとしてます。 order allow,deny allow from all deny from 国内のIPアドレス ・ ・ allow from 自分のIPアドレス と、やってみましたがうまく行きませんでした ご助言いただけないでしょうか
>>366 危険だと思うならIDとPASSもつければ?
>>367 まずどううまく行かなかったかを詳しく説明だ。
369 :
367 :2008/06/06(金) 16:26:13 ID:???
>>368 自分も弾かれます・・・Forbiddenページです
海外の串を通せば入れます
>>369 deny from 国内のIPアドレス
に自分のIPアドレスが含まれているに100ペセタ。
>>367 > order allow,deny
> allow from all
> deny from 国内のIPアドレス
とやったあとで、
> allow from 自分のIPアドレス
がくるのはなんでだ?
orderと違うじゃないか
order allow, denyとした場合、 allowが全て評価された後でdenyが評価されるはず。
373 :
367 :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で上書きは出来ないのでしょうか?
order deny,allow deny from 国内のIPアドレス allow from 自分のIPアドレス 国外のIPアドレスはしらね。
>>367 ,373共に
全てのIPアドレスをallowした後に
国内のIPアドレス(自分のIPアドレスを含む)をdenyしている。
deny from all allow from 自分
>>374 国外のIPアドレスはAllowもDenyもされてないから
通常ならAllowになるよ。
379 :
140 :2008/06/07(土) 23:22:12 ID:???
ものすごく亀レスなんですが、
>>140 の質問をしたものです。
>>142 さん、
>>144 さん-
>>145 さん、
>>147-148 のedry(えどりぃ)さん、
いろいろご親切に教えてくださってありがとうございました。
たくさん解説していただいて感動しました。
教えていただいたことをちょっとずつ試してみて
だめなら様子を見ながら直したりしていってみようと思います。
まだ難しいですが、なるべく自分でぐぐったりして
やっていくようにします。
全然ネットできていなかったために
お礼が遅くなってしまってすみませんでした。
ありがとうございます。親切な方に良いことがあるよう祈っております。
トゲのある礼ならしない方がマシというもの。
まあアレだよ、甘口のレスしか受け入れないお子ちゃまはそれまでって事だし、 放っとけ。
答えるほうも気分で答えてるだけだから別に礼なんていらんがね
でも最近はだらだら伸びた上に礼を求めるような雰囲気の回答が増えちゃった気がするですぅ。
<Limit GET POST PUT> order allow,deny allow from all Deny from IPアドレス </Limit> ErrorDocument 403 /~hoge/ 上記のように特定のIPを特定のページに飛ばす設定に しています。 この記述以外で特定IPを特定ページに飛ばす方法 はありますでしょうか?
385 :
Name_Not_Found :2008/06/09(月) 11:53:40 ID:ci1kpdNE
redirect で転送先へのPOST送信をするにはどうすればいでうすか?
386 :
367 :2008/06/09(月) 14:32:37 ID:???
>>374 うまく行きました。お答え下さった皆様、ありがとうございました。
一つ疑問に思ったのですが、
order deny,allow ・・・これはdenyはallowより優先という意味ですよね
自分のIPアドレス(allow)が国内のIPアドレス(deny)に含まれているはずですが、
denyがallowより優先されているのなら自分もアクセス不可にならないのでしょうか?
優先ってどこで聞いたわけ?ただの順番だ。
388 :
367 :2008/06/09(月) 17:55:41 ID:???
389 :
Name_Not_Found :2008/06/09(月) 19:41:41 ID:S0kweLH3
>>388 プログラムの基礎からやり直したら?
向いてないよ悪いけど
390 :
385 :2008/06/10(火) 10:18:18 ID:???
他の方法をとることにしました
391 :
367 :2008/06/11(水) 12:38:47 ID:???
リファラーに「ゲーム」という文字列 (をエンコードした文字列?) が 含まれているときに game.html に誘導したいのですが 参照元の文字コードを判別する必要があるでしょうか。
>>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]
396 :
Name_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時間近く苦闘しており切実です。
どなたかヒントお願いします!
5 RewriteRule ^/link(\d+)\.html$ /link/index.cgi?link=$1 ↓ 5 RewriteRule ^link(\d+)\.html$ /link/index.cgi?link=$1 実は俺にもよくわかっていないのだがネット上の解説ページでは RewriteRule ^/以下略 と成っているところが多い しかし実際にやってみると /付けると駄目 或いはApache2.2系でそうなったのかもしれn
398 :
396 :2008/06/15(日) 16:27:27 ID:???
とりあえず、分かったことは\dが使えず、[0-9]でやると少しまともな動きになりましたw (それでも一部のパスは通らず、画像やCSSが表示されなかったり、 全然別のディレクトリにある違う画像が表示されたりと意味不明です) ひとまず、絶対パス・相対パスの関係がサーバによって全然違うんですね。。 まず、リクエストヘッダを取得してから、 うまく調節して環境によってプログラム自体を作り替えていく必要がありそうです。 プロい人は汎用で作っちゃえるんだろうか……? ちなみに試した鯖は、XREA、ロリポ、WebArena Suite2です。 全部バラバラでしたw
399 :
397 :2008/06/15(日) 18:08:30 ID:???
400 :
398 :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はいろいろなパターンが通る。 書き方よりも、その結果、どういうパスで扱われるか挙動が枚買い違うのでさっぱり分からない。
>>401 わかる。というか初歩の初歩。
User Agentではじけよw
SetEnvIf User-Agent "Hatena" dame1 order allow,deny allow from all deny from env=dame1 これではじこうとしたんだが奴ら普通にやってくる 一体何が問題なんだ!?
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} ^Hatena [NC]
RewriteRule ^$
http://www7.atpages.jp/topage/ [R=302]
RewriteEngine off
こんなこともやってみたけど依然、ムリ
Hatenaだけではやはりだめなのか?リンク元の記事をみると先頭から6文字だけとってるし
>>403 そもそも .htaccess は有効なの?
test とか記述して 500エラーになれば 有効 だが
あと自分を排除する記述で試してみるとか?
さくらのレンタルサーバ非公式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修正してくる。
オらは 407の言うので正解(wikiが間違い)だと思う
409 :
407 :2008/06/18(水) 00:37:39 ID:???
有難う。修正してきた。
>>410 SetEnvIf Referer "^$" ref_ok
これを抜くとセキュリティーソフトを導入してる人まで弾く可能性があるから
推奨しないってよくいろんなサイトで見かけるけど問題ないの?
>>411 そう言ってるのはセキュリティソフトの開発会社の連中だw
>>411 見る(画像などを盗みたい)側にとっては邪魔になるから、
徒党を組んで「推奨しない」と宣伝しているようなものですよ
見る側:
一個人、セキュリティソフト開発企業、検索エンジン運営企業、etc...
サイト管理側からすると転送量が増える原因の特定が困難になるので、
明示的に直リン許可が目的で無いなら、
>>410 のように対応しておくことは有用です
「画像を盗む」って何だよ、アホか 普通にブラウザで表示しただけでキャッシュされるものに盗むもクソもねえよ リファラはプライバシー漏洩の観点から無効にされうる(RFC 2068) ので、ウェブサイト側はリファラの送信の有無に関わらず 正常に閲覧できるようにしておくのが望ましいだろ
こんなところにもRFC信者がw
盗むと直林は違うがな
つダウンロード支援ソフトで(゚Д゚)ウマー
頭に HTTP_ の付く環境変数は クライアントの自己申告だから 偽装する気になればいくらでも出来るぞwww 417の言うようにダウンロード支援ソフトもそういう仕様になっている事も多いかと思うが perlでsocketいじれる奴とかなら作れる そういや、 たまにプログラムやシステム系のMLで 「 proxyアクセスを考慮してHTTP_X_FORWARDED_FORが有る場合には REMOTE_ADDRと置き換えてログに記録しています」なんてブァカがいて MLメンから袋叩きにされているな (漏れは気が弱いので「やめといた方が良いかもしれませんよ」程度しか言わんが) 結論:クライアント申告の環境変数を当てにしすぎる奴も 悪用される事を考慮もせずに socket使ったスクリプト配布する奴も 両方大ブァカ!
だからDLされたくないって話(不可能)と、 直リンクの話を一緒にすんなよ。
>だからDLされたくないって話(やりたい放題)と、 >直リンクの話は分けて話そうね!お願いなんらからね!><
キモ
>モキュ
ユドウフ
各種フレームワーク & mod_rewriteとか
426 :
Name_Not_Found :2008/06/25(水) 09:24:50 ID:l+3nymvc
>>414 同意。
そもそも携帯はリファラを吐かないし、今後は携帯が限りなくパソコンに近づく。
大切な画像ならPHPなどのスクリプトを咬まして表示するようにすべき。
427 :
397 :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 <= ^/ にマッチする
と言うことのようです。
>>427 おそらくstrip per-dir prefixのログを出している上あたりの
apr_size_t dirlen = strlen(ctx->perdir); を1小さくしてやれば
いつでも先頭の/が必要ににできるような気もしますですけど、
サンポールとおそらく柄付きタワシを買ったあいつに試してもらわないと
不具合が大量に出そうですぅ。
とりあえず.htaccessはディレクトリ毎の設定なので、現状では
先頭の/は必要ないって事になるですぅ。
松○棒で柄付きタワシが届かないところまでピカピカよぉとの事ですぅ。 勝手に作って勝手に試せお馬鹿さぁんは酷いですぅw
431 :
Name_Not_Found :2008/06/26(木) 14:56:56 ID:QKw3bhRL
>>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]
433 :
Name_Not_Found :2008/06/26(木) 18:31:17 ID:QKw3bhRL
434 :
432 :2008/06/26(木) 19:15:42 ID:???
435 :
432 :2008/06/26(木) 19:18:57 ID:???
436 :
432 :2008/06/26(木) 19:21:55 ID:???
どうでもいいことで 3連投スマソ
>>435 RewriteCond %{REQUEST_URI} => RewriteCond %{HTTP_HOST}
437 :
Name_Not_Found :2008/06/26(木) 20:17:44 ID:iwU68i2C
>>437 Redirect 404 /123
Redirect 400 /456
というそういうパターンにピッタリかつHTTPステータスも至れり尽くせりな
ディレクティブもあるですぅ。
これをレンタルサーバのサブドメインの.htaccessに書いても
自分のドメインexample.comの方では読み込まないですから
h
ttp://example.com/123 まで404になってしまう事はないですぅ。
まさにピッタリですぅ。
auに内臓されているPCサイトビューワーのIP帯域分かる人いますか? 運営している携帯サイトにhtaccessでアクセスの許可をしたいのですが ご存知の方いましたらお願いします
440 :
Name_Not_Found :2008/06/27(金) 21:02:43 ID:QFVTiOuP
>>438 早速試してみました。
これいいですね!1箇所の.htaccessだけで設定できるので便利です。
ありがとうございました〜!
拒否しなきゃいいじゃない
444 :
Name_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で変わりません。
これをログに記録させないことはできないでしょうか?
わかりにくい質問ですみません。
要は不要なログをなんとかしたいのですが…
>>444 ログに記録するしないは、apacheの設定だから、.htaccessでは
いじれないと思うぞ
特定のIPにだけRedirectPermanentを適用することは出来ますか? 例えば、123.45.67.89からアクセスがあった場合RedirectPermanentで2ch.netへ飛ばすとかです
447 :
444 :2008/06/29(日) 13:02:35 ID:???
>445 そうなんですか〜スレ違いでしたね…すみません。 apacheのこともうちょっと調べてみます。ありがとうございました。
質問です。
直リンクを防止するために.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人だけ効いてない人がいるんです。
記述が間違っているのでしょうか?
452 :
Name_Not_Found :2008/06/29(日) 20:10:15 ID:BxZ0RSBS
>>451 そのサイト誰にも見せたくないサイトなら
パスワードかけるかでもしとけば?
>>451 一般のブラウザなら利くはずだが
>>418 に書いて有るような状態ならスルーされるよ
しかし それだけ Filesを羅列して他に見せるものが有るのか?
全部規制するなら<Files なんて無しで
SetEnvIf Referer "^
http://xxx.xxx.xxx " ref_ok
order deny,allow
deny from all
allow from env=ref_ok
だけ書けばいいだろ
454 :
451 :2008/06/29(日) 23:22:50 ID:???
>>453 アドバイスありがとうございます。
それで試してみます。
質問者も回答者もテンプレ
>>3 の例示用の
example.comなりを使いましょう
既存のドメイン所有者に迷惑かかりますよ
え?どれが既存ドメインだって?
バカな奴ほど偉そうな説教口調になるのねん
まとめると、
質問者も回答者もテンプレ
>>3 の例示用の
example.com等を使いましょう
だが断る
別に他人のドメインでもいいじゃなーい 見られて嫌なもの上げるなよ
でもそのためにわざわざ example.com があるんだし。
463 :
Name_Not_Found :2008/07/01(火) 11:07:01 ID:Ju7lwt/u
>>462 放置しとけばいいさ。
>>461 やマイクロソフトのように「○○しましょう」って決めても守らない馬鹿は
無視しとけばいい。
守ってる人達だけでちゃんとやればいいさ。
開き直りましたか
465 :
Name_Not_Found :2008/07/01(火) 16:02:21 ID:Ju7lwt/u
IE6で散々世界中の人に大迷惑をかけつづけ やっとIE7を出したら今度はapplication/xhtml+xmlに対応できてなくapplication/xmlまでも対応せず。 どこまで迷惑かければ気がすむんだ・・・ こんな糞企業向こう側に置いてくしかないだろ。
ここはhtaccessスレなんだが
467 :
Name_Not_Found :2008/07/02(水) 15:15:42 ID:V0jQ7qTQ
すみません、質問です。 publicフォルダ直下にhtaccessを置いてみたんですが、弾きたい肝心のファイルも htaccessファイルと同じフォルダに置いていたら意味がないでしょうか?
>>467 何を言ってるのか分からないので整理してもっかい書いて…
469 :
Name_Not_Found :2008/07/02(水) 16:30:11 ID:V0jQ7qTQ
「ぶちんこんである」みたいな下品な表現を使うなんて…
>>469 ひろゆきか?じゃなきゃ他人のドメイン勝手に使うなよ。そのくらいのモラル守ろうよ。
>>469 テンプレも読まずに質問ですかそうですか
>>3 【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
>>469 >説明が下手ですみません…。
下手すぎて、何がしたいのか、ちっともわかりません。
すっかりくだらないスレに成り下がったな
指摘するなら回答もしてやりやがれ、こんちくしょーっ!
>>467 <Files を使ってファイル1つ1つ、あるいはパターンや <FilesMatch を使って
パターンにマッチする複数のファイルに対して1つ1つ設定するしかないですぅ。
<Filesは下のディレクトリにも影響が出るですから上のディレクトリの例えば
index.htmlとは違う設定を下のディレクトリのindex.htmlへ適用したい時は
下のディレクトリの.htaccessでも<Filesを書く必要があるですっ。
>>475 いやだって何を聞いてるのか謎なんだもの
>>475 基本的に475さんの答えでOKだと思いますけど
隠したいfileが特定の拡張子(例えば .jpgや .phpだけ隠したいとか)
file名に一定のパターンが有れば(例えばFile名の頭に abc- が付くとか )
ならいいんだけど
拡張子もばらばらでFile名に一定のパターンもなくバラバラだと
.htaccessに書く記述が複雑になって
すごく面倒なことになるので File名を気にせずに設置したいのなら
サブディレクトリに分けて設置し それぞれのサブフォルダに.htaccessを置いたほうが面倒が無いと思う
(↑以上の事も475のを良く見て考えれば判ることでは有るんだけどね)
478 :
Name_Not_Found :2008/07/03(木) 22:20:37 ID:t8vcypwE
メモ帳で「A」って書いて「.txt」でサーバにアップロードしているのですが サーバでそのファイル開くと「B」と表示されます。 どこで聞いていいかわからずここで聞いてみました。 どうかお助けください。
480 :
Name_Not_Found :2008/07/03(木) 22:44:29 ID:HgUzru86
つーか。サイトを構築してる風に見えるが メモ帳て・・・・ 改行コードも文字コードも変えれないようなので作業するからだろ。
482 :
Name_Not_Found :2008/07/07(月) 00:20:35 ID:EkOsKbg9
.htaccess を使って、CGI版PHPのHTTPヘッダを出力させないようにできますか? よろしくお願いします。
483 :
482 :2008/07/07(月) 00:21:36 ID:???
↑スレ間違えました。失礼しました。
484 :
482 :2008/07/07(月) 00:22:58 ID:EkOsKbg9
すいません、間違えていませんでした(^^; よろしくお願いします。
CLI版に変えてください
486 :
482 :2008/07/07(月) 02:30:08 ID:EkOsKbg9
そうですよね。 なんとか、CLI版PHPに変えずに、CGI版PHPの HTTPヘッダを出力させないようにできないでしょうか?
487 :
Name_Not_Found :2008/07/07(月) 14:07:19 ID:CHu6F/bG
>>480 文字コード変換できるのでやってます。
php editorでUTF-8でやっていますが
どちらにしろ半角英数なんですよ。
化けるはずないのに何故こんな現象が起こるのでしょうか…
>>487 >化けるはずないのに
この思いこみが間違い。
まずは自分を疑ってみれ。
489 :
Name_Not_Found :2008/07/07(月) 16:19:06 ID:CHu6F/bG
>>488 いや疑いようもない状態なんですよ。
サーバ1にアップして開いてみたらちゃんと表示される
サーバ2にアップした場合は違う文字になってる。
内容は本当に「A」だけなんです。
IE6-7 firefox opera safariなど色んなブラウザでやってみたが違う文字になる。
サーバ上のデータをダウンロードしてきても「A」になってるんです。
上げ直せ
491 :
Name_Not_Found :2008/07/07(月) 17:29:13 ID:CHu6F/bG
>>491 そもそも.htaccessと無関係の話題だ。
ほかでやってくれ
493 :
Name_Not_Found :2008/07/07(月) 18:01:25 ID:CHu6F/bG
>>492 ではどこで聞けばよいのでしょうか?
全く検討がつかないのですが。
夢の中へ
495 :
Name_Not_Found :2008/07/07(月) 19:44:46 ID:CHu6F/bG
夢の中へ
イってみたいと
WebProg板じゃね
>>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"; 消せば済む話ジャン
>>498 環境変数 REDIRECT_URL や REQUEST_URI さえ渡ればいいんだから
.htaccessの方は rewriteとかでもたぶん出来るな
試してないけど
RewriteRule ^php/.*\.cgi$ /cli.cgi [L]
500 :
おでん :2008/07/07(月) 21:45:12 ID:wrYSbZO3
502 :
おでん :2008/07/07(月) 21:46:55 ID:wrYSbZO3
お願いします(´ω`)
.htaccess なら RewriteEngine on RewriteCond %{REQUEST_URI} !^/index.php/ RewriteRule ^(\w*)$ /index.php/$1 [L] これでいいか? お礼は姉ちゃんのパ*ツ な って ちょ、おま、お袋の んなもの寄越すな
504 :
482 :2008/07/07(月) 23:28:16 ID:KghusoCJ
レスありがとうございます!! cgiをイジれば、そのような手段があるんですね!? ただ、あまり知識に自信がないので、 できればcgiではなく、htaccessに追記するだけでヘッダ出力をなくしたいのですが、 そんな簡単にはできないですよね!?
505 :
Name_Not_Found :2008/07/08(火) 14:43:17 ID:c/gC3o6m
ルートディレクトリと幾つかのサブディレクトリに それぞれindex.htmlが存在している状況で ルートディレクトリのindex.htmlのみにForceType application/x-httpd-phpを指定したい時は .htaccessファイルをどのように配置&記述すればいいのでしょうか ルートディレクトリ上の.htaccess単体でこれを実現する方法はありますか?
506 :
Name_Not_Found :2008/07/08(火) 15:29:30 ID:+MI0bJGF
>>478 みたいな現象って
もうサーバがぶっ壊れてるんじゃね?
新しいの購入するのがいいと思う。
508 :
Name_Not_Found :2008/07/08(火) 20:42:38 ID:JSvLyOV0
RewriteRule
ローカルにテスト環境立てて自分で試してから言えカス
ですよね〜^^ アクセスが下がる明け方まで待ってから試すことにします。 現状鯖が死んでてどうにもなりません
>>509 RewriteRule でやるなら
>>503 のRewriteRuleを
RewriteRule ^$ /index.php [R]
だが
Directoryindex index.php
とすれば index.php にアクセスするんで それで済む話ではないのか?
>>513 ほうほう
512のRewriteRuleならRewriteCond行も要らないな
RewriteEngine on
RewriteRule ^$ /index.php [R]
の2行だけでいいや
>>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>
ここのどこに入れたらいいと思いますか?
<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行です
横レス失礼します。質問です。 「携帯端末(複数、UAで判別)以外を特定のページに飛ばす」 「特定のIP(ホストでもUAでも)を制限する」 の2つを組み合わせたいと思っているのですが、どのようにすればいいのでしょうか? 携帯を特定のページに飛ばす方法はすぐに見つかるのですが、携帯以外(PC等)を特定のページに飛ばす方法は見つけられませんでした。 今は携帯以外をErrorDocument 403で無理矢理振り分けているのですが、最近ロボットが酷くて特定のアクセスも制限したくなってきました。 ご教示お願いします。
見つからないって悪い冗談だろ・・・
>>519 >携帯を特定のページに飛ばす方法
これをPCに当てはめたら、
> 携帯以外(PC等)を特定のページに飛ばす方法
になるんだけど。
それすらどうすれば良いかわからないなら、手を出さないほうがいい。
やめておけ。
>>518 ありがとうございます。
先ほど指示通りに挿入して見事に反映できました。
が、今度は個別記事でエラー吐くようになってしまいました。orz
他の方法で負荷分散を頑張りたいと思います。
せっかく手助けいただいたのに申し訳ありません。
ありがとうございました。
>>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に応じたページを表示する
ま、今はやりの 動的=>静的変換だな
524 :
Name_Not_Found :2008/07/12(土) 06:29:56 ID:tIvDO2Yb
.htaccessの設定でエンコードに変換?
(例
http://www. ○○○.com/search.cgi?keywords=%82%A0%82%A2%82%A4%82%)
みたいなのをさせない方法はありませんか?宜しくお願いします。
526 :
519 :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を置いた方がいいのでしょうか?
質問です、よろしくお願いします。 xxx/yyy.htmをxxx/yyyでアクセスできるように設定したいのですが、 どのようにすればよいのでしょうか? ちなみにロリポップではなにも設定しないで上記が可能ですが、 今回契約したハッスルサーバーではできずに困っております。
example.com/xxx/yyyって普通はexample.com/xxx/yyy/と判断されるんじゃ・・・
確か、 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のやりたいことが、そもそもオカシイと思うけど。
>>525 RewriteMapは.htaccessのみを触れる人では設定できないですぅ。
リライトが使える上に内部関数まで設定が済んでいるサーバは
とても希少過ぎる気がするですっ。
>>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;
とかでデコードして記録すればいいのでは?
535 :
Name_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」に制限がかかると思います。 しかし、スラッシュで終わるアドレスでアクセスした場合、 きちんとアクセス制限が掛かりません。 スラッシュで終わるアドレスでアクセス制限をかける方法はありますか?
表現の仕方がちょっと悪かったかもしれませんが、アクセス"許可"制限です。
>>535 DirectoryIndex を index だけセットしてindex.htmlを表示させていると
<Files index.html>等の設定をスルーしてしまうみたいですぅ。
で、そのindexだけでindex.html表示できるのがOptionsのMultiViewsのおかげであって、 MultiViewsを有効にしたときの副作用な気がするですぅ。
539 :
Name_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エラーがかえってきてしまいます。 こういう場合どうやって記述すればよいでしょうか?
>>540 横からw
こんな感じでよいですか?
"^Mozilla/4\.0 \(compatible; MSIE 6\.0; Windows NT 5\.1; SV1; \.NET CLR 1\.1\.4322\)$"
この世にはIEユーザーしかいないと思っているんですねよくわかりますフィリピンではFirefoxのシェア50%ぐらいなのに死ねば良いと思うよ
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(上記とは違いますが)でもやってみたのですが普通に表示されてしまったので
効果があるのかわからなかったのです。
こんにちは、質問させてください たまにアクセス解析のリモートホストの欄がIPアドレスだったり空白だったりしますが あれはどういった手段でアクセスしている人なのでしょうか? リモートホストが空白の人を弾くことはできますか? よろしくお願いします
>>544 リモートホストが空白の環境に対して
RewriteCond %{REMOTE_HOST} ^$
リモートホストが IPアドレスは何か特別な手段を使っているわけではなく、
普通のことですよ
ISP によって仕様が異なる、程度に思っておけばいいと思います
↓以下、詳しい方の解説
スレチだしまんどくせ。
547 :
544 :2008/07/21(月) 01:47:52 ID:???
>>545 RewriteCondというワードを元に検索したら知りたい内容のページを
探し当てることができました
これでやっと迷惑な人を拒否することができます
本当にありがとうございました
548 :
Name_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」はどういった意味なんでしょう?
>>548 apache の man に書いてあるよ
それでも分からなかったら再質問するアルよろし
551 :
Name_Not_Found :2008/07/28(月) 22:11:20 ID:yLmTeYUR
>>549-550 548です。
本当にありがとうございます。
このご恩は一生忘れません。
552 :
Name_Not_Found :2008/08/03(日) 00:54:36 ID:y+cx4qDA
好ましくないゲストのホスト、ドメイン名の一部をdeny from に続けて書いて、アクセスを禁止しているつもりでいます。 しかし、実際に自分の書いた記述で上手くアクセスを禁止してくれているのか不安になりまして、ためしに 同じように自分のホスト名の一部を.htaccessに書いて、アクセス禁止の効果を確かめてみようと思うのですが、 こうした場合、後でアクセス禁止を解除しようとしても、FFFTPでのアクセスまで弾かれてしまうなんてことはあるのでしょうか? ためしにの筈が、そのままずっと自分でもアクセス出来ずに、.htaccessが書き直せないとなると怖いなと思いまして。 実際に起こりえる事態なのかどうか、教えてください。
アホか。普通そんなの起こりえない。 テンプレのリンク先とかくらい読んで勉強汁。
>>552 懸念されているような事は起こりませんよ
.htaccess は HTTP に関するアクセスを制御するためのもの
FFFTP で使われるプロトコルは HTTP ではなく、FTP
.htaccess が制御できる範疇ではない、異なるプロトコル
(FTP, POP, SMTP, etc...)を制御できるわけありませんので
設定を編集する前に、.htaccess とはなんぞや?といった
基本的な事を勉強してから編集した方がよいと思います
でなければ、
間違った設定を施して HTTP の制御がループしてしまう
--> サーバに負荷をかけ続ける、
といった問題を引き起こしてしまう可能性もありますよ?
検討を祈っております(・_・)ゞ
555 :
Name_Not_Found :2008/08/04(月) 03:12:34 ID:Q81dKe1V
IEで2ちゃんねる内に書かれたURLをクリックするとimuにとばされワンクッション置かれますよね。 htaccessで設定してると思うんですが、どのように設定をすればいいのか教えて下さい 検索したのですが うまくヒットさせることが出来なくて困っています。 分かる方いましたらアドバイスお願いします。
>>555 それはCGI側の処理。..htaccess無関係。2chブラウザで2ch見れば直で飛べるでしょ?そういうこと。
それを実装したいなら自力で対象となるCGIとかに手を入れること。
557 :
Name_Not_Found :2008/08/04(月) 03:46:00 ID:Q81dKe1V
>>556 夜中にレス有難うございます。
cgiを探してみたいと思います。
助かりました!
そんな鬱陶しいもんつけるなよ・・・ 2chだからこそ許されるってもんだぜ
安全対策のためです。 ソースを表示などを追加するため。
安全対策たってどっちにしろサニタイズしてないとクッションはさんでも一緒じゃん
ソースチェッカーにかけるようにするので結構変わってくると思うよ。 夏休みとかブラクラはる馬鹿がいるから対策しないとしょうがない NG URL設定しても次から次へとアドレスなんて変えれるし。 日に40万UVあるから個人では管理限界だわ(自分の能力が・・・)
562 :
Name_Not_Found :2008/08/04(月) 21:29:37 ID:ZZOSmj0p
教えて下さい。ページランクや検索順位を維持するために301リダイレクトをしようとおもったのですが、旧サーバを解約したら意味がないんでしょうか?
.htaccess自体の質問じゃないからスレチ。
>>562 常識的に考えて、サーバを変えただけで301が機能しなくなるようなら、そんなもん誰も使わんだろ。
てか、少しはマニュアル嫁よ。
質問です。中国人のアクセスを弾こうと思って、以下のような記述を追加しました。 # 中国からのアクセスを拒否 order allow,deny allow from all deny from .cn # 中国からのアクセスを拒否 # 特定の言語を拒否 SetEnvIf Accept-Language zh Lilith # 中国語を弾く Order Allow,Deny Allow from all Deny from env=Lilith しかし、アクセス解析を見ると相変わらず中国語を使用しているユーザーからの アクセスがあります。 上記の書き方だと、ダメなんでしょうか?
>>565 オリンピック期間中は、全世界で、その設定は無理らしい
567 :
565 :2008/08/09(土) 23:28:35 ID:???
>>565 下の記述で上の中国語弾きがキャンセルされてる
SetEnvIf Accept-Language zh Lilith
Order Allow,Deny
Allow from all
Deny from env=Lilith
Deny from .cn
.htaccess関係ないけど
HTMLのソースに<!--天安門事件-->って書くの最強
569 :
565 :2008/08/10(日) 00:54:19 ID:???
>>568 ありがとうございます!
一応、自分のブログを置いているサーバー上に、六四天安門事件、法輪功などの言葉を
書いたファイルを置いてはいるんですけどね。
まだ、各検索ロボットに拾われてないみたいです。
570 :
565 :2008/08/10(日) 15:09:28 ID:???
うーん、未だに中国からのアクセスおよび中国語環境からのアクセスが来ます・・ ちなみに、自分が.htaccessでやりたい事は、以下のことです。 ・.htaccessファイルを隠す ・中国語でのアクセスを拒否 ・中国からのアクセスを拒否 ・ファイル一覧の参照拒否 ・wwwありのURLにアクセスさせる そして、.htaccessには以下のように記述しています。 つづく・・
571 :
565 :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
これで、中国語を弾いてないし中国からのアクセスも拒否できてません。
どこか記述の仕方がまずいのでしょうか・・・
572 :
Name_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 としてるけどな。効果あるか無いか最近どうでもよくなってきた。日本にも中華は多いし
>>570 最終行のorder deny,allowはいらなくない?
574 :
565 :2008/08/10(日) 15:51:28 ID:???
>>572 アクセス解析を見ると、REMOTE_HOSTが・・.com.cnというユーザーが結構アクセスしてきてます。
.cnだけでも弾けるといいんですけどね。
>>573 ちょっと削除してみます。
中韓台湾香港のIP全部弾いてるけどhtaccessの容量が70KB近くになってページの表示が重い重い
576 :
Name_Not_Found :2008/08/10(日) 19:47:07 ID:ZQJyk0gZ
>>575 うちもそうしたいけど、糞重くなるの目に見えてるからな。
サーバーや国が中華からのアクセスを弾いてと言うか回線きってくれてもいいんだが。
中華なんかとネットが繋がらなくなってこまる個人いないし。
しかし中華及び周辺は世界中に居るわけで、 しかも他人の物は自分の物という意識は統一されており、大変にタチが悪い。
ゲーム系のコンテンツやってると奴等すぐパクからな 製作者詐称するし
ユーザーエージェントが空白の訪問者を弾きたいんだが SetEnvIfNoCase User-Agent "" ←ここをどうすれば弾ける?
^$
ありがとう
支那人って、中国語のサイトに平気で日本語の文章をパクって載せるからな。 よく分からん。
ここはいつから嫌品人とネトウヨの巣靴になったんですか? 品人に見せられないような糞サイトに.htaccessなんて必要ないと思うがな そもそも品人そんなの見ないし
585 :
Name_Not_Found :2008/08/11(月) 02:07:14 ID:kuo2rjrJ
ウホッ!
>>584 htaccess 中国 弾く
これでググってみろw
支那人がいかに嫌われてるかよく分かるからw
587 :
Name_Not_Found :2008/08/11(月) 03:01:16 ID:m5BEvHSG
.htaccess で、 deny from .cn でよくない? ああ、あいつら逆引きしてないから、中国で割り振っているから、中国に割り振っているIPアドレスを調べて、 すべて、 deny from IPアドレス で拒否出来る。
12個上のレスも見られないとかどんな知的障害者?
>>584 君のサイトは支那人にパクられもないんだろ。それはそれで幸せだよ、うん。
香港のプロバイダとかページ移動するだけでIP変わってるんだけどなんなん?
串じゃないの?
それがさ、ソニーのGKもページ移動の度にIP変わってるんだよ
.htaccessと関係ないだろカス
.cnを弾いてるのに、アクセスログを見ると.jpのやつが弾かれたりしてる。全部が全部じゃないけど。
>>595 条件は、上記の.cnを弾くってのと中国語全般を弾く、にしてる。
だけど、弾かれたやつは.jpだし日本語環境だし。
弾かれる条件じゃないのに。
ヒント:ブラウザの言語設定は複数指定可能
てか国内にも中国人そりゃいるだろ
中華サイトよく行ってた頃はzh入れてたよ 言語にjaあったら串さしても入れなかったりしやがんの で消してた事もあった
600 :
Name_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の部分)がどうしてもうまくいきません。 初歩的な質問ですみませんが、どなたか教えていただけないでしょうか? よろしくお願い致します。
601 :
Name_Not_Found :2008/08/23(土) 07:26:26 ID:zQzYbo5F
質問の前にまずは全角英数を改めよう。 そうすればつまらん質問もなくなる。 #どうしてドザは全角英数を使うかな・・・・・
どうでもいいとこに突っ込むなよ
603 :
Name_Not_Found :2008/08/23(土) 07:47:27 ID:zQzYbo5F
>>602 >example.html?param1=aaa&amp;param2=bbb
こんなことかいてりゃー100%エラー出るのは当然だろう?
ドザが質問してその半数以上は全角と半角の区別がつかないのが原因だよ?
&
え、このレスのためわざと全角にしてんじゃないの? &amp;これ半角で書いたら2ちゃんは半角&で表示してくれちゃうんですけど
>>605 だっただ、その旨書いて質問しないと。
意図的に全角なのか、書き間違いなのかがわかんないじゃん。
>>606 そんくらい気づけよ。分からないのはお前だけ。
& と書き込みければ &amp; と入力すりゃいいんだよ 頭つかえ
600の者です。紛らわしい書き方をしてしまい、申し訳ございませんでした。 ちなみに607の方ではありません。 改めて質問させていただきます。 RewriteRuleについての質問です。 example.html?param1=aaa&param2=bbb というURLの、"&"部分のみを"&"に置換して example.html?param1=aaa¶m2=bbb とリライトしたく、いろいろ試してみたのですが クエリの引継ぎ(特にparam2=bbbの部分)がどうしてもうまくいきません。 どうかご教授の程お願い致します。 また、書き方についてアドバイスを頂いた方々、どうもありがとうございました。
611 :
Name_Not_Found :2008/08/23(土) 15:01:43 ID:fLJnaJQD
全角と半角のミスじゃないってことか
(´・ω・) カワイソス
そもそもなぜ RewriteRule で&amp; を & に変換しなくちゃならないの? そんなバカなリクエスト投げるほうが悪いだろ。
mod_rewriteはURLの書き換えであって、クエリーの書き換えじゃないと 思うのだが… クエリーを受ける側のスクリプト(PerlなりPHPなり)で、クエリーを処理 した方が早いんじゃないかな?
むしろクエリの書き換え以外つかわないが。
616 :
Name_Not_Found :2008/08/23(土) 20:33:25 ID:3+LgHwlR
>>600 の者です。
>>613 さんのおっしゃるとおり、バカなリクエストかもしれません。
XML形式のサイトマップなどからのアクセスで、
>>610 のように"&"ではなく"&"と入力されると
param2をパラメータとして認識しなくなってしまったので、&に置換できないかと考えたのです。
スレの雰囲気を悪くしてしまい、本当に申し訳ございませんでした。
>>616 試してはいないけど、
RewriteCond %{QUERY_STRING} (.*)&(.*)
RewriteRule ^(.*) $1?%1&%2 [N]
を他のRewriteCondとRuleのセットより上に書けばよい気がするわぁ?
でも、.htaccessでは変更できないLimitInternalRecursionに支配されて
書き換えられる数の限界が低い気もするわぁ。
スレの雰囲気なんて質問者が気にするもんじゃないよぉ。
&の餌食になったわぁorz Condの&は正しくは RewriteCond %{QUERY_STRING} (.*)&(.*) よぉ。
>>617 ,
>>618 様
>>616 です。
上手くいきました!何とお礼を言っていいのか・・・
アドバイス&優しいお言葉をどうもありがとうございました!
特定のリファラからバナーがインライン表示された場合だけ 別のバナーを表示させたいのですが、 RewriteEngine on RewriteCond %{HTTP_REFERER} ^www.example.com$ RewriteRule ^banner¥.gif$ ^banner1¥.gif これで問題ないでしょうか? 要修正箇所等、あればご指導ください。 よろしくお願いします。
アフィ厨はスルー。
>>622 他の閲覧者やリンク先に迷惑がかかるのが怖いので、
まだ試していません。
明らかにダメなところがあれば、ご指摘くらいはいただけるかと
書き込んだ次第です。
>>623 サブディレクトリ作って、その中で試してみたら?
profile.cgiというファイルを使うアクセスを制限したいのですが、 例えば /profile.cgi?_v=1215692709 /profile.cgi?key=1215692709&tpl=view&label=0&mode=ev というのには皆自由にアクセスして欲しいのですが、 /profile.cgiという、大元にある機能はIDとパスワードがない人には使って欲しくないのです。 ファイルへのアクセス制限をかけるとすべての機能にパスワードが必要になってしまうので、 おそらく特定のURLのみへのアクセス制限をかけれるようにすればよいのですが、htaccessでそうゆうことはできませんか?
>>625 profile.cgiで処理したほうが楽なんじゃない?
さっさと答えろクズ
628 :
625 :2008/08/24(日) 19:30:38 ID:???
htaccessの知識はあるのですが、cgiの知識がほとんどないもので・・・ もちろん自分で改造などができれば一番いいのですが。 htaccessでurlを指定してパスワードロックという方法はありませんかね?
629 :
625 :2008/08/24(日) 19:39:56 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 と記述しても転送できませんでした。
ご存じの方いらっしゃいましたらどうかご教示ください
>>630 RewriteCond %{REMOTE_ADDR} ^123¥.45¥.6¥.
じゃだめかい?
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 ぐらい。
633 :
Name_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]
と記述したところ、うまく表示されませんでした。
すいません、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]
635 :
Name_Not_Found :2008/08/30(土) 17:25:49 ID:IQIwaifS
RewriteBase でトップとばすのは/だけでいいんだっけ?
/ /a というディレクトリがあって、 /a/.htaccessは /hoge.txtを 見に行きなさい というような記述というのは出来ますか?
意味不明。 .htaccessファイルにアクセスがあったら 上の階層のtxtファイルに飛ばすってこと???
>>638 .htaccessの中で.htaccessの内容をincludeしたい
って説明すれば分かるかな?
それをやれたらまずいだろ・・・
ディレクトリがいっぱいあって、 その.htaccessを1個1個、 書き変えたくないんです。 だから、1個のファイルを 書き変えれば、複数の .htaccessがいっぺんに 書き換わらないかなぁ と思ったからです。
同じ設定なら継承をうまく使えばいいんでないの?
643 :
641 :2008/09/04(木) 16:49:31 ID:???
>>642 どうやってやるんですか?
教えてください。
何もしなくても下位ディレクトリに継承される・・・
645 :
641 :2008/09/04(木) 16:56:31 ID:???
調べてみましたが、 やりたい事が逆ですね。 例えば/は誰が見てもいいけど、 /a/はdeny from 192.168.0.1とか 制限をかけたいのです。
647 :
641 :2008/09/04(木) 17:12:48 ID:???
>>2-3 は見たんだけど、
解決できなかった。
もしかして、見落としてる?
よめば無理だとわかるはずってことじゃね cgiで.htaccessを書き換えられるしくみでも自分で実装汁
649 :
641 :2008/09/04(木) 17:26:08 ID:???
>>648 なるほど。
ちょっと無理かなぁって思ってたの。
OS側でシンボリックリンク(ハードリンク)を使って
やれば出来るのは分かっていたけど、
あまりのディレクトリの多さに、全部の
ハードリンクが作成できないのよ
650 :
641 :2008/09/04(木) 17:26:52 ID:???
あ、自宅鯖なんです。
SetEnvIf なり mod_rewrite なりで Request_URI を見て、適宜挙動を変えるようにすれば、 上位ディレクトリにひとつ .htaccess を置くだけで解決しそうな気もするんですが、 そういうのが使えない設定だったりするんでしょうか。
652 :
641 :2008/09/04(木) 17:31:15 ID:???
>>651 自宅鯖なんでなんでもありです。
Request_URIで調べてみます。
653 :
641 :2008/09/04(木) 17:46:26 ID:???
無理だ。 deny fromは、 all|host|env=env-variable なんで、 hostとenvのand条件は出来ない。 と思う。
>>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 以外の人だけを受け入れられるはずです。
ただ、自分でもよくこんがらがるので、間違っている可能性もあります。その時はごめんなさい。
655 :
641 :2008/09/04(木) 17:58:15 ID:???
>>654 レス、ありがと。
飯食ってからじっくり考えるわ。
ありがと!
656 :
641 :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 と、増やしていけばいいのかな?
数にもよりますが、それで問題ないと思います。括弧は要らなかったかも。
相談です。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
よろしくおねがいします。
>>658 見当はずれのことを言っていたらごめん。
500エラーが返ってきてますか?
ribbonはfaqで
AddHandler など FileInfo , その他のグループのコマンドは動作せずに 500 エラーが返ります。
といっているので
AddHandler cgi-script htaccess
がひっかかってるのかな、と思ったんだけど。
faqの引用、
>>659 だと意味がわからんな。
Q: .htaccess は使用できますか?
A: ご使用になれます。ただしご使用になれるのは
AuthConfig Limit Option グループに属するコマンドと、
SetEnvIf,SetEnvIfNoCase です。
そのため AddHandler など FileInfo , その他のグループのコマンドは
動作せずに 500 エラーが返ります。詳しくはApache のマニュアルをご覧ください。
よ ほ う 診 医 精 一 忠 は あ ま さ う け 察 .者 神 度 告 て き さ そ が .た を の 科 す た れ し う の る な く だ が : 、___ ___ : (_____,/::::::::::::`ヽ、 /::rー‐-ー-、:::l__, , -─ _|:lr_‐、 ̄-=、l:::| // /)Y ´゚`ri 、'゚゙' |/,〉 /´ |` |l /ヽ _,ノl |ノ| ヽ_| '-=ニ=-l !/ /|ハ -‐ /\ _,. -ー'`´ l l \ /'/! l`ー-、_
662 :
658 :2008/09/07(日) 00:41:15 ID:???
>>659 数字ではないエラーが返って来ます(こういうことってあるんでしょうか?)
試しに
order allow,deny
allow from all
deny from〜〜〜
だけのファイルをアップしたときも同様のエラーでした。
今書き込んでいるのと別PCのためにエラーに何て書いてあったかは
確認できないんですが、数字のないエラーでした。
<Files ~ "xxxx.cgi" "yyyy.cgi"> order deny,allow deny from all </Files> xxxx.cgi と yyyy.cgi を規制したい場合、上記のような書き方ではダメですか?
>>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]
----
もっと効率のよい書き方や転送方法はありますでしょうか?
また、上記がそもそも間違っていればご指摘いただきたく、
よろしくお願いいたします。
666 :
Name_Not_Found :2008/09/12(金) 15:56:56 ID:f8uYac1D
現在、WEBサイトの移転を行っております。 今までのサーバーではデータはルートディレクトリに 置いてありました。今回は/htmlというフォルダを作成し、そこに データの移動を考えております。 ただ問題があり、リンクURLの指定に<a href="/contens/***.html">のように ルート指定での箇所が多数あり、/htmlに移すとリンク切れになって しまいます。 このような場合、.htaccessなどによりルート指定を変更することは 可能なのでしょうか?
>>666 apacheの mod_rewrite を .htaccess で設定だお。正規表現でだお。
>>665 IPが210.165.243.114とかなんで
RewriteCond %{REMOTE_ADDR} ^210\.165\.243\. [NC]
とかでIPでマッチさせれば、能率アップするお
669 :
Name_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
無言でそんなことをするよりも本人に「私のサイトへ来ないでください。」って俺なら言う。 ちゃんと人とコミュニケーションとったほうがいいですよ・・・・ そんな無言で嫌がらせするよりも嫌ならいやと人に言える人になってください。
>>669 無理っぽいけど。
SetEnvIf User-Agent "Sleipnir" allow_ua
order deny,allow
deny from all
allow from env=allow_ua
こうするか、パスワード認証するしかないんじゃないか?
同僚がSleipnir使い出したらどうすんだろ
673 :
Name_Not_Found :2008/09/16(火) 17:01:45 ID:5WZCYX5q
>>671 ありがとうございます。
IPアドレスが××でブラウザが○○のものは弾くという,AND条件の設定はできないのでしょうか?
>>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
>私も彼と同じIPアドレスであるため なぜに?同居人?会社でネットして遊んでるわけ?
レオパレスじゃねーの
認証パス入り口でかけた方が完全に安全だと思うけどね
678 :
Name_Not_Found :2008/09/17(水) 07:03:45 ID:Kmkp0UsA
JavaScriptの外部ファイル(*.js)をダウンロードされない ようにする方法をご存じのかた教えて下さい。
そもそも、ブラウザからアクセスされない(=ダウンロードされない)状態だと、 ブラウザがJavaScriptを実行してくれませんが・・・
>>678 679も書いてるとおり、無理だね。
どうせたいしたJavaScriptじゃないだろw
681 :
◆Gb9xp7nPOw :2008/09/17(水) 11:03:21 ID:tYhq7142
>>668 IPアドレスで弾いておけば確かに能率アップさせられそうですね。
効率のよい方法を教えていただきましてありがとうございました。
関連してひとつ気になったのですが、
今回転送したい対象をアクセスログで見ていますと、
IPアドレスではなく、多くはホスト名でアクセスしにきていました。
このようなホスト名でアクセスしにくる場合に備えて、
>>665 のようにホスト名でも併記しておいた方がいいでしょうか?
または、ホスト名に該当するIPアドレスで転送するよう書いておけば、
IPアドレスに該当する(逆引き)ホスト名も転送されるでしょうか?
IPアドレスからホスト名を導き出す逆引きに失敗するか、
そもそも逆引き名がDNSに登録されていない場合もあると思ったので、
IPアドレスだけだと上手く転送されない時があるかと疑問が残りました。
誤解している事があればご指摘いただきたくよろしくお願いいたします。
>>681 apacheの設定で、HostnameLookupsがOnになってるからでしょ
IPアドレスとホスト名と、どっちが先かは、もっと勉強したほうが良いね
凄まじいほどにあほな質問をしてしまった事に気が付き…
ホスト名でアクセスしてくるわけがないという事、
なぜ抜けていたのか自分で自分が信じられません…
>>682 HostnameLookupsの設定について確認し理解できました。
ヒントを与えてくださってありがとうございました。
>>665 からの質問は全てクリアになりました。
回答してくださった皆様、本当にありがとうございました。
まさに恥の上塗りだな。
>>678 JavaScript と同等の機能を PHP などに移し変えて実行させる
JS だとどうしてもソースが見えてしまいますから、
ソースが見える=ダウンロードされると思って
JS を使い続けるならそういった事はあきらめるしかないと思います
↓現在設置している.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/ )からのアクセスは許可したいのですが
どうすればよいのでしょうか?
>>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
で許可できました。
済みません、素人なりに色々と調べて設置してみたのですが 日本語使用者だけをアクセス可能にする記述 SetEnvIf Accept-Language ja Lilith Order Deny,Allow Deny from all Allow from env=Lilith と 特定のIPを弾く記述 order allow,deny allow from all deny from ×××.××.××.××× の組み合わせは矛盾が生じてしまうので やはり出来ないのでしょうか?
>>691 (A) 日本語使用者だけをアクセス可
(B) 特定の IPアドレスを deny
上記の設定を施した状態で、
・自分のブラウザの使用言語を日本語 / それ以外に
・設定(B)に自分のアクセス元 IPアドレスを追加 / 除去
というように
設定を切り替えて検証すれば分かると思うんだけどどう?
>>692 どうも有り難うございます。
その方法はこちらに書き込む前に試してみたのですが、
(A)(B)、どちらか個別のみの場合は正常に機動するのですが
両方を記述した場合、403エラーにしかならないんですよ。
内部エラーではなかったので
Deny from all とallow from all の両方を描くと矛盾が出てしまうから駄目なのかと思ったのですが・・・
>>691 SetEnvIf Accept-Language "^[^(ja)]$" non_ja
order allow,deny
allow from all
deny from env=non_ja
deny from 弾きたいIP
とかじゃいかんのか?
とうちのねこが申しております。
696 :
691 :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 弾きたい国のドメイン
という事でなんとか落ち着きました。
色々教えて下さいまして本当にどうも有り難うございました。
.htaccessをおくと500エラーになります。 内容は空でもなんでもエラーに。 どうすればいいでしょうか。
質問の仕方から学び直してきて下さい。
699 :
Name_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/』へ飛ばす対象になってしまい、上手くいきませんでした。
ちょっとややこしい質問の書き方で申し訳ございませんが、
ご存知の方がいらっしゃいましたら、どうかご教示ください。
よろしくお願いいたします。
700 :
Name_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
を使用したいのですが、実現する方法はございますでしょうか。
もしありましたらご教示いただけますと幸いです。
宜しくお願いいたします。
>>700 htmlもしくは/で終わる時にのみ表示するように、ちゃんと条件設定すればよろし
>>701 ご返答有難うございます。
その条件設定内容等、可能であれば詳細教えて
いただきたいのですが、宜しければお願い
いたします。。
>HTML内で呼び出しているCSSや画像ファイルが存在しないものであった場合 まずこれがおかしいだろ
htaccessでアクセス制限をしているのですが、何度もパスワード入力画面が出てきます。 一回目の入力で目的のページは表示されず、パスワード入力画面を消すと表示されます。 ロリポップで自動生成しているので、理由がわからず困ってます。 もしお分かりになる方がいらっしゃいましたら教えてください。お願いします。
>>705 htaccessでパスワードによるアクセス制限してんだろ?
だったら当たり前だろ?あほか?
707 :
705 :2008/10/01(水) 20:37:28 ID:???
>>706 なるほどそういう物なのですね。
ありがとうございました。
708 :
Name_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]
709 :
Name_Not_Found :2008/10/11(土) 11:27:41 ID:PEf27zvt
一度あげます
710 :
Name_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になってしまいます
何が悪いのでしょうか
>>710-711 >>3 【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
xxx.xxxは存在しないけど、一応ドメイン問合せと再帰問合せが発生して
ネットワークリソース使うんだからさ…
何のために例示用のドメインが用意されてるのか少しは考えて欲しいし、
テンプレで誘導してることくらいは守ろうよ…('A`)
>>712 exampleてサイトを作ってる人の大半が知らないんだよね。
問題が発生してぐぐったりしていろんなサイト見てると必ずexampleってのは出てくるわけで
なんだこれ?って疑問に普通の人は思うんだけどな。
サイトを作る人には、全角英数を使わない・例示にはexampleを使うこと・IEで確認しながらサイトを作らない の最低3つは教え込ませないと駄目だな。
714 :
Name_Not_Found :2008/10/12(日) 01:23:58 ID:pJAbbTeB
example.*が良く出てきても、 「みんな勝手に使ってるけど、ドメイン持ってる人に迷惑じゃないか、少しは頭使って考えろ! 登録されてなさそうなのを使えば、誰も迷惑を被らないだろうが!全く、マナーの無さが気分悪い。プンスカ!」 とか思うのが「普通」の人。
716 :
Name_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 これを組み合わせて、「このドメインの中で、このブラウザだけ制限」と するにはどうやって書いたらいいでしょう。 つまり、そのドメインでも別のブラウザには閲覧を許可したいのです。 どなたか、よろしくお願いいたします。
>>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]
REMOTE_HOSTはたいていの環境で取れない設定だし Allow/Denyにホスト記述して引かせても常時取れるわけじゃない。
719 :
Name_Not_Found :2008/10/16(木) 13:13:41 ID:oaZMgGBx
720 :
Name_Not_Found :2008/10/17(金) 17:35:51 ID:ZuIU0YtL
自分だけならベーシック認証でいいんじゃないの?
722 :
720 :2008/10/17(金) 18:08:04 ID:ZuIU0YtL
>>721 すみません…よく分からないのですが、
国内からのアクセス時にのみベーシック認証を起動させる
という事でしょうか?
>>722 「自分のアクセスだけを許可する」んなら、自分だけが知ってる合言葉を使ってアクセスを遮断する。
その具体的な手段がBasic認証。
「日本以外からのアクセスは許可したい」ってことだったら、日本国内からのアクセスだけBasic認証が必要なコンテンツに飛ばすとか。
固定IPのISPにかえればいいじゃん
ローカル環境に鯖をたてたほうがいいな
726 :
720 :2008/10/17(金) 21:16:06 ID:ZuIU0YtL
>「日本以外からのアクセスは許可したい」ってことだったら、日本国内からのアクセスだけBasic認証が必要なコンテンツに飛ばすとか。 これで対応しました。ありがとう御座いました。
あるサイトからのアクセスを制限して自作の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ページと同じ階層に置いてあります。
よろしくお願いします。
728 :
727 :2008/10/19(日) 15:46:44 ID:???
自己解決しました
729 :
Name_Not_Found :2008/10/21(火) 21:14:56 ID:0mhBO2h7
ちょとしつもん /htdocs/.htaccess をあるディレクトリーだけには適応したくない場合どうかけばいいのでしょう? /htdocs/ や/htdocs/aaa/ 以下は有効に /htdocs/bbb/ や /htdocs/ccc/ 以下には無効にです。
(´・ω・`)知らんがな
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 こうやってみました。 しかし、なぜかうまく動きません。教えてください。
X_DCMGUID ではなく X-DCMGUID ですよ
× "_" アンダースコア ○ "-" ハイフン ということですね?
そうです
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 こうしてもダメでした。 なぜ動かないのでしょうか…
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
ありがとうございました。 無事動きました。
739 :
Name_Not_Found :2008/11/01(土) 08:17:14 ID:AaVQMrT+
301リダイレクトが神過ぎる いままでhtaccess使えなかった糞鯖だったがこれは楽だのう
基本的な質問で申し訳ありません。 abcd01234.zzzz.example.jp 上記のようなホストの場合、先頭の「abcd」を含む場合のみアクセス規制することは出来ますか? 数字部分が変動の大手プロバイダのため、他の部分では規制出来ません。 order allow,deny allow from all Deny from abcd ではうまく弾いてくませんでした。 不可能であれば、「.zzzz.example.jp」でUser-Agentが「xxxxxx」である場合のみ規制したい時は どう書けばよいのでしょう? よろしくお願いします。
Deny from abcd の行を Deny from abcd* にしてもだめなら俺は知らん ぐぐれとしか・・・
744 :
2/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 弾きたいホスト
745 :
2/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は出来ますか?
746 :
744 :2008/11/05(水) 16:32:34 ID:???
ごめんなさい。変な改行入っちゃいました。
>>744-746 example.info は例示のために使ってはいけません
example.com、example.net、example.org のみが、
例示用に予約されたドメイン名として有効です
748 :
740 :2008/11/05(水) 19:25:48 ID:???
特定のディレクトリにアドレス直打ちでアクセスしようとすると403 Forbiddenを表示するようにしたいのですが そのディレクトリ下のhtaccessにどう記述すればよいでしょうか?
>>747 すみません。
exampleならどんなドメインでもいいのかと思い込んでいました。
申し訳ありません。
フェイク入れ忘れてるしもうorz
751 :
Name_Not_Found :2008/11/12(水) 11:05:26 ID:UTMvrJQf
リダイレクト機能を使っている場合に,元サーバーが閲覧者に分かってしまう可能性はあるでしょうか? また,それを防止する策はありますでしょうか?
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だけを弾きたいんですが、その場合の記述はどう書くんでしょうか
ベーシック認証をする為に、passをかけたいディレクトリにhtaccessを置きました このほか、ロボット検索を弾く等の為に、ルートディレクトリにもhtaccessをおいてあります ベーシック認証も検索除けもどちらも動いている様なのですが、htaccessは二つもあって大丈夫なのでしょうか?! 基本が判っていないので悩んでいます。
ひっ!
>>754 目的に応じておいて良いんですね、有り難うー!
756 :
Name_Not_Found :2008/11/19(水) 01:00:42 ID:sU5vkaly
ソフトバンク携帯がホスト名の逆引きしない 昨夜から allow from .softbank.ne.jp 効かない いつなおるのだろうか・・・
757 :
Name_Not_Found :2008/11/19(水) 15:56:34 ID:Dr/wG0sa
例えば、2chからのLINKアクセス(
http://ime …)を遮断することってできますか?
製作初心者スレから誘導されてきました。
アフィリ広告を張りたいんだけど、誰かが2chに紹介してくれたお陰で
毎日、2ch経由のアクセスが沢山きます。
喜びたいんですが、張ろうとしてるアフィリ広告って2chでの宣伝活動を
禁止してるんですよ。。。(涙
.htaccessを導入して、どんな技術を使えばよろしいんでしょうか?
ちなみに、オリジナルのPHP掲示板・問い合わせフォームが作れるレベル
なんですが、.htaccessの技術レベルは、もっと上なんでしょうね。。。(汗
最近記事を見せたいのかアフィが見せたいのか分からない金の亡者サイトが多いな。
>>760 hogehoge.comは他者が所有しているドメインです
あなたはご自分が所有しているドメインが他者に
“無断で勝手に”例示用に使われたら、どう思いますか?
テンプレくらい読んでから質問してください
>>3 【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
質問させて頂きます。
自サイトの画像フォルダ(仮に/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を代替表示させる、というようなものです。
可能でしたらその方法をご教示いただけましたら助かります。
宜しくお願いいたします。
>>764 早速のご教示感謝致します。
おぉ〜、ErrorDocument 404にはjpgも指定できたのですね。
先ほど試してみましたところ、この方法で望む結果が得られました。
次案のnoimage.htmlを作って404で飛ばす方法は、
私の用途(特定ページ中にある画像のみ代替表示)では、
うまく表示させることができず断念しました。
これがうまく表示出来れば確かに親切なのですが…
とりあえず、ご教示いただきました
ErrorDocument 404にnoomage.jpgを表示させる方法をもって
進めてみたいと思います。
本当に助かりました。
どうもありがとうございました。
>>767 本当の事だからね。
他人のドメインを勝手につかうのはよくない。
>>767 これだけは分かる。
君にドメインを利用する資格は無い。
こういう人にウェブサイトとか作って欲しくない。 画像とか文章とか平気でもっていって自分の物のように使われるし。
>>767 お前みたいな馬鹿が居る事にビックリだ。
ネチケットで思いだしたけど、以前ウェブ板で 何かにレスしてもらった子が礼を言わない云々の話になって本人が言った言葉が 「礼が欲しいからレスしてるのか?」 だった。最近の子って自分が礼を欲しくないのか礼を言わないんだな。 礼が欲しいほしくない以前に何かをしてもらったら礼を言うのが人としての常識だと子供の頃に教わったけど 最近の親はそういうの教えないんだな。
>>773 親だけでなく、周りの大人(自分含む)が子供に注意しなくなったのも一因かと
今となっては遥か昔、親が腐っていても周りの大人がその子に色々と教えてあげたものでしょう
ですが核家族化や特に都市部では地域コミュニティが機能しなくなって…(以下略)
ネットでも同じことが言えて、2chを使っていてあれですけど、
自分のハンドルネームを決めてリアルと同じように礼節を大切にしつつコミュニケーションする、
こういった事を教えてくれる先達がいなかったり、2chのような匿名ありきのルールが存在して、
結果として767のような無礼がまかり通るようになってしまったのかもしれません
昨今の様々なブログへのコメント、分かりやすいのは炎上したコメントを見ているとそう感じます
ここまで書いておきながらあれですが、さすがにこの流れはスレ違い過ぎると思いますので、
どこか適当に話せる場所があって知ってる方がいましたら誘導してくだされば幸いです
>>770-772 おまえらみたいなのはマジでキモい。
hogehoge.comとかどこのサイトでも昔から使われてたろ。
そもそも前スレまで普通にhogehoge.comを使っておいて
このスレから相談もなしに加えられたテンプレを遵守しなければ
バカとか泥棒呼ばわりする。
性善説を唱える奴らこそ一番危ない人間だよ。
自分が正しいと思いこんでるからこそ、それを破る人間には何を言っても
何をしてもいいと思ってる。
だいたい包茎目当てのスパムサイトを尊重しようとかマジキチ。
逆逆 性善説ならhogehoge許されるがな('A`) 世の中には悪い事する人がいる(性悪説で見てる)からRFCで規定されてhogehoge使わずにexample使いましょうねってルールが作られたようなもんでがしょ
>>775 お前は何か規則が決まってもそのまま「前はこんなのなかっただろ!!!」と暴れるのですね。
まるで糞マイクロソフトの言い訳じゃん。
>>775 お前みたいなのは大人しくジオでホームページ(笑)作ってろ。
>>775 こういう人やマイクロソフトがいるからルールをつくらなきゃいけなくなるんだよ。
>>777 >何か規則が決まっても
いつテンプレ追加する話し合いがあったよ。
>>780 テンプレ追加うんぬん以前に、
常識って言葉、ご存知ですか?
もめてて、うざいので話が終わるまでしばらく旅に出ます。 みなさんごきげんよう(・∀・)/~~~
>>781 常識って社会によって異なるって知ってた?
話をそらしてないで
>>780 に答えろよ
今まで認めてたものを勝手に認めなくし、
それを破ったものを責め立てるとはどういう了見だよ。
>>783 あなたの常識が通じる社会にお戻り下さい
785 :
Name_Not_Found :2008/11/25(火) 13:50:39 ID:NmrW2ymu
>>783 真剣に答えてみます。
>いつテンプレ追加する話し合いがあったよ。
この質問に対する回答は、正直このスレからしか参加していないからわたしは知らないです。
けれど、インターネットの基本的なルールが策定されているRFCでexampleを使ってくださいとなっている以上、
インターネットを利用する際にはそれに従うべきじゃないですか?
もしそのルールを知らずに使ったのならしかたがありませんが、
このスレになってから?は少なくとも
>>3 に明記されていますから質問前にはテンプレを確認すべきであって、
それを読み飛ばして質問してしまったであろう
>>760 は、そもそもテンプレを確認せず質問した愚か者であって、
テンプレを読み飛ばして質問した時点で議論の対象にもならない事は2ch利用者なら分かりますよね?
また、指摘されて気付いたなら、ネット利用者の一人としてその時点からexampleを使うルールには従うべきで、
exampleを使う使わないについてのテンプレにいつ追加した等含め、議論する余地は全くありませんよ。
>>786 テンプレってのはそれなりの賛同があってこそ生まれるもので
勝手に追加されたものはテンプレとは見なされない。
同じ問いになるが2ch利用者なら分かるだろ?
少なくとも前スレにおいてhogehoge使うなとは一度も書き込まれていない。
ゆえに勝手に追加された(少なくともこのスレでは)俺ルールを遵守する理由も
それを笠に着てバカだとか資格なしだとか愚か者などと罵れる理由もない。
確かに書き込まれていた注意事項を守らなかった
>>760 は悪いかもしれないが、
それはやんわりと注意すればいいだけで
>>761 のように、
ましてや
>>770-772 のように責め立てるべき理由にはならない。
議論の余地はないと言うが、少なくとも以前からいる俺にとっては余地があるから
こうして口を出してるわけだし、困っている人に対してバカなどと罵るだけで
自分の優位性を語るような卑屈な人間にはなりたくない。
hoge.com、hogehoge.comの何が悪い。
人に偉そうに注意する暇があったら答えてやれ。
威張り散らすだけのレスはクソの役にも立たない。
>>787 使いたいのなら使えばいいだろ・・・
お前馬鹿か・・・・
こんな馬鹿と同じネットを共有してるかと思うとしにたくなる・・・・・
マイクロソフトと同じでみんなが決めた事や勧告を無視するような人は 置いていくしかない。 ちゃんとした人だけで先に進めばいいよ。
こんなやつが秋葉原で暴れて人殺しするんだろうな。
>>788 だからお前みたいに人をバカにする奴がダメだって言ってるんだろ。
そこを理解しろよ。
>>790 だから、みんなで決めてないだろ?
このスレでも普通に答えてただろ?
なんでバカにしたり罵ったりする必要がある?
ナにこのキチガイ なんで暴れてるの?
じゃ法律もみんなで決めてないから人殺しくらいしてもいいだろって事ですね。 そうですか・・・・
>>794 法律は間接民主制をとってるだけでみんなで決めてるだろ・・・
何を言い出すんだ・・・
あとマイクロソフトマイクロソフト言ってる奴がいるけど
Officeの質問スレでXMLについて質問してきた奴に
時代はODFだバカ野郎って言うのが当たり前だとでも思ってるの?
もういいからキチガイ
>>796 俺をキチガイと罵ったところでお前の優位性が確立されるわけでも
なんでもないんだけど、その辺のところちゃんと考えてる?
初心者スレから誘導されました。 直リンク防止のために「a.htaccess」のファイルを作って トップページのindexファイルと同じフォルダに置いたんですが、 これで効果があるんでしょうか?
>>800 単に、名前をつけなきゃいけなかったので・・・
名前つけちゃったら意味ないぞ
httpd.confで、a.htaccessにしてあるかもしれないじゃないか
ファイル名は
.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)$">へ入れてください。
また何をしているのか理解してから設置してください。
>>804 じゃそうすればいいです。
ご自分の環境に合わせてください。そこまで面倒みれません。
>>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
>>810 なんの役にも立たないお前のレスの方が邪魔で無意味だって気づけ。
>>810 こういうやつが必ず言うのは、「説明書よめよ」だろうな。
説明書をよんで万人が理解できるならサポートセンターなんて不必要なんだよ。
814 :
:2008/11/26(水) 12:33:20 ID:???
ここはサポセンじゃありません
816 :
:2008/11/26(水) 14:53:25 ID:???
テンプレも読まない馬鹿だから質問スレに来るんじゃねぇの? というか質問癖の付いた奴はテンプレ見ないタイプが圧倒的に多いと思う。
example.com/hogeにアクセスしたら example.com/hoge/に飛ばすようにし、また、 example.com/hoge/はexample.com/hoge.cgi/を呼ぶようにしたいのですがどうすればいいですか?
質問スレで質問して文句言われるのならこのスレはいらないんだろ? 削除依頼だしてこようか?
削除依頼出せるもんなら出してみろよ。どうせ通らんよ。
質問です 粘着に張り付かれたんでアク禁したいのですが、403になるとファビョってくる可能性が高いです なので404を表示してやりたいのですが、 鯖デフォの404メッセージはなく、今までカスタマイズ版も使っていないので突然そうなると不自然です 環境を問わずそれに併せた404メッセージに飛ばすような記述は出来るのでしょうか?
質問すると気はおかしな自分語は使わず ちゃんとした言葉で質問しましょう。
ちゃんとした言葉で注意しましょう。
そして今日も僕は、
>>820 粘着に張りつかれたって、一瞬このスレの事かと思ったよwww
最後の2行が理解できなかったな。
ネットストーカー?に貼りつかれて可哀想だから答えてあげたかったけどゴメン。
理解できた人答えてあげてー!
偽の404ページを作ってそこにとばしてやりゃいいんでねえの 漏れも昔やってたなー
偽の404を使うときは、ステータスコードも404を返すようにしとけよ 見た目は404でもステータスコードが403だとバレるぞ
>>21 あなたが神か
やり方分からなくて間にphpかませてたんだが、これですっきりした
htaccess設置したら、co.ccドメインが使えなくなりました 403 Forbidden You don't have permission to access /on this server. ただ元のレン鯖のドメインではアクセスできるんだよね 何が原因か分かりますか?
.htaccessの中身も書かずに質問しても分かるわけないだろバカ。
>>830 きっとアクセス権が無いんだと思います。
>>833 長くて・・・
>>834 でもレンサバのサブドメインでアクセスすると普通に見れるんだよね・・・
試しに空のhtaccessをうpしても同じ症状だったわ・・・ ってことは拡張子に反応してる??
独り言はご自分の日記でどうぞ。
そもそもhtaccessで403Forbiddenはオリジナルページなのに デフォの Forbidden You don't have permission to access / on this server. なんだよね
.htaccess以外には何置いてるの?
>>839 phpとか置いてるけど、過去いろんな鯖で試して、問題は無かったです
問題が起きたのは今回が初めてです。
レンサバのサブドメインで我慢するしかないのかなあ
.htaccessを理解せずに 適当にネットで拾ったのをコピペで貼り付けただけ ってことなのかな?
IBMので作ってるようなやつはみんな理解もせずコピペさ。 HTMLなのに <link rel="stylesheet" type="text/css" href="./style.css" /> なんて馬鹿なこと書いてるやつ多すぎだし。
>>843 それがどうしてだめなのかが分からないって
まさかウェブサイトの管理とかしてねーよな?
こうすれば分かりやすいかな。
<!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>
手書きで作ってるならともかく、ビルダー使ってる人やレンタルブログの人は html知らなくても無問題
ビルダーで作られた物がウェブサイトだと?
Dreamweaverからウェブサイトって言えるよね
ウェブサイトの定義って何かね
オナニー
俺マジでわかんねえ
こんのはどうだ。
//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>
htaccess 設置したのが悪いんじゃない?
リロードしてなかった
>>830 ,htaccessの記述にミスがある
>>838 830と同一人物だろうが、記述ミスがあるからパーミッション云々ってエラーが出る
で、そういう流れで841がコピペ厨うぜえって言ってるんだよね?
その上で842がコピペ厨の実例を出したんだろうが、842の言ってることは別に誤りは無いぞ。
HTML文書に<link rel="stylesheet" type="text/css" href="./style.css" />
ってOKだから
違う?
スタイルシート使ってないからじゃね
XHTML <link rel="stylesheet" type="text/css" href="./style.css" /> HTML <link rel="stylesheet" type="text/css" href="./style.css"> この程度の事は理解しましょう。
>>859 >HTML文書に<link rel="stylesheet" type="text/css" href="./style.css" />
>ってOKだから
プ、プ、プギャープギャプギャプ♪
\ ププププギャプギャププギャプギャ/
♪ (^Д^) ♪
_m9 )>_ キュッキュ♪
/.◎。/◎。/|
| ̄ ̄ ̄ ̄ ̄|
画像の直リン対策に SetEnvIfを使おうと思うのですが 悪質なやつ(成りすまし野郎)のページだけイタズラしてやりたいのです //////////////////////////////////// SetEnvIf REFERER "悪質サイトURL" Lilith Order Allow,Deny Allow from all Deny from env=Lilith //////////////////////////////////// これだとリンク不可には出来るようですが。。。。 別画像を出すなどいいイタズラはありますか? 初心者で申し訳ありませんがご教授おねがいします
ブラクラにでも飛ばせば? 訴えられても知らんけど
866 :
863 :2008/12/07(日) 11:24:25 ID:???
>>864 その機能では特定のURLに限定した拒否は出来ないような
間違っていたらごめんなさい
>>865 背景画像なんですね。対象が。。。
ウイルスでも仕込みたい気分ですが
さすがに被害者は見た人になるのでね
特大ゴッキーの絵やロリエロゲのCGなんか効果大だな
>>866 Webの仕組み上そういうものを防ぐ方がナンセンスというもの
そうされたくなければ、公開しないこと
どんなものでも、Web上に出してしまえばコピーできる
いや直リンが嫌なんだろ
870 :
863 :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
そんなに見てほしくないのならローカルマシーンにデーター保存してnicはずして置けばいいじゃない。 自分が思うほど他人は自分のデーターになんの興味も無いものです。
>>870 それは、田舎の無人野菜販売所と同じ
善人だけが金を払う
それがイヤなら、自分が店番しろ
873 :
863 :2008/12/07(日) 14:53:32 ID:???
いや 直リンやろうに制裁を加えたいだけです 今 おまんこ画像に差し替えてやりましたw
>>873 >今 おまんこ画像に差し替えてやりましたw
よそでどうぞ。もうこないでね。
>>873 >直リンやろうに制裁を加えたいだけ
それならHotLinkを使え
相手は技術的にできることをしたまでだ。それは、同時にお前の技術不足である
それで、相手に損害を加えるというのは筋違い
876 :
863 :2008/12/07(日) 15:13:18 ID:???
>>875 それを自分でも理解した上での相談です
レン鯖は10年使ってますが.htaccessのお世話になる問題は
いままでなかったのですが、stickam.jpというサイト
(管理権限なし)での成り済まし被害(限りなくフィッシング風)
にあわせてバナー管理のため、無料レン鯖に画像倉庫を別に建てた次第です。
でも、リンクを書き換えても(鯖を変えても)その人は
直リンで背景画像を貼っている訳で。。。
そいつを 潰せたらな と思う今日この頃です
そろそとあぼーんでいいな。 次の質問どうぞ。
878 :
863 :2008/12/07(日) 15:20:59 ID:???
使えないスレやな
879 :
863 :2008/12/07(日) 15:21:54 ID:???
おまんこ画像て 借りてる鯖の規約違反だったらアカウント消されるぜ
でもな、直リンを断りも無くやるっていうのも 不貞や労だわな おしおきは必要だろ ネチズン憲章第3条4項に違反する
いやだから、おしおきしたつもりが自分の垢消されたら泣けるぜ?
883 :
Name_Not_Found :2008/12/07(日) 15:41:16 ID:rM6vuWJq
てめぇの鯖でも無いのに直リンされて憤慨するのもおかしな話だな 自鯖にちょっとでも負荷かけられるのが嫌ってんなら解るけど。
884 :
Name_Not_Found :2008/12/07(日) 15:43:51 ID:rM6vuWJq
背景画像の直リンくらいじゃ負荷にもならんって。
仁義とマナーの問題だろ
レン鯖でも有料で銭払ってんだぜ おしおきは当然
ただ
>>882 には禿同
無難にゴキブリとかゲジゲジの画像にしとけば? もしくは、「私はロリコンです」とか書いてある巨大画像とか
どっから沸いてきたお前ら
直りんされるのが辛くてしかたがないって言うその画像をみてみたいものだ。 さぞすごくすばらしい画像なんだろうな。
889 :
Name_Not_Found :2008/12/07(日) 16:35:05 ID:rM6vuWJq
ケツの穴のちいせぇカスの戯言に付き合えるお前らって素晴らしい! よっぽどネタ不足だったんだなこのスレ
>>885 仁義とマナーってどこのだ?
俺のサイトは直リンだろうが盗用だろうが無断転載だろうが大歓迎だぜ。
いちいち対応すんのもまんどくせぇし。
俺のサイトは白地に黒文字とリンクしかないぜ 後画像が1つ
後画像が1つ = Get Flash 最近こういう馬鹿サイトが増えた
て言うかなんだこの流れ 直リンされたから制裁とか、厨行為に厨行為で対抗してどうするんだ 逆恨みから嫌がらせされたら面倒くさいぞ
>>879 こんなスレにすがるおまいは、さらに使い物にならないw
生きる価値無し。チンポかんで氏ね。
質問です。 環境:さくらサーバ(スタンダード。独自ドメイン)
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つをどう融合すれば両方適応できるのでしょうか
数時間格闘しましたがバカなのでお手上げです。ご教授お願いします。
>>897 一部だけ答えます
RewriteEngine onは最初の一行だけで事足ります
5行目のRewriteEngine onは要りません
ifごとにRewriteEngine onって書いてる解説サイト多いよな
RewriteEngine って off にするために書くんだべ
ああ、「いざってとき」が無いと誤解が
902 :
897 :2008/12/08(月) 21:34:26 ID:???
なるほど参考になりました。ありがとうございました。
ホストで規制してしまうと、ログもホストで記録されてしまいますが、これをホストにならないようにできないでしょうか? 携帯規制をしようと思っているのですが deny from .docomo.ne.jp としてしまうとログもホストになってしまって困っています。これをIPのままにはできないでしょうか?
質問です 初めて.htaccessを使ってアクセス制限をするので、 とりあえずちゃんと動いているのかどうか試そうと自分のホストを入れてアクセス拒否をしたところ、 どうしてか全く通常通りにサイトを閲覧できてしまいました。 しかし自鯖に設置してあるCGIだけは制限がかかっているようで、 カウンターやメルフォやブログなどは403エラーが出ます。 一体なんなんでしょうか。 記述は以下のとおりです。 <Files ~ "^.(htaccess|htpasswd)$"> deny from all </Files> Options Indexes order deny,allow deny from ....
>>904 cgiが入っているディレクトリは、httpd.confで
AllowOverride none
になってたりしないか?
ホストで規制してしまうと、ログもホストで記録されてしまいますが、これをホストにならないようにできないでしょうか? 携帯規制をしようと思っているのですが deny from .docomo.ne.jp としてしまうとログもホストになってしまって困っています。これをIPのままにはできないでしょうか?
.htaccessで解決することじゃないだろ。
じゃあなにで解決することなんだよ
>>908 phpでいいんじゃないの?
それにここは質問スレじゃなくなったんだよ。
httpd.confとかanalog.cfgの話なんじゃね。 .htaccessスレで聞く事じゃないと俺もおも。
そこをなんとか、.htaccessでお願いしまつw
>>910 ホスト出力に関してApacheで弄るのは
httpd.confの HostnameLookups Off しかない。
後は.htaccessか上記にあるphp周りでなんとかするしかないんじゃね。
やったことないからわからんけど
mod_rewrite
shuffle_send
嫌味まで書く必要は無い
質問です。
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へのリダイレクトはいやです。
レン鯖はさくらです。
全角英字を半角になおせばいいと思います。 web関連板で○○出来ません;;;で一番多いのがドザの質問の英数字を全角で書いているのが99%でそれを直せば問題はなくなっています。
>>918 なんで
>.htaccess
だけ大文字なのか理解に苦しむ
ドザ用OSってそんなに半角英数を打つのが難しいの? 殆どが全角英数だよね? 半角をうつのは辞書登録しないといけないとかなの?
922 :
918 :2008/12/29(月) 14:25:57 ID:???
htaccesが全角なのは、ccessになっちゃうからで 質問の趣旨とは関係ないです 鯖にうpる時はちゃんと半角
Winでは、たしか打った時にフォントで、全角と半角の違いが分かりにくいw Macだと強烈に違和感感じるけどね
>>922 >htaccesが全角なのは、ccessになっちゃうからで
は?
もうスルーしようぜ
>>918 ん?分からないの?
/error ディレクトリに .htaccess を置いて、
その中の order は allow from all だけにする
つまり、/error ディレクトリのアクセス制限は
一切無しにすればいいだけ
全角で解りづらくてすまん 他板だと.htaccessって打つとhtaが消えるから わざと全角で打ってたんだ なんか荒らすみたいになってすまんかった
>>927 どこか間違ってるんじゃない?
/ ルートと
/error に置いている .htaccess を全て晒してごらん?
ErrorDocument 403 /error/403.html <FilesMatch "!^¥/error¥/403¥.html$"> order allow,deny allow from all deny from 拒否するIP </FilesMatch> みたいな感じじゃダメか?
>>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
-----
最終行の改行はちゃんとしてあります
>>924 質問者は間違いなくギコ使いでござるの巻
ギコナビだと正確にドットエイチティーアクセスと書くと
ccessと表示されるんだ
たぶんギコだけだから
>>918 も正しく書くがよいよい
932 :
Name_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作成の際に『\』をバックスラッシュのキーからではなく
\マークのキーから入力してしまうことが多いのですが問題ないでしょうか?
ご存知の方がいらっしゃいましたら教えていただきたいと存じます。
よろしくお願いいたします。
933 :
Name_Not_Found :2009/01/06(火) 11:07:25 ID:YIsTa4dY
>>932 の者ですが、どなたかご存知の方がいらっしゃいましたらお願いいたします
sjisでは、バックスラッシュと¥は同じだ
935 :
Name_Not_Found :2009/01/06(火) 19:56:48 ID:m+zOLjWZ
937 :
Name_Not_Found :2009/01/07(水) 18:39:50 ID:rQnOIHUj
>>936 >>932 です。分かりやすいご説明をいただき、どうもありがとうございます。
おかげさまで円記号とバックスラッシュの違いについては理解、解決することができました。
もしよろしければどなたか前半の質問(RewriteRuleにおける『\』の要不要)について
ご存知の方がいらっしゃいましたら、ご教授いただけないでしょうか?
何度も申し訳ございませんが、どうぞよろしくお願いいたします。
>>937 「index\.html」でも「index.html」でも運用上は大差なし。
前者はindex.htmlだけが対象だが、後者だとindex.htmlに加えてindexAhtmlやindexZhtmlやindex_htmlなんかも対象になる。
その理由はエスケープシーケンスや正規表現を調べるがよろし。
940 :
Name_Not_Found :2009/01/08(木) 18:13:32 ID:GqtnLvfq
sage忘れました。すみません
アクセス制限をしたい相手が自分と同じIPのとき 相手のみを制限するというのは可能ですか?
>>942 IPアドレスが同じなら、他の方法を考えるしかないんじゃねの
しかし...
同じオフィス内に、見せたくないヤツがいるということか?
>>943 ありがとうございます
隠してたサイトがばれちゃいまして…
今後見るなと言ったところで聞くわけないですし
かといってサイト引っ越すのも嫌なので…
>>942 1)パスワードをかける。
2)公開しない。
3)「※○○さんはみないでください。」と名指しで書く。
おれなら3を選択するが。
>>942 あれよ。パスワードをかけるのは、そのipからのアクセスだけにかけるのよ。
そうすれば同じipの自分はパスワードを知ってるので問題ないし
違うipの人にはパスワードは要求しないわけだから問題ない。
それでは俺なら3の見ないでくれと伝える。
言葉と文字で。
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に起因するものだと私は考えているのですが、
実際にはこれは何が原因なのでしょうか。
また、回避する手段はあるのでしょうか。
ご教授ください。
rewrite関係ない、URLの書式として間違っている percent encoding
全然仕組みがわからないまま質問します。 bbs/index.php?mode=rss をFeedburnerにリダイレクトさせるためにはどのように書けばいいのでしょか? 今までは他のFeedをこんな風に書いていたので RewriteRule ^files/rss?¥.xml$ (FeedBurnerのアドレス) [L,R] このように書いてみましたがダメでした。 RewriteRule ^bbs/index?¥.php?mode=rss$ (FeedBurnerのアドレス) [L,R] よろしくお願いします。
>>949 index.php
でリダイレクトしたほうが早いんじゃないのか?
951 :
949 :2009/01/15(木) 11:58:39 ID:???
>>950 あっさりできました。ありがとうございました。
952 :
Name_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>で囲んだ部分)を消すとダウンローダーも弾くようになるのですが、
このままだと直リン対策が出来ず、どっちか一つを選ぶしかない状況になってます。
リファラ無しのリンクと自サイト以外のリファラリンク対策とダウンローダーを弾く、この両を有効にするにはどう記述するべきでしょうか
953 :
949 :2009/01/15(木) 21:47:52 ID:???
>>950 出来たと思ったんですけど
bbs/index.php
にアクセスしたらFeedBurnerのページに飛ばされてしまいます。
FeedのURLにアクセスした時だけFeedBurnerに飛ばしたいのですがどうすればよいでしょうか?
bbs/index.php?mode=rss
は掲示板のRSSFeedのアドレスです。
>>953 FeedのURLにアクセスした時だけFeedBurnerに
リダイレクトすれば良いだけなんじゃないの??
>>949 feedburnerのbotは除外しろよ?
FeedBurner自身が読めなくなるから。
だから、これはPHPなりCGIなりを使って実装すべき
957 :
Name_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>とか試したけど何も認証を求めてきません。 正しいやり方がありましたらご教授いただけませんでしょうか・・・
質問です。 example.com/aaa.cgiにアクセスしたときexample.com/aaa/と表示させたいのですが どうすればよいのでしょうか?
962です。間違えました。 example.com/aaa/bbb.htmlにアクセスしたときアドレスはそのままで example.com/aaa.cgiの内容を表示させるにはどうすればよいのでしょうか?
>>963 bbb.htmlにフレームを採用してaaa.cgiを埋め込むのでは駄目なのですか?
といいますか、いまいち質問の環境が理解できないのですが…
あなたが分かっている事って他人は全く知りませんから、
ディレクトリやhtmlファイルとcgiとのリンクの結びつき等、
どうなっているのか構成をもう少し示していただかないと、
答える人は憶測でしか答えられないと思いますよ?
966 :
Name_Not_Found :2009/01/27(火) 18:20:22 ID:jhxN+Rtc
そんくらいマニュアル嫁よ
>>966 テンプレくらい読みなさい
>>3 【例示用ドメインについて】
質問/回答時の例として使うドメインは、例示用として用意されている
example.com、example.net、example.org、example.jpなどを使いましょう。
これに好きなサブドメインをつけて説明するのは可。(例: hoge.example.com)
マニュアルを読んで全ての問題が解決するなら、サポートセンターなんて必要がない。 ゆえにこのスレも必要ない。 次回はスレは建てないように。
>>969 それは読んだやつが言えるセリフ
マニュアルをろくに読まずにいきなりサポートセンターに頼っちゃいかん
>>970 お前のようなやつが契約書の但し書きもまもとに読まずに後で暴れるんだろうな・・・
>>971 そしてお前のようなやつがサポートしてくれるんだなw
いつからここがサポートセンターになったんだよ。
>>966 の恥ずかしい質問を読んででから、持論を展開しろよ。
>>973 答えるなら早くしろ
でなければ帰れ!(色眼鏡をクイッと上げながら
>>973 それなら質問コーナーなんてスレタイ付けずに、雑談スレにしろよ。
馬鹿じゃねーの?
976 :
Name_Not_Found :2009/01/28(水) 20:13:42 ID:JbQ/Cvsl
htaccessのアクセス制御についてお伺いいたします。 特定のIPからのアクセスは無条件に許可 その特定のIPアドレス以外からのアクセスにはベーシック認証をかける という設定にしたいです。片方ずつはうまく動いたのですが、この二つを組み合わせるのに どのように記述すればよいか分からず困っています。 よろしくおねがいします。
>>976 マニュアルに全てかいてあるらしいので
マニュアルを読め。
それでもわからなければぐぐるか自分でしらべろ。
と。このスレの模範回答でレスしました。
>>976 >>977 は無視していいからね
どういう風に書いているのか、
もしよかったら.htaccessなり書いてある物を全て晒してもらえるかな?
そうすればどこが間違っているのかとか答えやすいと思うから
すみません、質問よろしいでしょうか。 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からのアクセスを弾く事はできています。 よろしくお願いいたします。
Refererが大文字になってるからダメなんじゃない?
982 :
980 :2009/02/04(水) 07:17:06 ID:???
>>981 レスありがとうございます。
REFERERをRefererやrefererに書き換えてみましたが、できませんでした。
他に何か要因はないでしょうか?
SetEnvIfディレクティブが使用できない鯖というオチではあるまいな
984 :
980 :2009/02/04(水) 08:00:10 ID:???
>>983 !!!
鯖には「.htaccess使用可」としか書いていないので問い合わせてみます!
985 :
980 :2009/02/04(水) 14:21:35 ID:???
すみません、ノートンのせいでしたorz ノートン切ったら980で書き込んだままの通りで弾けました。 お騒がせしました。 あの、スレ違いだったら無視で結構なんですが、他のノートンを使っている人が Webメールからアクセスしてきた場合に弾く方法はあるでしょうか? 図々しくて申し訳ありません。
>>985 ノートン先生がブラウザーがリファラーを吐くのを切ってますから、
どうにも対処がないと思います
987 :
980 :
2009/02/04(水) 18:15:29 ID:??? >>986 やっぱり無理ですか……。
このままで行きます。
ありがとうございました。そして何度も失礼しました。