[英]Deny access to directory files via browser with htaccess
我想拒絕(從所有未登錄的用戶)訪問瀏覽器中目錄中的所有文件。
只有登錄的用戶可以訪問該文件夾中的文件。 文件路徑以登錄的用戶ID存儲在數據庫中,因此當用戶登錄時,他只能查看或下載他的文件。
所以我不希望其他人(沒有登錄)從瀏覽器訪問文件夾和文件,其次,我希望用戶只能查看文件夾中的文件。
我想,第二件事我可以用PHP中的一些條件檢查,但對於第一個,誰能告訴我htaccess規則實現?
謝謝
對於.htaccess用戶訪問的部分,您可以在這里查看 .htaccess密碼生成器
不要向他們展示存儲文件的實際文件夾路徑。
使用php文件獲取可下載內容。
例如: - download.php?file = mydocument.doc
缺點:
您可以使用.htaccess禁用默認目錄瀏覽。
打開您的.htacces文件
尋找選項索引
如果存在選項索引,請將其修改為選項 - 索引,或者將選項 - 索引添加為新行
現在應該禁用目錄瀏覽功能
有一篇文章,全面描述了Apache Web服務器的訪問控制功能: http : //httpd.apache.org/docs/2.0/howto/auth.html
最簡單的變體如下所示:
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /usr/local/apache/passwd/passwords
順便說一下,這部分:
只有登錄的用戶可以訪問該文件夾中的文件。 文件路徑以登錄的用戶ID存儲在數據庫中,因此當用戶登錄時,他只能查看或下載他的文件。
將需要為每個文件夾創建單獨的密碼文件,或者需要一些其他腳本。
這種方法存在一些已知問題:
基本身份驗證方案將密碼以明文形式發送,如果您的站點可以通過HTTP(而非HTTPS)訪問,則該方法不好。 還有Digest身份驗證類型,但瀏覽器支持存在一些問題
注銷操作將需要關閉瀏覽器
一般來說,我建議:
Apache內置功能-用於簡單的訪問控制,而無需詳細的用戶特權/權限配置
通過一些Web編程工具進行自定義訪問控制 - 用於具有所謂的priveleges /權限配置的身份驗證方案。 有許多Web開發框架,它們提供訪問控制功能。
感謝您的答復,我之間發現了一個工作正常的代碼段。 我在.htaccess文件中插入了以下行:
命令拒絕,允許
所有人都否認
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.