nginx网站服务

1、基于域名的虚拟主机

在/etc/nginx/conf.d/a.com.conf 里编辑nginx配置文件。

vim /etc/nginx/conf.d/a.com.conf

添加配置内容。

server {			
listen 80;			
server_name  a.com; 		
location / {			
root   /usr/share/nginx/html/a.com/;	
index	index.html;		
}
}

新建网站主目录。

mkdir  /usr/share/nginx/html/a.com

新建网站主页文件

vim /usr/share/nginx/html/a.com/index.html

主页文件内容可以随便写。

重启nginx服务

systemctl restart nginx

在客户机做好域名解析,后续也可以用的上。
用超管身份打开记事本,再用记事本打开hosts.添加解析.
地址为:C:\Windows\System32\drivers\etc\host

192.168.40.137 a.com
192.168.40.137 b.com

(192,168,40,137 为虚拟机地址)

2、将nginx主页设置成随机页面

创建主页目录。

mkdir /app

创建多个主页。

touch /app/{blue.html,green.html,red.html,yellow.html}

在不同的页面书写不同的内容,例如:

<html>
<head>
<title>green color</title>
</head>
<body style="background-color:green">
<h1>green color!</h1>
</body>
</html>

在/etc/nginx/conf.d/a.com.conf 中继续编辑配置文件。

vim /etc/nginx/conf.d/a.com.conf

添加配置内容

server {			
listen 80;			
server_name  a.com; 		
location / {			
#root   /usr/share/nginx/html/a.com/;	
#index	index.html;	
root /app;
random_index on;	
}
}

重启nginx服务

systemctl restart nginx

3、将nginx网站中文件下载压缩

我们需要提前把拷贝图片至网站主目录,拷贝tar包至网站主目录,压缩包的后缀使用.html,拷贝文本至文件主目录。

在/etc/nginx/nginx.conf 中编辑配置文件。

vim /etc/nginx/nginx.conf

添加编辑内容

http {
#在http标签中启动该功能
gzip on;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png; 
gzip_static on;

重启nginx服务

systemctl restart nginx

使用域名在浏览器上测试,按Fn+F12键,观察缓存。

压缩包和图片类对象本身已经自带压缩功能。所以压缩比例较小低。
文本类对象在压缩试验中,压缩比例体现优越。

4、nginx流量控制

在/etc/nginx/nginx.conf编辑配置文件

vim /etc/nginx/nginx.conf

 添加配置内容

http {
    limit_req_zone $binary_remote_addr zone=req_zone:10m rate=1r/s;     
}

在 /etc/nginx/conf.d/a.com.conf编辑配置文件

vim /etc/nginx/conf.d/a.com.conf

添加配置内容

server {
    location / {
    root /usr/share/nginx/html;
    index index.html index.htm;
    limit_req zone=req_zone;  		
            
        }
    }

 重启nginx 服务

systemctl restart nginx

 使用yum 下载测试环境

yum -y install httpd-tools

 开始测试

ab -n 100 -c 10 http://a.com/

测试结果

This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
Benchmarking localhost (be patient).....done
Server Software:          nginx/1.12.1
Server Hostname:        tianyun.me
Server Port:                80

Document Path:          /
Document Length:       671 bytes

Concurrency Level:      10
Time taken for tests:    0.006 seconds
Complete requests:      100                 
Failed requests:            99                      失败的请求
   (Connect: 0, Receive: 0, Length: 99, Exceptions: 0)
Write errors:                0
Non-2xx responses:      99                      有问题的相应。
Total transferred:         73273 bytes
HTML transferred:       53834 bytes
Requests per second:  16131.63 [#/sec] (mean)
Time per request:       0.620 [ms] (mean)
Time per request:       0.062 [ms] (mean, across all concurrent requests)
Transfer rate:             11543.10 [Kbytes/sec] received

5、基于ip的访问控制

在/etc/nginx/conf.d/a.com.conf 编辑配置文件

vim /etc/nginx/conf.d/a.com.conf

添加配置内容

server {
allow 10.18.45.65;
allow 10.18.45.181;
deny all;
}

 重启nginx服务

systemctl restart nginx

6、基于用户的访问控制

下载生成密钥的工具

yum -y install httpd-tools

生成会话密码

htpasswd -cm /etc/nginx/conf.d/passwd user10
				
htpasswd -m /etc/nginx/conf.d/passwd user20

 观察口令文件是否生成

cat /etc/nginx/conf.d/passwd

在/etc/nginx/conf.d/a.com.conf中编辑配置文件

vim /etc/nginx/conf.d/a.com.conf

添加配置内容

server {
找到server{字段,在下一行插入认证字段。
auth_basic "nginx access test!";
auth_basic_user_file /etc/nginx/conf.d/passwd;
}

重启nginx服务

systemctl restart nginx

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五言六舌

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值