- ベストアンサー
アクセス制限(.htaccess)について
- 自宅LAN内でWEBサーバ、MySQLサーバを立ち上げていますが、.htaccessでのアクセス制限が効いていない問題が発生しています。
- 現在の設定では、ドキュメントルートと1つ下の層に.htaccessファイルを配置し、Order deny,allow、Deny from All、Allow from localhost 127.0.0.1の設定を行っていますが、他のマシンからのアクセスができてしまいます。
- アクセス制限をするためには他に設定が必要なのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
おそらく、httpd.conf に .htaccess を有効にする 記述が無いためかと思われます。 下記の記述が必要です。 <Directory /usr/local/xxxx> AllowOverride All </Directory> その他、詳細設定は、下記のように行います。 <Location /> Options +IncludesNoExec -ExecCGI </Location
その他の回答 (1)
- tekuteku123
- ベストアンサー率21% (5/23)
Order deny,allow Deny from All Allow from localhost としたらどうでしょうか? >httpd.conf内の ><Directory /> ~ </Directory> と ><Directory /usr/local/xxxx> ~ </Directory> はな>んの違いがるのでしょうか? 各ディレクトリ毎に設定を行う場合、上記のように書きます。 詳細は、参考URLをご覧ください。
お礼
自己解決しました。 localhost,127.0.0.1によるアクセスができない現象は、 知らぬ間に出なくなっていました。 憶測ですが、ブラウザでアクセスの確認をしていて キャッシュが残っていたのかもしれません。 いったんブラウザを終了して確認していなかったのかもです。 また、 <Directory /> ~ </Directory> については、 「全ディレクトリ共通の設定(デフォルト設定)として用いられる特別な記法」 ということでした。 ありがとうございました。
補足
再度、回答ありがとうございます。 申し訳ありません、(No.1の補足で記入漏れしていて)tekuteku123さんの 指摘されたとおりにしていたのですが、やはりサーバIPアドレスはOKで localhost(および127.0.0.1)はアクセス制限されてしまいました。 >Order deny,allow >Deny from All >Allow from localhost どこか設定するところがあるのでしょうかね~? いろいろサイトや設定ファイルも見たりしてはいるのですが・・・(+_+) <Directory /usr/local/xxxx> ~ </Directory> は「/usr/local/xxxx」以下に対してですよね。 <Directory /> ~ </Directory> となると、「/」がどこになるのでしょうか? 幾度も申し訳ありません、よろしくお願いいたしますm(_ _)m
補足
回答ありがとうございます。 修正してみたところうまくいきました。 ただ、.htaccessで Order deny,allow Allow from localhost 127.0.0.1 を指定しているにもかかわらずサーバ自身からではアクセス制限されてしまいました。 Allow from サーバのIPアドレス を追加指定するとアクセスは可能でした。 これについてもどこかの設定ファイルを修正する必要があるのでしょうか? ついでといってはなんですが、 httpd.conf内の <Directory /> ~ </Directory> と <Directory /usr/local/xxxx> ~ </Directory> はなんの違いがるのでしょうか? Apacheサイト等を見てもよくわかりませんでした。 再度の質問、よろしくお願いいたします。