Nginx网站架构实战——08、nginx Rewrite语法详解-linux安全运维_跨零代码

跨零代码为大家提供高品质的运维解决方案,请大家多多来访,跨零不胜感激,在此谢过。

前言:

Nginx网站架构实战——01、Nginx介绍及编译安装:传送门

Nginx网站架构实战——02、Nginx信号量:传送门

Nginx网站架构实战——03、nginx虚拟主机配置:传送门

Nginx网站架构实战——04、nginx日志管理:传送门

Nginx网站架构实战——05、nginx定时任务完成日志切割:传送门

Nginx网站架构实战——06、Location详解之精准匹配:传送门

Nginx网站架构实战——07、Location之正则匹配:传送门

常用的命令

     if (条件) {} 设定条件,再进行重写     set #设置变量     return  #返回状态码     break   #跳出rewrite     rewrite #重写 

 

if语法格式

     if 空格 (条件){         重写模式     }      条件又怎么写?     1. “=”来判断相等, 用于字符串比较     2. “~” 用正则来匹配(此处的正则区分大小写)     ~* 不区分大小写的正则     3. -f -d -e来判断是否为文件,为目录,是否存在.      [root@tiejiang ~]# cd /usr/local/nginx/     [root@tiejiang nginx]# vim html/test-if.html         <html>             test if and reutrn;         </html>      [root@tiejiang nginx]# tail -n 1 logs/access.log          192.168.0.102 - - [15/May/2018:03:53:36 +0800] "GET /test-if.html HTTP/1.1" 200 35 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0" 

Nginx网站架构实战——08、nginx Rewrite语法详解

拒绝一个指定IP访问这个test-if.html页面

     [root@tiejiang ~]# cd /usr/local/nginx/     [root@tiejiang nginx]# vim conf/nginx.conf             location / {                 if ($remote_addr = 192.168.0.102) {                 return 403;             }                 root   html;                 index  index.html index.htm;             }     [root@tiejiang nginx]# ./sbin/nginx -s reload 

Nginx网站架构实战——08、nginx Rewrite语法详解

拒绝IE浏览器打开任何页面(msie是ie的标识)

     [root@tiejiang ~]# cd /usr/local/nginx/     [root@tiejiang nginx]# vim conf/nginx.conf             location / {                 if ($http_user_agent ~ MSIE) {                 rewrite ^.*$ /ie.html;                 break;             }                 root   html;                 index  index.html index.htm;             }     [root@tiejiang nginx]# vim html/ie.html         <html>             amn ie, fuck.         </html> 

Nginx网站架构实战——08、nginx Rewrite语法详解
Nginx网站架构实战——08、nginx Rewrite语法详解

用rewrite设置404页面

 [root@tiejiang ~]# cd /usr/local/nginx/ [root@tiejiang nginx]# vim html/404.html     <html>         this is 404     </html> [root@tiejiang nginx]# vim conf/nginx.conf         location / {             if ($http_user_agent ~ MSIE) {             rewrite ^.*$ /ie.html;             break;         }             if (!-e $document_root$fastcgi_script_name){             rewrite ^.*$ /404.html;             break;         }             root   html;             index  index.html index.htm;         } [root@tiejiang nginx]# ./sbin/nginx -s reload 

首先打开一个存在的页面

Nginx网站架构实战——08、nginx Rewrite语法详解

然后再打开一个不存在的页面,现在展示出来我们指定的404页面。

Nginx网站架构实战——08、nginx Rewrite语法详解


//下面这个css和插件后台设置的主题有关系,如果需要换样式,则需要修改以下CSS名称

从零到一,创造未来!跨零代码综合IT问题解决服务站,欢迎你的到来。运维教程 只为你绽放。

本文固定链接: http://kua0.com/2019/02/02/nginx网站架构实战-08、nginx-rewrite语法详解-linux安全运维_跨零/

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注