1.密碼保護的.htaccess文件
盡管有各種各樣的.htaccess用法,但至今最流行的也可能是最有用的做法是將其用于網站目錄可靠的密碼保護。盡管JavaScrip等也能做到,但只有.htaccess具有完美的安全性(即訪問者必須知曉密碼才可以訪問目錄,并且絕無“后門”可走)。
利用.htaccess將一個目錄加上密碼保護分兩個步驟。第一步是在你的.htaccess文檔里加上適當的幾行代碼,再將.htaccess文檔放進你要保護的目錄下:
AuthName “Section Name”
AuthType Basic
AuthUserFile /full/path/to/.htpasswd
Require valid-user
你可能需要根據你的網站情況修改一下上述內容中的一些部分,如用被保護部分的名字”Members Area”,替換掉“Section Name”。
/full/parth/to/.htpasswd則應該替換為指向.htpasswd文件(后面詳述該文檔)的完整服務器路徑。如果你不知道你網站空間的完整路徑,請詢問一下你的系統管理員。
2.密碼保護的.htpasswd文件
目錄的密碼保護比.htaccess的其他功能要麻煩些,因為你必須同時創建一個包含用戶名和密碼的文檔,用于訪問你的網站,相關信息(默認)位于一個名為.htpasswd的文檔里。像.htaccess一樣,.htpasswd也是一個沒有文件名且具有8位擴展名的文檔,可以放置在你網站里的任何地方(此時密碼應加密),但建議你將其保存在網站Web根目錄外,這樣通過網絡就無法訪問到它了。1516501417
在使用.htaccess來設置目錄的密碼保護時,它包含了密碼文件的路徑。從安全考慮,有必要把.htaccess也保護起來,不讓別人看到其中的內容。雖然可以用其他方式做到這點,比如文檔的權限。不過,.htaccess本身也能做到,只需加入如下的指令:1516501417
order allow,deny
deny from all
3.配置 .htaccess 輸入用戶名和密碼
要利用.htaccess對某個目錄下的文檔設定訪問用戶和對應的密碼,首先要做的是生成一個.htpasswd的文本文檔,例如:
forge:y4E7Ec8e7EwV
這里密碼經過加密,用戶可以自己找些工具將密碼加密成.htaccess支持的編碼。該文檔最好不要放在www目錄下,建議放在www根目錄文檔之外,這樣更為安全些。
有了授權用戶文檔,可以在.htaccess中加入如下指令了:
AuthUserFile .htpasswd的服務器目錄
AuthGroupFile /dev/null (需要授權訪問的目錄)
AuthName EnterPassword
AuthType Basic (授權類型)
require user wsabstract (允許訪問的用戶,如果希望表中所有用戶都允許,可以使用 require valid-user)
注,括號部分為學習時候自己添加的注釋
拒絕來自某個IP的訪問
如果我不想某個政府部門訪問到我的站點的內容,那可以通過.htaccess中加入該部門的IP而將它們拒絕在外。
例如:
order allow,deny
deny from 210.10.56.32
deny from 219.5.45.
allow from all
第二行拒絕某個IP,第三行拒絕某個IP段,也就是219.5.45.0~219.2.45.255
想要拒絕所有人?用deny from all好了。不止用IP,也可以用域名來設定。
創建好.htpasswd文檔后(可以通過文字編輯器創建),下一步是輸入用于訪問網站的用戶名和密碼,應為:
username:password
“password”的位置應該是加密過的密碼。你可以通過幾種方法來得到加密過的密碼:一是使用一個網上提供的permade腳本或自己寫一個;另一個很不錯的username/password加密服務是通過KxS網站,這里允許你輸入用戶名及密碼,然后生成正確格式的密碼。
對于多用戶,你只需要在.htpasswd文檔中新增同樣格式的一行即可。另外還有一些免費的腳本程序可以方便地管理.htpasswd文檔,可以自動新增/移除用戶等。
4.配置.htaccess 直接訪問加密網站
當你試圖訪問被.htaccess密碼保護的目錄時,你的瀏覽器會彈出標準的username/password對話窗口。如果你不喜歡這種方式,有些腳本程序可以允許你在頁面內嵌入username/password輸入框來進行認證,你也可以在瀏覽器的URL框內以以下方式輸入用戶名和密碼(未加密的):
http://username:[email protected]/directory/
5.利用 .htaccess 防止盜鏈
如果不喜歡別人在他們的網頁上連接自己的圖片、文檔的話,也可以通過htaccess的指令來做到。
所需要的指令如下:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ - [F]
如果覺得讓別人的頁面開個天窗不好看,那可以用一張圖片來代替:
RewriteEngine on
RewriteCond %{ HTTP_REFERER } !^$
RewriteCond %{ HTTP_REFERER } !^http://(www.)?w3sky.com/.*$ [NC]
RewriteRule .(gif &line;jpg)$ http://www.w3sky.com/替代圖片文件名 [R,L]
.httacces文件的密碼保護和防止盜鏈的實現方法
2020-06-05 22:01Linux教程網 Linux
盡管有各種各樣的.htaccess用法,但至今最流行的也可能是最有用的做法是將其用于網站目錄可靠的密碼保護。
延伸 · 閱讀
- 2021-12-30centos服務器下nginx圖片防盜鏈設置方法
- 2021-12-22JavaScript 防盜鏈的原理以及破解方法
- 2021-10-29PHP如何解決微信文章圖片防盜鏈
- 2021-08-25apache urlrewrite防盜鏈功能配置
- 2021-08-13Linux中Nginx的防盜鏈和優化的實現代碼
- 2021-08-01用rewrite實現IIS下圖片文件防盜鏈的辦法
- Linux
Linux命令學習總結:詳解reboot命令
這篇文章主要介紹了Linux命令學習總結:詳解reboot命令,這個指令使用起來非常簡單,有興趣的可以了解一下。...
- Linux
Linux 將支持基于 Li-Fi 的新型網絡技術
據 phoronix 報道,Li-Fi 技術供應商 PureLiFi 近來正在向 Linux 內核社區積極貢獻代碼,以推動將其開源的 Li-Fi 驅動程序并入 Linux 內核主線。...
- Linux
linux下gettimeofday函數windows替換方法(詳解)
下面小編就為大家帶來一篇linux下gettimeofday函數windows替換方法(詳解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看...
- Linux
在Linux系統上安裝配置DNS服務器的教程
這篇文章主要介紹了在Linux上安裝配置DNS服務器的教程,文中示例基于CentOS系統,需要的朋友可以參考下...
- Linux
致命的7個Linux命令
如果你是一個 Linux 新手,在好奇心的驅使下,可能會去嘗試從各個渠道獲得的命令。以下是 7 個致命的 Linux 命令,輕則使你的數據造成丟失,重則使你的...
- Linux
Linux基礎:如何找出你的系統所支持的最大內存
這篇文章主要介紹了Linux基礎:如何找出你的系統所支持的最大內存,需要的朋友可以參考下...
- Linux
linux下時間同步的兩種方法分享
在需要集中記錄服務器日志的環境中,時間同步那是相當的重要的。本文為大家介紹兩種同步linux時間的方法,供大家參考 ...
- Linux
Linux下查看使用的是哪種shell的方法匯總
這篇文章主要介紹了Linux下查看使用的是哪種shell的方法匯總,本文總結了9種查看當前系統使用的是哪種shell的方法,需要的朋友可以參考下 ...