Permissions

如何避免apache允許下載某些文件?

  • August 22, 2018

如何避免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 仍然讓我下載文件

您的文件匹配子句似乎不正確。

<Files ~ "^\.py">

將匹配名稱以字元開頭.py的文件。你會想要

<Files ~ "\.py$">

反而。

但是您的FilesMatch正則表達式看起來是正確的。所以也許問題出在其他地方。也許您的 Apache 只使用新式訪問控制指令?

嘗試更換舊式

Order deny,allow
deny from all

與新式等效:

Require all denied

引用自:https://unix.stackexchange.com/questions/461330