LNMP—Nginx的使用者認證

科技小能手發表於2017-11-12

使用者認證目的提高系統安全度,那麼什麼時候我們使用“使用者認證”呢?

進入管理中心:www.test.com/admin.php ,假如事前不小心把某個管理員的密碼弄的非常簡單,很不安全,不得不提高安全度,那麼我們就要在這個基礎上做一個安全認證,就要先輸入使用者名稱和密碼,才能進入“管理中心”,這樣能增加我們的安全性(回顧一下Apache的使用者認證怎麼做的)。


我們先進入“虛擬主機配置檔案”的目錄並列出包含檔案:

[root@LampLinux vhosts]# cd /usr/local/nginx/conf/vhosts/

[root@LampLinux vhosts]# ls

    default.conf  (預設虛擬主機)

    test.conf     (虛擬主機配置檔案)

開啟“虛擬主機配置檔案”:

在 root /data/www;下方寫入


location ~ .*admin.php$ {

        auth_basic “LampLinux auth”;

        auth_basic_user_file /usr/local/nginx/conf/.htpasswd;

        include fastcgi_params;

        fastcgi_pass unix:/tmp/www.sock;

        fastcgi_index index.php;

        fastcgi_param SCRIPT_FILENAME  /data/www$fastcgi_script_name;

    }



(PS:紅字|為新加入資訊,綠字|為複製原有配置檔案內下面“PHP解析”括號內的內容。)

配置好檔案後,我們增加使用者

[root@LampLinux vhosts]# htpasswd -c /usr/local/nginx/conf/.htpasswd user1

說明一下:

Nginx是沒有htpasswd這個工具的,有兩種方法,對應兩種不同的情況:

  1. 我們可以把Apache的這個工具拿過來用,我們從LAMP中手動編譯過的Apache中的/usr/local/apache2/bin/htpasswd這個工具來使用;

  2. 如果是沒有安裝Apache的環境,我們可以yum install -y httpd 來使用這個命令。


:如果需要增加使用者認證的使用者,我們在增加使用者的時候把“-c”去掉就行了;如下:

[root@LampLinux vhosts]# htpasswd  /usr/local/nginx/conf/.htpasswd user2



本文轉自 聽丶飛鳥說 51CTO部落格,原文連結:http://blog.51cto.com/286577399/1683784


相關文章