• ベストアンサー

.htaccessへの複数設定方法を教えてください。

.htaccessを使って同一ディレクトリ内に複数の指定を行うにはどうしたらよいでしょうか? 例えば、「アクセス認証」と「アクセス制限」の2つを指定したい場合などです。 単独での書き方はそれぞれ調べて分かったのですが、1つにまとめての記述方法が分かりません。 ご存知の方いらっしゃいましたら、宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • oyaoya65
  • ベストアンサー率48% (846/1728)
回答No.3

#2です。 ></Limit> ErrorDocument 403 error/403.html これは2行に分けた方がいいかと思います。 </Limit> ErrorDocument 403 error/403.html >ErrorDocument 403 error/403.html このタイプの表現は 「error/403.html」などは[/]で始まるサーバの絶対パスである必要があります。 他は問題ないと思います。 なお、 私が運用して来た何種類かのWWWサーバソフトでは、サーバ自体にコンフィグ設定がありましたので、「.htaccess」の中に</limit>の下からの 「ErrorDocument 403 /home/.../error/403.html」 のようなエラー表示の制御文を書かなくても同様の機能は実現できていました(います)ので書いたことはありません。

yuyukina
質問者

お礼

大変参考になりました! ありがとう御座いました。

その他の回答 (2)

  • oyaoya65
  • ベストアンサー率48% (846/1728)
回答No.2

「アクセス認証」と「アクセス制限」する場合 「アクセス認証」グループ 「アクセス制限」グループ だけではすべてが尽くせず未定義グループが出来て 不完全になります。 →「アクセス認証」されず、かつ「アクセス制限」されない その他多くのグループが未記述となります。 世界中のIPアドセスの記述は不可能ですので ●認証を優先する書き方→すべて認証(許可)し、制限サイトのみ記述して制限する order allow,deny allow from all deny from 1??.2??.3?.4? ... deny from 1??.3?.4?.5? または、 ■制限を優先する書き方→すべて制限し、認証(許可)サイトのみ記述して認証(許可する) order deny,allow deny from all allow from 1??.2??.3?.4? ... allow from 1??.3?.4?.5? ●は悪さをしたことのないサイトは認証する性善説的なアクセス制限です。初めての訪問者は許可(認証)することになります。悪さをした場合に制限サイトの設定をするわけです。 ■は許可(認証)サイト以外のその他多くのサイトはすべてアクセス制限せる用心深い性悪説に立ったアクセス制限です。初めての訪問者は制限することになります。 接続できない。接続させて欲しいと要望があった場合にだけ認証登録するわけですね。会員サイトHPの場合のような場合は該当しますね。 なお、IPアドレスのところは以下のような書き方があります。(?はここでは特定のIPは書いていけない決まりですので数字に置き換えてください。点で区切られた個々の数字は0~254が入ります。) 1??.2??.3?.4? 1つのIPアドレスの指定 1??.2??.3?. 1??.2??.3?.0~1??.2??.3?.255を指定 1??.2??.   1??.2??.0.0~1??.2??.255.255を指定 1??. 1??.0.0.0~1??.255.255.255を指定 あるサイトのネットワーク全体などの場合は2行目以降のアドレス指定方式が便利です。 詳しくは下の参考URLをご覧ください。

参考URL:
http://www.shtml.jp/htaccess/host.html
yuyukina
質問者

お礼

丁寧なアドバイスありがとう御座います。 やはり私の書き方が悪いらしく、正しく伝わらないのだと思います。また、「アクセス認証」と「アクセス制限」という例も悪かったと思います。 「エラーページの設定」と「アクセス認証を」1つのファイルに書く場合ですが、以下の様な設定が必要かと思います。 AuthUserFile /○○○/.htpasswd AuthGroupFile /dev/null AuthName LOG AuthType Basic <Limit GET POST> require valid-user </Limit> 【ここに改行が必要だよ!とか・・・】 ErrorDocument 403 error/403.html ErrorDocument 404 error/404.html ErrorDocument 500 error/500.html これらを1つのファイルに書く場合、決まりのようなものがありますでしょうか?? 例えば必ず改行をあけるですとか・・・? AuthUserFile /○○○/.htpasswd AuthGroupFile /dev/null AuthName LOG AuthType Basic <Limit GET POST> require valid-user </Limit> ErrorDocument 403 error/403.html ErrorDocument 404 error/404.html ErrorDocument 500 error/500.html ちなみに↑こんな書き方は駄目ですよね?? 本当に初歩的な質問で申し訳ないのですが、宜しくお願いいたします。

  • robotack
  • ベストアンサー率14% (1/7)
回答No.1

「ミケネコの htaccess リファレンス」にある「IP/ホスト制限関連」を参考にされてみてはいかがでしょうか。

参考URL:
http://mikeneko.creator.club.ne.jp/~lab/
yuyukina
質問者

お礼

ありがとう御座います。 一読するのですが、よく分かりません・・・。 私の説明が悪いかもしれません。1つのファイルに全く違う設定を複数書くにはどうしたらよいのでしょうか? 宜しくお願いします。