2013-04-05 54 views
0

在PHP應用程序中,我允許用戶上傳照片。用戶上傳後,元數據存儲在數據庫中,然後圖像存儲在Linux服務器上的目錄中。我只希望通過視圖調用這些圖像時可以看到,這樣我就可以驗證正確的派對正在查看它們。我不希望任何人能夠輸入網址並查看圖像。圖像安全和linux文件/目錄權限

/site 
    /framework 
    /protected /**My PHP site**/ 
    /www 
     /images /**This is where I am currently storing the images**/ 
  1. 爲了限制這些圖片,我需要移動images目錄www外觀看?如果是的話在哪裏?
  2. images目錄上應該給出哪些linux權限?
  3. 對於我存儲在我的數據庫中的圖像,我想限制訪問我在我的框架內使用訪問規則。像這樣的規則是否也限制訪問給定目錄中的圖像?

任何關於如何解決這個問題(所以我可以做進一步的研究)以及上述問題的答案都可以提供幫助。

回答

1

對於該目錄中的所有圖像被拒絕(它們都必須通過腳本訪問,它們都不能直接訪問 - 即只有你的服務器才能訪問它們,並且你有apache和mod_rewrite)你可以把一個.htaccess該目錄如下所示:

deny from all 

所以通過數字回答的問題.. ^^

  1. 沒有,.htaccess會照顧它具有相同的效果。
  2. 您需要閱讀(+r)以獲取服務器的圖像。
  3. 該框架可能有類似的東西,但它不能阻止直接鏈接,如果圖像的URL已知。這樣做與.htaccess或移動目錄將是最好的選擇。
+1

給與少一個的點。來自你和昆汀的信息幫助我找到了解決方案。總之,我能夠移動我的圖像文件夾並保護它,通過我的php腳本來渲染圖像。到目前爲止,它看起來似乎按需要工作。 – enfield 2013-04-05 11:44:12

1

爲了限制查看這些圖像,我需要移動www以外的圖像目錄嗎?

不,但那是最安全的選擇。

如果是這樣到哪裏?

任何地方

應在images目錄給予什麼Linux權限?

服務器讀取和寫入所需的最小數量。可能700.

對於我存儲在我的數據庫,我想限制訪問的圖像我使用我的框架內的訪問規則。像這樣的規則是否也限制訪問給定目錄中的圖像?

由於圖片只能通過PHP獲得,PHP可以添加您喜歡的任何auth/authz。

0

您可以簡單地使用.htaccess文件並限制人們進入該目錄,以及關閉目錄列表以防萬一。