我想限制對Apache文件的訪問。 受限制文件的列表應該是可變的。 如果文件訪問被限制並且沒有找到特定的cookie,那麼用戶 應該被重定向到一個網站(有可能獲得cookie) - 如果找到了,文件將被「加載」。用mod_rewrite進行文件訪問控制
我想用mod_rewrite來解決這個問題。
我的想法是,我將所有請求重定向到一個handler.php腳本。
這個「handler.php」尋找請求並決定訪問是否被允許。直到這裏沒問題。
現在的問題是,如果允許訪問 - 文件必須加載。因此,我不知道啞劇,文件大小等
病程中,我可以寫類似
if ($ext == '.jpg') header('Content-Type: ...');
但我不希望使用此解決方案,因爲我要處理所有可能的文件( PNG,GIF,EXE,MP3,ZIP,ETC)。問題是我無法知道所有的MIME類型。
如果我可以調用Apache(在子請求中)加載文件(這次沒有handler.php),那將是非常棒的。
在我的情況下,我不想像mod_auth那樣嚴格保護資源,因爲我只想爲成熟的內容(包含血液並且不適合兒童使用的繪製圖稿)添加免責聲明。如果找不到cookie,我想顯示免責聲明,如果cookie在那裏,我可以顯示圖片。
感謝您的提示。你的意思是簡單的「.htpasswd」技術?當然,這是非常安全的。但在我的情況下,我不想嚴格保護資源,因爲我只想給成熟的內容添加免責聲明(包含血液並且對兒童不利的繪畫作品)。如果找不到cookie,我想顯示免責聲明,如果cookie在那裏,我可以顯示圖片。 – 2010-11-19 17:38:42
@丹尼爾查看修改後的帖子 – BBonifield 2010-11-19 19:28:54
Hello BBonifield。感謝您的解決方案。我用一個.htaccess和一個顯示免責聲明的example.php腳本來試用它,設置cookie並重新加載頁面。這一次真實文件被加載。 – 2010-11-19 21:27:29