如何统计连接数,以及根据域名配置虚拟主机
cd /usr/local/nginx/conf
vim nginx.conf
- server {
- listen 80;
- server_name www.abc.com;
-
- charset utf-8;
-
- access_log logs/www.abc.com;
- error_log logs/www.abc.error.log;
-
-
- location / {
- root /var/www/html/zzr;
- index index.html index.htm;
- }
-
- location /status {
-
- stub_status on;
- access_log off;
- }

在server模块添加,此处,我添加了 www.abc.com,同理,接下来我添加另一个 www.qwer.com
- server {
- listen 80;
- server_name www.qwer.com;
-
- charset utf-8;
-
- access_log logs/www.qwer.com;
- error_log logs/www.qwer.error.log;
-
-
- location / {
- root /var/www/html/qwer;
- index index.html index.htm;
- }
-
- location /status {
-
- stub_status on;
- access_log off;
-
-
- }
-
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root html;
- }
- }

因为此处有路径: /var/www/html/qwer(abc),添加完成之后,编写内容
- cd /var/www/html
- mkdir abc
- mkdir qwer
- cd abc
- index.html
- cd /var/www/html/qwer
- index.html
如果遇到域名重合则无法显示,这里可以用vmware里面的火狐浏览器查看


vim /etc/hosts
域名映射,不同域名之间空格 隔开就行

- systemctl restart nginx.service
- 重启服务
进入浏览器 20.0.0.10/status查看

- Active connection:2 #表示当前活动连接数
- server accepts handled requests 已经处理的连接数
- handled 成功的tcp握手次数
- requests 已经处理的请求数
- Reading: 0 writing: 1 waiting: 1
- Reading: 0 服务端正在从客户端读取数据,正在读取客户端请求的连接数
- writing: 0 服务器正在将响应数据发送给客户端响应的连接数
- waiting: 0 表示有链接处于空闲状态,当前等待客户端请求的连接数
基于虚拟IP配置虚拟主机
基于虚拟IP配置虚拟机,首先得配置虚拟网卡
ifconfig ens33:0 20.0.0.100/24

vim nginx.conf


完成
基于端口配置虚拟主机


基于授权的访问控制:
内部来做访问控制
yun -y install httpd-tools
- htpasswd -c /usr/local/nginx/passwd.db zhangsan
- 输入并确定密码
- chown nginx /usr/local/nginx/passwd.db
- chown 400 /usr/local/nginx/passwd.db
- 权限必须是400,否则报错
- vim nginx.conf
-
- 配置内容如下:
-
-
-
- location / {
- root /var/www/html/qwer;
- index index.html index.htm;
- auth_basic "secret";
- auth_basic_user_file /usr/local/nginx/passwd.db;
- }
-
- 配置完之后重启服务
- systemctl restart nginx



需要账号密码才能登录


完成
基于客户端的访问控制
20.0.0.100:8888
拒绝20.0.0.20的客户机
允许其他所有(黑名单效果)


如图所示,20.0.0.20的客户机无法登录 20.0.0.100:8888