nginx 服务做用户认证和基于域名的虚拟主机
标记 虚拟 服务端 图. install pan num 登陆 onf
实验一、用 nginx 怎么实现用户访问时的认证一、目标 通过调整 Nginx 服务端配置,实现以下目标:- 访问 web 页面需要进行用户认证
- 用户名为:tom,密码为:123456
二、方案 通过 Nginx 实现 Web 页面的认证,需要修改 Nginx 配置文件,在配置文件中添加 auth 语句实现用户认证。 最后使用 htpasswd 命令创建用户及密码即可,服务端:192.168.4.102,客户端:192.168.4.101
三、实施步骤(nginx 服务安装见我的 "搭建 nginx 服务") 1、修改 Nginx 配置文件:vim /usr/local/nginx/conf/nginx.conf 添加两行,红颜色标记- server {
- listen 80;
- server_name localhost;
- auth_basic "Input Password:"; // 认证提示符
- auth_basic_user_file "/usr/local/nginx/pass"; // 认证密码文件
- location / {
- root html;
- index index.html index.htm;
- }
- }
2、生成密码文件,创建用户及密码:使用 htpasswd 命令创建账户文件,需要确保系统中已经安装了 httpd-tools。 yum -y install httpd-tools.x86_64 // 安装工具 htpasswd -c /usr/local/nginx/pass tom // 创建用户名和密码,后期如果增加新的用户,不需要加 - c 的参数 3、测试 重启 nginx 服务,在客户端上 192.168.4.101 去访问服务器 出来如上的框,输入用户名和密码,验证是否能登陆进去实验二、nginx 基于域名的虚拟主机 一、目的 沿用上面的实验 1 配置基于域名的虚拟主机,实现以下目标:- 实现两个基于域名的虚拟主机,域名分别为 www.aa.com 和 www.bb.com
- 对域名为 www.aa.com 的站点进行用户认证,用户名称为 tom,密码为 123456
二、方案
修改 Nginx 配置文件,添加 server 容器实现虚拟主机功能;对于需要进行用户认证的虚拟主机添加 auth 认证语句三、实施步骤 1、编辑配置文件: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; } } 2、创建访问 aa 网站的用户名和密码,上面已经创建了,不需要再创建 3、创建网站根目录及对应首页文件 mkdir /usr/local/nginx/aa mkdir /usr/local/nginx/bb 首页文件自己自行创建 4、重启 nginx 服务 5、客户端测试 由于没有做 DNS 解析,故在主机 192.168.4.101 的 / etc/hosts 文件,进行域名解析 添加下面的一行记录 192.168.4.102 www.aa.com www.bb.com 然后在浏览器里面输入两个域名来进行测试,得到不同的页面
nginx 服务做用户认证和基于域名的虚拟主机
来源: http://www.bubuko.com/infodetail-2451678.html