Apache 2.X 啟動網頁認證

Apache除了是老牌的web server之外,也內建了簡易的網頁認證機制,下面就來介紹如何快速啟動htpasswd的驗證機制吧!

小編的系統環境如下:
作業系統:Ubuntu 16.04.5 LTS
Apache:2.4.18

一、變更Apache設定檔
sudo vi /etc/apache2/sites-enabled/000-default.conf
在設定檔裡最下方加入
<Directory “/var/www/html”>
AuthType Basic
AuthName “login System”
AuthUserFile /etc/apache2/userpwd/.htpasswd
Require valid-user
</Directory>

設定檔參數說明:
Directory “/var/www/html”:該路徑是你希望有帳號密碼驗證的路徑。
AuthUserFile /etc/apache2/userpwd/.htpasswd:使用者帳號密碼檔案存放的路徑。
AuthName “login System”:網頁出現驗證畫面時的名稱。

二、重新啟動Apache服務
sudo service apache2 restart

三、建立使用者帳號密碼
將下方指令裡面的帳號密碼變更成你所要建立的資訊,接著在Linux命令提示字元下執行即可。
sudo sh -c “echo -n ‘123456:’ >> /etc/apache2/userpwd/.htpasswd”;echo 654321 > /tmp/pw.txt ;sudo sh -c “openssl passwd -apr1 -in /tmp/pw.txt >> /etc/apache2/userpwd/.htpasswd”;rm -rf /tmp/pw.txt

指令說明:
(1)、下面的指令是建立一個123456的帳號,密碼為654321,並將該資訊寫入「/etc/apache2/userpwd/.htpasswd」這個檔案。
(2)、請注意「/etc/apache2/userpwd/.htpasswd」這個路徑必須與上面的相呼應。

四、驗證
登入你剛剛設定的網頁路徑應該又可以看到下方的驗證畫面。