1.建立 .htaccess
在要限制的網頁目錄裡(例: /var/www/html/xxxxx),建立一個 .htaccess 的檔案
.htaccess 內容:
AuthName "User Account Login" #網頁上顯示的文字
AuthUserFile /var/www/.htpasswd #.htaccess 密碼檔存放位置,儘量不要放在 www 目錄下
AuthType Basic
require valid-user
2. 產生帳號密碼檔
利用 htpasswd 指令來產生帳號密碼檔
1.新建一個登入帳號 為 test,
如 /var/www/.htpasswd 帳號密碼檔還不存在,則需要輸入下列指令:
htpasswd -c /var/www/.htpasswd test
(需特別注意的是,如果 /var/www/.htpasswd 已經存在的話,不要再使用 -c 參數,因為它會覆蓋掉原本/var/www/.htpasswd 的內容)
2.再新建一個登入帳號 為 admin,而這個時候 /var/www/.htpasswd 已經存在,則只需要輸入下列指令,
htpasswd /var/www/.htpasswd admin
輸入此使用者的密碼,輸入完畢後,在 /var/www/.htpasswd 就會看到剛剛新建的使用者帳號及密碼的資料了。
CentOS 6 Apache 設定方式 .htaccess:
apache 預設應開是開啟此功能的,在 http.conf 裡
確認 .htaccess 是可生效的
AccessFileName .htaccess
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
新增保護的網頁:
<Directory "/var/www/html/xxxxx">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
CentOS 7 Apache 設定方式 .htaccess:
新增保護的網頁 /etc/httpd/conf.d/xxxx.conf:
<Directory "/var/www/html/xxxxx">
AllowOverride All
Require all granted
Require all granted
</Directory>
沒有留言:
張貼留言