nginx服務作用戶認證和基於域名的虛擬主機

實驗1、用nginx怎麼實現用戶訪問時的認證html


1、目標nginx

       經過調整Nginx服務端配置,實現如下目標:vim

  1. 訪問Web頁面須要進行用戶認證瀏覽器

  2. 用戶名爲:tom,密碼爲:123456安全



2、方案服務器

        經過Nginx實現Web頁面的認證,須要修改Nginx配置文件,在配置文件中添加auth語句實現用戶認證。ide

   最後使用htpasswd命令建立用戶及密碼便可,服務端:192.168.4.102,客戶端:192.168.4.101工具


3、實施步驟(nginx服務安裝見個人「搭建nginx服務」)測試

    一、修改Nginx配置文件:vim /usr/local/nginx/conf/nginx.conf網站

         添加兩行,紅顏色標記

  1. server {

  2. listen       80;

  3. server_name  localhost;

  4. auth_basic "Input Password:";        //認證提示符

  5. auth_basic_user_file "/usr/local/nginx/pass";        //認證密碼文件

  6. location / {

  7. root   html;

  8. index  index.html index.htm;

  9. }

  10. }

   二、生成密碼文件,建立用戶及密碼:使用htpasswd命令建立帳戶文件,須要確保系統中已經安裝了httpd-tools。

        yum -y install httpd-tools.x86_64             //安裝工具

        htpasswd -c /usr/local/nginx/pass tom     //建立用戶名和密碼,後期若是增長新的用戶,不須要加-c的參數

  三、測試

       重啓nginx服務,在客戶端上192.168.4.101去訪問服務器

       2018-01-06 10-15-14屏幕截圖.png

  出來如上的框,輸入用戶名和密碼,驗證是否能登錄進去



實驗2、nginx基於域名的虛擬主機

  

1、目的

     沿用上面的實驗1

配置基於域名的虛擬主機,實現如下目標:

  1. 實現兩個基於域名的虛擬主機,域名分別爲www.aa.com和www.bb.com

  2. 對域名爲www.aa.com的站點進行用戶認證,用戶名稱爲tom,密碼爲123456



2、方案

     修改Nginx配置文件,添加server容器實現虛擬主機功能;對於須要進行用戶認證的虛擬主機添加auth認證語句

3、實施步驟

  一、編輯配置文件:vim /usr/local/nginx/conf/nginx.conf

     

 server {

        listen       80;

        server_name  www.aa.com;                           //指定域名

        auth_basic "Input Password:";                       //安全的認證

        auth_basic_user_file "/usr/local/nginx/pass";   //密碼文件路徑

     location / {

            root   aa;                                               //網站的根目錄

            index  index.html index.htm;

  }

 

  server {

        listen       80;

        server_name  www.bb.com;            //指定域名


        location / {

            root   bb;                                 //網站的根目錄

            index  index.html index.htm;

        }

    }

 二、建立訪問aa網站的用戶名和密碼,上面已經建立了,不須要再建立

 三、建立網站根目錄及對應首頁文件

        mkdir     /usr/local/nginx/aa          mkdir     /usr/local/nginx/bb

     首頁文件本身自行建立

 四、重啓nginx服務

 五、客戶端測試

    因爲沒有作DNS解析,故在主機192.168.4.101的/etc/hosts文件,進行域名解析

   添加下面的一行記錄

   192.168.4.102       www.aa.com www.bb.com

   而後在瀏覽器裏面輸入兩個域名來進行測試,獲得不一樣的頁面

相關文章
相關標籤/搜索