Linux

Apache2 允許訪問特定位置(.htaccess 文件)

  • January 21, 2018

有人可以幫助我製作 .htaccess 文件,或者我如何限制對特定位置的訪問。

我所有使用者可訪問的文件都位於其中,/var/www/website但是我還有一些類似的文件夾/var/www/website/secrets, var/www/website/tools,我希望它們無法從 Web 瀏覽器訪問。

我的主要問題是我有 cronjobs 執行 php 腳本var/www/website/tools,我也不想拒絕它們訪問。

要阻止對這些目錄的所有 Web 訪問,只需在每個目錄中刪除一個 .htaccess 文件,其中包含以下行:

  • 阿帕奇 2.4.x:
Require all denied
  • 阿帕奇 2.2.x:
Order deny,allow
Deny from all

當然,這一切都假定您已AllowOverride配置為可以使用 .htaccess 文件。如果沒有,那麼您可以將這些行放在全域配置中的 virtualhost 條目中,如下所示:

<Directory "/var/www/website/secrets">
   ...whichever entry from above here....
</Directory>

此外,只要您的 crons 直接呼叫腳本(使用 PHP 二進製文件)並且沒有做 curl 或 wget 等愚蠢的事情,那麼這些 .htaccess 條目對它們沒有影響,因為它只會影響 web-基於流量(來自 Apache 的事物)。

我還建議閱讀有關此主題的 Apache 文件 - 它確實提供了很多資訊和幫助:

引用自:https://serverfault.com/questions/893320