.httacces文件的密碼保護(hù)和防止盜鏈的實(shí)現(xiàn)方法
更新時(shí)間:2008年06月18日 19:19:53 作者:
盡管有各種各樣的.htaccess用法,但至今最流行的也可能是最有用的做法是將其用于網(wǎng)站目錄可靠的密碼保護(hù)。
1.密碼保護(hù)的.htaccess文件
盡管有各種各樣的.htaccess用法,但至今最流行的也可能是最有用的做法是將其用于網(wǎng)站目錄可靠的密碼保護(hù)。盡管JavaScrip等也能做到,但只有.htaccess具有完美的安全性(即訪問者必須知曉密碼才可以訪問目錄,并且絕無(wú)“后門”可走)。
利用.htaccess將一個(gè)目錄加上密碼保護(hù)分兩個(gè)步驟。第一步是在你的.htaccess文檔里加上適當(dāng)?shù)膸仔写a,再將.htaccess文檔放進(jìn)你要保護(hù)的目錄下:
AuthName “Section Name”
AuthType Basic
AuthUserFile /full/path/to/.htpasswd
Require valid-user
你可能需要根據(jù)你的網(wǎng)站情況修改一下上述內(nèi)容中的一些部分,如用被保護(hù)部分的名字”Members Area”,替換掉“Section Name”。
/full/parth/to/.htpasswd則應(yīng)該替換為指向.htpasswd文件(后面詳述該文檔)的完整服務(wù)器路徑。如果你不知道你網(wǎng)站空間的完整路徑,請(qǐng)?jiān)儐栆幌履愕南到y(tǒng)管理員。
2.密碼保護(hù)的.htpasswd文件
目錄的密碼保護(hù)比.htaccess的其他功能要麻煩些,因?yàn)槟惚仨毻瑫r(shí)創(chuàng)建一個(gè)包含用戶名和密碼的文檔,用于訪問你的網(wǎng)站,相關(guān)信息(默認(rèn))位于一個(gè)名為.htpasswd的文檔里。像.htaccess一樣,.htpasswd也是一個(gè)沒有文件名且具有8位擴(kuò)展名的文檔,可以放置在你網(wǎng)站里的任何地方(此時(shí)密碼應(yīng)加密),但建議你將其保存在網(wǎng)站W(wǎng)eb根目錄外,這樣通過網(wǎng)絡(luò)就無(wú)法訪問到它了。1516501417
在使用.htaccess來(lái)設(shè)置目錄的密碼保護(hù)時(shí),它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護(hù)起來(lái),不讓別人看到其中的內(nèi)容。雖然可以用其他方式做到這點(diǎn),比如文檔的權(quán)限。不過,.htaccess本身也能做到,只需加入如下的指令:1516501417
order allow,deny
deny from all
3.配置 .htaccess 輸入用戶名和密碼
要利用.htaccess對(duì)某個(gè)目錄下的文檔設(shè)定訪問用戶和對(duì)應(yīng)的密碼,首先要做的是生成一個(gè).htpasswd的文本文檔,例如:
forge:y4E7Ec8e7EwV
這里密碼經(jīng)過加密,用戶可以自己找些工具將密碼加密成.htaccess支持的編碼。該文檔最好不要放在www目錄下,建議放在www根目錄文檔之外,這樣更為安全些。
有了授權(quán)用戶文檔,可以在.htaccess中加入如下指令了:
AuthUserFile .htpasswd的服務(wù)器目錄
AuthGroupFile /dev/null (需要授權(quán)訪問的目錄)
AuthName EnterPassword
AuthType Basic (授權(quán)類型)
require user wsabstract (允許訪問的用戶,如果希望表中所有用戶都允許,可以使用 require valid-user)
注,括號(hào)部分為學(xué)習(xí)時(shí)候自己添加的注釋
拒絕來(lái)自某個(gè)IP的訪問
如果我不想某個(gè)政府部門訪問到我的站點(diǎn)的內(nèi)容,那可以通過.htaccess中加入該部門的IP而將它們拒絕在外。
例如:
order allow,deny
deny from 210.10.56.32
deny from 219.5.45.
allow from all
第二行拒絕某個(gè)IP,第三行拒絕某個(gè)IP段,也就是219.5.45.0~219.2.45.255
想要拒絕所有人?用deny from all好了。不止用IP,也可以用域名來(lái)設(shè)定。
創(chuàng)建好.htpasswd文檔后(可以通過文字編輯器創(chuàng)建),下一步是輸入用于訪問網(wǎng)站的用戶名和密碼,應(yīng)為:
username:password
“password”的位置應(yīng)該是加密過的密碼。你可以通過幾種方法來(lái)得到加密過的密碼:一是使用一個(gè)網(wǎng)上提供的permade腳本或自己寫一個(gè);另一個(gè)很不錯(cuò)的username/password加密服務(wù)是通過KxS網(wǎng)站,這里允許你輸入用戶名及密碼,然后生成正確格式的密碼。
對(duì)于多用戶,你只需要在.htpasswd文檔中新增同樣格式的一行即可。另外還有一些免費(fèi)的腳本程序可以方便地管理.htpasswd文檔,可以自動(dòng)新增/移除用戶等。
4.配置.htaccess 直接訪問加密網(wǎng)站
當(dāng)你試圖訪問被.htaccess密碼保護(hù)的目錄時(shí),你的瀏覽器會(huì)彈出標(biāo)準(zhǔn)的username/password對(duì)話窗口。如果你不喜歡這種方式,有些腳本程序可以允許你在頁(yè)面內(nèi)嵌入username/password輸入框來(lái)進(jìn)行認(rèn)證,你也可以在瀏覽器的URL框內(nèi)以以下方式輸入用戶名和密碼(未加密的):
http://username:password@www.w3sky.com/directory/
5.利用 .htaccess 防止盜鏈
如果不喜歡別人在他們的網(wǎng)頁(yè)上連接自己的圖片、文檔的話,也可以通過htaccess的指令來(lái)做到。
所需要的指令如下:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ - [F]
如果覺得讓別人的頁(yè)面開個(gè)天窗不好看,那可以用一張圖片來(lái)代替:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/替代圖片文件名 [R,L]
盡管有各種各樣的.htaccess用法,但至今最流行的也可能是最有用的做法是將其用于網(wǎng)站目錄可靠的密碼保護(hù)。盡管JavaScrip等也能做到,但只有.htaccess具有完美的安全性(即訪問者必須知曉密碼才可以訪問目錄,并且絕無(wú)“后門”可走)。
利用.htaccess將一個(gè)目錄加上密碼保護(hù)分兩個(gè)步驟。第一步是在你的.htaccess文檔里加上適當(dāng)?shù)膸仔写a,再將.htaccess文檔放進(jìn)你要保護(hù)的目錄下:
AuthName “Section Name”
AuthType Basic
AuthUserFile /full/path/to/.htpasswd
Require valid-user
你可能需要根據(jù)你的網(wǎng)站情況修改一下上述內(nèi)容中的一些部分,如用被保護(hù)部分的名字”Members Area”,替換掉“Section Name”。
/full/parth/to/.htpasswd則應(yīng)該替換為指向.htpasswd文件(后面詳述該文檔)的完整服務(wù)器路徑。如果你不知道你網(wǎng)站空間的完整路徑,請(qǐng)?jiān)儐栆幌履愕南到y(tǒng)管理員。
2.密碼保護(hù)的.htpasswd文件
目錄的密碼保護(hù)比.htaccess的其他功能要麻煩些,因?yàn)槟惚仨毻瑫r(shí)創(chuàng)建一個(gè)包含用戶名和密碼的文檔,用于訪問你的網(wǎng)站,相關(guān)信息(默認(rèn))位于一個(gè)名為.htpasswd的文檔里。像.htaccess一樣,.htpasswd也是一個(gè)沒有文件名且具有8位擴(kuò)展名的文檔,可以放置在你網(wǎng)站里的任何地方(此時(shí)密碼應(yīng)加密),但建議你將其保存在網(wǎng)站W(wǎng)eb根目錄外,這樣通過網(wǎng)絡(luò)就無(wú)法訪問到它了。1516501417
在使用.htaccess來(lái)設(shè)置目錄的密碼保護(hù)時(shí),它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護(hù)起來(lái),不讓別人看到其中的內(nèi)容。雖然可以用其他方式做到這點(diǎn),比如文檔的權(quán)限。不過,.htaccess本身也能做到,只需加入如下的指令:1516501417
order allow,deny
deny from all
3.配置 .htaccess 輸入用戶名和密碼
要利用.htaccess對(duì)某個(gè)目錄下的文檔設(shè)定訪問用戶和對(duì)應(yīng)的密碼,首先要做的是生成一個(gè).htpasswd的文本文檔,例如:
forge:y4E7Ec8e7EwV
這里密碼經(jīng)過加密,用戶可以自己找些工具將密碼加密成.htaccess支持的編碼。該文檔最好不要放在www目錄下,建議放在www根目錄文檔之外,這樣更為安全些。
有了授權(quán)用戶文檔,可以在.htaccess中加入如下指令了:
AuthUserFile .htpasswd的服務(wù)器目錄
AuthGroupFile /dev/null (需要授權(quán)訪問的目錄)
AuthName EnterPassword
AuthType Basic (授權(quán)類型)
require user wsabstract (允許訪問的用戶,如果希望表中所有用戶都允許,可以使用 require valid-user)
注,括號(hào)部分為學(xué)習(xí)時(shí)候自己添加的注釋
拒絕來(lái)自某個(gè)IP的訪問
如果我不想某個(gè)政府部門訪問到我的站點(diǎn)的內(nèi)容,那可以通過.htaccess中加入該部門的IP而將它們拒絕在外。
例如:
order allow,deny
deny from 210.10.56.32
deny from 219.5.45.
allow from all
第二行拒絕某個(gè)IP,第三行拒絕某個(gè)IP段,也就是219.5.45.0~219.2.45.255
想要拒絕所有人?用deny from all好了。不止用IP,也可以用域名來(lái)設(shè)定。
創(chuàng)建好.htpasswd文檔后(可以通過文字編輯器創(chuàng)建),下一步是輸入用于訪問網(wǎng)站的用戶名和密碼,應(yīng)為:
username:password
“password”的位置應(yīng)該是加密過的密碼。你可以通過幾種方法來(lái)得到加密過的密碼:一是使用一個(gè)網(wǎng)上提供的permade腳本或自己寫一個(gè);另一個(gè)很不錯(cuò)的username/password加密服務(wù)是通過KxS網(wǎng)站,這里允許你輸入用戶名及密碼,然后生成正確格式的密碼。
對(duì)于多用戶,你只需要在.htpasswd文檔中新增同樣格式的一行即可。另外還有一些免費(fèi)的腳本程序可以方便地管理.htpasswd文檔,可以自動(dòng)新增/移除用戶等。
4.配置.htaccess 直接訪問加密網(wǎng)站
當(dāng)你試圖訪問被.htaccess密碼保護(hù)的目錄時(shí),你的瀏覽器會(huì)彈出標(biāo)準(zhǔn)的username/password對(duì)話窗口。如果你不喜歡這種方式,有些腳本程序可以允許你在頁(yè)面內(nèi)嵌入username/password輸入框來(lái)進(jìn)行認(rèn)證,你也可以在瀏覽器的URL框內(nèi)以以下方式輸入用戶名和密碼(未加密的):
http://username:password@www.w3sky.com/directory/
5.利用 .htaccess 防止盜鏈
如果不喜歡別人在他們的網(wǎng)頁(yè)上連接自己的圖片、文檔的話,也可以通過htaccess的指令來(lái)做到。
所需要的指令如下:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ - [F]
如果覺得讓別人的頁(yè)面開個(gè)天窗不好看,那可以用一張圖片來(lái)代替:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/替代圖片文件名 [R,L]
相關(guān)文章
centos7系統(tǒng)下搭建docker本地鏡像倉(cāng)庫(kù)的方法
本篇文章主要介紹了CentOS 7 : Docker私有倉(cāng)庫(kù)搭建和使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-02-02寶塔Linux面板之好用免費(fèi)的中文Linux VPS主機(jī)控制面板適合快速建站
本篇文章主要介紹了寶塔Linux面板之好用免費(fèi)的中文Linux VPS主機(jī)控制面板適合快速建站,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07Linux應(yīng)用程序使用寫文件調(diào)試程序的方法
今天小編就為大家分享一篇關(guān)于Linux應(yīng)用程序使用寫文件調(diào)試程序的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-12-12關(guān)于linux下core dump【總結(jié)】
下面小編就為大家?guī)?lái)一篇關(guān)于linux下core dump【總結(jié)】。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2017-01-01詳解Linux 服務(wù)管理兩種方式service和systemctl
systemd是Linux系統(tǒng)最新的初始化系統(tǒng)(init),作用是提高系統(tǒng)的啟動(dòng)速度,盡可能啟動(dòng)較少的進(jìn)程,盡可能更多進(jìn)程并發(fā)啟動(dòng)。這篇文章主要介紹了Linux 服務(wù)管理兩種方式service和systemctl,需要的朋友可以參考下2019-09-09詳解在Ubuntu上的Apache配置SSL(https證書)的正確姿勢(shì)
這篇文章主要介紹了詳解在Ubuntu上的Apache配置SSL(https證書)的正確姿勢(shì),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧2018-12-12