Nginx基于域名的虚拟主机

Nginx基于域名的虚拟主机

1.1 问题


沿用练习二,配置基于域名的虚拟主机,实现以下目标:


    实现两个基于域名的虚拟主机,域名分别为www.aa.com和www.bb.com

    对域名为www.aa.com的站点进行用户认证,用户名称为tom,密码为123456


1.2 方案


修改Nginx配置文件,添加server容器实现虚拟主机功能;对于需要进行用户认证的虚拟主机添加auth认证语句。

3.3 步骤


实现此案例需要按照如下步骤进行。


步骤一:修改配置文件


1)修改Nginx服务配置,添加相关虚拟主机配置如下


    [root@Proxy ~]# 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   html;                                    //指定网站根路径

                index  index.html index.htm;

           }

           

    }

    … …

        server {

            listen  80;                                        //端口

            server_name  www.bb.com;                            //域名

    location / { 

    root   www;                                 //指定网站根路径

    index  index.html index.htm;

    }

    }


2)创建账户及密码


    [root@Proxy ~]# htpasswd –cm  /usr/local/nginx/pass  tom        //创建账户密码文件

    New password: 

    Re-type new password: 

    Adding password for user tom


3)创建网站根目录及对应首页文件


    [root@Proxy ~]# mkdir /usr/local/nginx/www

    [root@Proxy ~]# echo "www" > /usr/local/nginx/www/index.html


4)重启nginx服务


    [root@Proxy ~]# /usr/local/nginx/sbin/nginx –s reload


步骤二:客户端测试


1)修改客户端主机192.168.4.100的/etc/hosts文件,进行域名解析


    [root@client ~]# vim /etc/hosts

    192.168.4.5    www.aa.com www.bb.com


2)登录192.168.4.100客户端主机进行测试


注意:SSH –X远程连接调用虚拟机的firefox时,请先关闭真实机的firefox。


    [root@client ~]# firefox http://www.aa.com            //输入密码后可以访问

    [root@client ~]# firefox http://www.bb.com            //直接访问


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章