2016-05-12 8 views
0

私は現在、ウェブブラウザを介してphp.iniの開口部や他のファイルを防ぐためなど.htaccessファイルを変更することができるよ:すべてのサブディレクトリからのphp.iniの表示を制限する方法は?

# Prevent .ini and other files from being open from web browser 
<filesMatch "\.(htaccess|htpasswd|ini|log|sh)$"> 
Order Allow,Deny 
Deny from all 
</filesMatch> 

しかし、これは私がこれを置くルートディレクトリ、のために働くようだ.htaccess私がwww.mysite.com/sub/php.iniに移動すると、それはまだそのファイルを開くことができます。

どのようにすべてのサブディレクトリのすべてのそのようなファイルのフィルタを作成するか考えていますか?

答えて

1

これをApacheの設定httpd.confに追加することも、.htaccess自身に追加することもできます。

<Files "*.ini"> 
    Require all denied 
</Files> 

それとも、これは同様に動作します:

<Files "*.ini"> 
    Order Allow,Deny 
    Deny from all 
</Files> 

あなたは、現時点ではそれをあなたが持っているフォーマットを維持したい場合は、あなたがこれを行うことができます:

<filesMatch ".*\.(htaccess|htpasswd|ini|log|sh)$"> 
    Order Allow,Deny 
    Deny from all 
</filesMatch> 
+0

そして、私がしたい場合に他のファイルも同様にして、フィルタを '* .ini | * .log | * .sh'などのように設定しますか? – c00000fd

+0

@ c00000fd私はあなたが始めた場所から3番目のオプションを追加するように答えを更新しました。 –

+0

ああ、クール。ありがとう!正規表現とまったく同じですよね? – c00000fd

関連する問題