nginx虚拟主机的配置及参数用法

一.nginx虚拟主机的配置

1.修改nginx配置文件添加两个虚拟主机,之后检查语法,重新加载nginx服务

 vim /usr/local/lnmp/nginx/conf/nginx.conf   #文件末尾加上

server {
        listen 80;
        server_name www.westos.org;
        location / {
        root /www1;
        index index.html;
        }
}
server {
        listen 80;
        server_name bbs.westos.org;
        location / {
        root /www2;
        index index.html;
        }
}
nginx  -s reload
nginx  -t

2.新建访问主目录,和访问页面

mkdir /www1  #建立nginx访问的目录
mkdir /www2
cd /www1   #编写其默认发布文件
vim index.html
www.westos.org
cd /www2
vim index.html
bbs.westos.org

3.设置本地解析,

172.25.38.4  serverX  www.westos.org  bbs.westos.org

4.测试

二.ssl加密实现https

1.https访问设置,开启443端口加密,设置nginx的配置文件,检查语法,刷新reload

 vim /usr/local/lnmp/nginx/conf/nginx.conf 

 server {
       listen       443 ssl;
       server_name  localhost;
       ssl_certificate      cert.pem;    
       ssl_certificate_key  cert.pem;  
       ssl_session_cache    shared:SSL:1m;
       ssl_session_timeout  5m;
       ssl_ciphers  HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers  on;
       location / {
           root   /www1;
           index  index.html index.htm;
       }
   }

2.生成证书

cd /etc/pki/tls/certs/   
make cert.pem   #生成证书
ll cert.pem   #查看证书文件是否建立
cp cert.pem /usr/local/lnmp/nginx/conf/

 

3.测试,https:是否生效,在浏览器中输入https://www.westos.org,添加证书刷新,就访问成功。

 nginx -s reload

三.Nginx重定向

1.当访问www.westos.org和westos.org,重定向到https://www.westos.org

123         server {
124         listen 80;
125         server_name www.westos.org westos.org;
126         rewrite ^/(.*)$ https://www.westos.org;  ##默认为临时重定向。可以加上permanent,永久重定向
127         location / {
128         root /www1;
129         index index.html;
130         }
131 }

 

2.访问www.westos.org/bbs/重定向到http://bbs.westos.org/,访问www.westos.org/bbs/index.html重新定向到http://bbs.westos.org/index.html

 

3.nginx的反向重定向

123         server {
124         listen 80;
125         server_name www.westos.org westos.org;
126         #rewrite ^/(.*)$ https://www.westos.org/$1 permanent;
127         #rewrite ^/bbs$  http://bbs.westos.org;
128         #rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1;
129         if ($host = "bbs.westos.org") {
130         rewrite ^/(.*)$ http://www.westos.org/bbs;
131         }
132         location / {
133         root /www1;
134         index index.html;
135         }
136 }
137 #       server {
138 #               listen 80;
139 #                       server_name bbs.westos.org;
140 #               location / {
141 #               root /www2;
142 #               index index.html;
143 #        }
144 #}

编写一个bbs测试目录 

cd /www1
mkdir bbs
cd bbs/
vim index.html

4.nginx的访问控制,允许172.25.254.2访问,其他禁止,访问时返回403禁止,可以禁止ip也可以禁止访问的网段,比如:172.25.254.0/24。

132         location / {
133         allow 172.25.254.2;   
134         deny all;
135         root /www1;
136         index index.html;
137         }

5.对客户端的访问进行并发控制和流量控制

5.1并发控制

 38         limit_conn_zone $binary_remote_addr zone=addr:10m;
148         location /download/ {
149                 root /www1;
150                 limit_conn addr 1;   并发访问量为1
151         }

压力测试,每秒10次访问量,有2次成功,8次失败

ab -c10 -n 10 http://www.westos.org/download/11.jpg

每秒访问1次,访问10次全部返回200,正确

 ab -c1 -n 10 http://www.westos.org/download/11.jpg

5.2流量控制

limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
location /download {
        limit_conn addr 1;
        limit_rate 50k;    # 限制速率为50k
        limit_req zone=one burst=5;
        }

6.防止恶意点击 

40     server {
41         listen       80;
42         server_name  _;
43         return 500;

因为这样页面不友好,所以重定向到年需要的网页,这里重定向到www.westos.org

 40     server {
 41         listen       80;
 42         server_name  _;
 43         #return 500;
 44         rewrite ^(.*) http://www.westos.org permanent;
 45         #charset koi8-r;
 46         location ~\.jsp$ {
 47         proxy_pass http://127.25.254.1:8080;
 48         }
 49         #access_log  logs/host.access.log  main;
 50 
 51         location / {
 52             root   html;
 53             index  index.html index.htm;
 54         }

7.网页编码的设置

写入测试页面:

开始访问:

设置配置文件:

访问测试:

8.去掉不必要的日志记录

access_log off;   # 在要访问的位置

9.有时我们访问一个图片会出现上下齿状,这就要用到防盗链技术

在一台主机上安装apache,编辑默认发布文件:

<html>
<body>
<img src="http://www.westos.org/download/11.jpg">  
</body>
</html>

在浏览器中输入172.25.254.2访问到http://www.westos.org/download/11.jpg这个图片实现盗取链接

 

location ~ ^/images/.*\.(jpg|gif)$ {
# deny all;
expires 365;
root /www1;
valid_referers none blocked www.westos.org;  
if ($invalid_referer) {
return 403;                      #返回403
#rewrite ^/http://www.westos.org/  #重定向到指定文件
}
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值