Apacheが特定のファイルをダウンロードするのを防ぐ方法は? (例:.pyと.sh)
このようなファイルを提供してダウンロードするのを避けたいです。
www.site.com/file.sh
www.site.com/file.py
しかし、私はこれをしようとします。
<Files ~ "^\.sh">
Order deny,allow
deny from all
</Files>
<Files ~ "^\.py">
Order deny,allow
deny from all
</Files>
この
<FilesMatch "\.(sh|py)$">
Order deny,allow
deny from all
</FilesMatch>
何も動作しないようです。ファイルを入れてみました。
/etc/apache2/apache2.conf
返品
/etc/apache2/sites-available/default
何も動作しません。Apacheではまだファイルをダウンロードできます。。
答え1
ファイル一致の用語が間違っているようです。
<Files ~ "^\.py">
名前は次のファイルと一致します。スタート文字通り.py
。あなたが欲しい
<Files ~ "\.py$">
代わりに。
しかし、FilesMatch
正規表現が正しいようです。その場合、問題は他の場所にある可能性があります。おそらく、Apacheは新しいスタイルのアクセス制御ディレクティブだけを使用していますか?
古いものを交換してみてください
Order deny,allow
deny from all
新しいスタイルと同じ:
Require all denied