我們一直強調,設置服務器上的文件權限是很重要的,能夠保護我們的站點。如一些目錄/uploads/, /upgrade/, 和 /backups/就需要設置可寫權限,但是這會帶來安全隱患。
現在矛盾出來了,一方面需要嚴格的限制權限,另一方面權限一旦嚴格,又會現在很多功能。例如媒體上傳功能可能會停止工作。
怎麼辦?
現在通過一些辦法可以魚和熊掌兼得,即可控制權限又可不限制功能。
這就是使用.htaccess 文件。
在我的實踐中,/uploads/ 可謂重中之重。不幸的是有的服務器需要 777 的權限才能讓這個媒體功能正常工作。那麼我們的問題就是在這個 777 的權限下加強安全,為此我們需要安裝下面的步驟做:
首先創建一個.htaccess 文件,並把這個文件上傳到/uploads/目錄下,把下面的代碼放到.htaccess 文件內:
# secure uploads directory <Files ~ ".*..*"> Order Allow,Deny Deny from all </Files> <FilesMatch ".(jpg|jpeg|jpe|gif|png|tif|tiff)$"> Order Deny,Allow Allow from all </FilesMatch>
開始我們否定了所有文件的訪問,然後指定了一些文件類型。如 (jpg|jpeg|jpe|gif|png|tif|tiff|zip|mp3|mov) 等,那些是文件擴展名。