2013-12-16 208 views
1

我正在創建一個php網站,我想保護我的css文件。因此,如果任何用戶試圖直接在瀏覽器中打開它,他將無法看到此代碼。我已經創建.htaccess文件,並寫道文件夾權限.htaccess

# no one gets in here! 
deny from all 

ErrorDocument 403 "You dont have sufficient priviliges to view this page. 

但現在我的CSS並不是在任何頁面都呈現。我如何實現這個功能?

+0

爲什麼你要這麼做? –

+0

我想保護我的css代碼,沒有人能看到我的css代碼 – user3106347

+0

你想保護的CSS中有什麼?我們有遊戲機.. –

回答

3

通過.htaccess保護文件,將阻止他們通過瀏覽器打開。因此,當瀏覽器嘗試加載此文件來渲染CSS時,它將無法訪問它。

不知何故很明顯 - 不是嗎?

另外 - CSS,HTML,JavaScript文件不能被保護,在瀏覽器中打開,因爲爲了達到其目的的應該是從瀏覽器訪問...

2

不是100%萬無一失,但你可以做這通過HTTP_REFERER檢查。

把這個代碼在你DOCUMENT_ROOT/.htaccess文件:

RewriteEngine On 

RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com/ [NC] 
RewriteRule \.(css|js|jpe?g|gif|bmp|png)$ - [F,NC] 

替換yourdomain\.com用您的實際域名。

現在你自己的頁面將能夠訪問CSS,JS,圖像文件,但這些外部的文件不能被訪問

+0

這是絕不能保護......但對於不知道網絡瀏覽器如何工作的人來說,它會起作用。仍然那些知道如何打開瀏覽器中的CSS將能夠訪問它... – AlexKey

+0

@AlexKey你的意思是使用Firebug/Inspect元素? – Hussain

+0

你可以看到我是如何開始我的答案'不是100%萬無一失'。但它仍然會阻止大多數不知道如何破解HTTP_REFERER頭的用戶。 – anubhava