簡體   English   中英

如何使用密碼保護靜態網站的某個部分?

[英]How can I password protect a section of a static website?

我有一個基本的靜態網站,用html,css和一些用於動畫的JavaScript編碼。 我不會從訪問者那里收集任何信息,所以我只需要基本的安全性即可使用密碼打開目錄或頁面。

有沒有簡單的方法可以做到這一點? 我只有使用共享安全證書的基本(且價格便宜)托管。

理想情況下,我可以設置外觀漂亮的文本字段和按鈕,如果訪問者使用正確的密碼,它將可以解鎖並重定向到目錄。

就上下文而言,我是設計師,這是我不希望公開使用的其他工作樣本,也不希望它們被搜索引擎索引。

在apache服務器(最基本的共享主機使用Apache)上執行此操作的最簡單方法是使用.htaccess / .htpasswd文件。 (是的,.dot之前甚至都沒有空格,並且末尾沒有.dot。有些人將它們稱為.htaccess [dothtaccess]或什至只是htaccess文件)

在要保護的目錄中,將放置一個名為.htaccess的文本文件,其信​​息類似於以下內容:

AuthType Basic
AuthName "My Special Directory"
AuthUserFile /path/to/.htpasswd
Require valid-user

/path/to/.htpasswd將需要更改為.htpasswd文件的完整路徑。 因此,在許多共享的托管系統上,它看起來可能類似於/home/username/domain.name/.htpasswd-通常來說,如果可以避免的話,您不想將.htpasswd文件放在public_html目錄中。

從那時起,您將需要在線創建一個.htpasswd生成器,例如http://www.htaccesstools.com/htpasswd-generator/。-由於您說的是非常基本的廉價主機,因此我假設您沒有具有在服務器本身上創建.htpasswd文件所需的外殼程序訪問權限。

.htpasswd文件如下所示:

anyusername:$apr1$3AtMWVIs$f4OYAR1WDctQ1EFHDq0UA/

如果您有權訪問該外殼程序,則可以只使用應該可以訪問的htpasswd二進制文件來生成它。 如果要創建一個新文件,該命令將如下所示(-c表示創建新文件):

htpasswd -c /home/username/domain.name/.htpasswd user1

如果要將用戶添加到現有文件中,則類似這樣:

htpasswd /home/username/domain.name/.htpasswd user2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM