wordpress娱乐网,网站暂时关闭 seo,公司网站制作公司倒闭,网站建设到运营赚钱#x1f49d;#x1f49d;#x1f49d;欢迎来到我的博客#xff0c;很高兴能够在这里和您见面#xff01;希望您在这里可以感受到一份轻松愉快的氛围#xff0c;不仅可以获得有趣的内容和知识#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学… 欢迎来到我的博客很高兴能够在这里和您见面希望您在这里可以感受到一份轻松愉快的氛围不仅可以获得有趣的内容和知识也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老导航 檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂 非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。 ✨✨ 欢迎订阅本专栏 ✨✨ 博客目录 一.基本介绍1. 隐藏真实目录结构2. 规范化 URL3. 防止盗链4. HTTP 到 HTTPS 的强制重定向5. 条件性重写6. 统一资源标识符URI规范化7. 避免敏感信息泄露8.工作原理9.Rewrite Flag 参数 二.代码实战 一.基本介绍
Nginx 的 rewrite 模块是ngx_http_rewrite_module它主要用于改写请求 URI是 Nginx 默认安装的模块之一。通过使用 rewrite可以实现 URL 重写和重定向这在网站开发和维护中有着广泛的应用。
1. 隐藏真实目录结构
使用 rewrite 可以隐藏服务器上的真实文件路径和目录结构增加安全性防止攻击者通过直接访问文件路径获取敏感信息。例如可以通过以下配置实现
rewrite ^/api/(.*)$ /backend/$1 break;这样所有的/api/请求都会被重写到/backend/目录下而外界无法直接通过 URL 猜测真实的文件路径。
2. 规范化 URL
强制规范化 URL 格式可以避免一些常见的安全问题如路径遍历攻击或路径参数欺骗。例如确保 URL 以特定的格式展示
rewrite ^/(.*)/$ //$1.html last;这个规则将所有以斜杠结尾的请求重写为对应的.html文件。
3. 防止盗链
通过 rewrite 实施防盗链策略防止其他网站直接链接到本站的资源减轻服务器负载提高资源的安全性。例如
rewrite ^/images/(.*)$ /notfound.gif if-not-referer($http_referer, http://www.yoursite.com);这个规则会检查 Referer 头如果不是来自指定的站点则重写到一个占位符图片。
4. HTTP 到 HTTPS 的强制重定向
通过 rewrite 将 HTTP 请求强制重定向到 HTTPS确保数据在传输过程中的安全性。例如
server {listen 80;server_name example.com;rewrite ^ https://$server_name$request_uri? permanent;
}这个配置会将所有的 HTTP 请求重定向到 HTTPS。
5. 条件性重写
可以根据请求中的条件来选择是否进行重写例如只有特定 IP 范围的请求才允许进行某种操作。例如
map $remote_addr $allowed {default 0;192.168.1.1 1;
}
location /admin {rewrite ^/admin(.*)$ /access_denied last;if ($allowed 0) {return 403;}
}这个配置会阻止未授权的 IP 访问/admin目录。
6. 统一资源标识符URI规范化
通过强制规范化 URI可以防止攻击者尝试混淆或绕过安全策略。例如
rewrite ^([^.]*[^/])$ /$1.html last;这个规则会将没有扩展名的请求重写为.html文件。
7. 避免敏感信息泄露
通过 rewrite 可以限制对某些敏感信息或文件的访问确保只有授权用户能够获取特定内容。例如
location ~* ^/sensitive/.*\.php$ {deny all;
}这个配置会阻止所有用户访问/sensitive/目录下的 PHP 文件。
8.工作原理
Rewrite 模块的指令包括break, if, return, rewrite, set等。Rewrite 指令会根据 PCRE 正则匹配重写 URI然后发起内部跳转再匹配 location或者直接做 30x 重定向返回客户端。如果新 URI 包含协议信息如http://或https://则会直接返回客户端重定向。
9.Rewrite Flag 参数
last停止处理任何 rewrite 相关的指令立即用替换后的新 URI 开始下一轮的 location 匹配。break停止处理任何 rewrite 的相关指令直接用新的 URI 进一步处理请求。redirect返回 302 临时重定向。permanent返回 301 永久重定向。
二.代码实战
location /test/server {rewrite ^/test(.*)$ $1 break;proxy_pass http://xxxx.xxx.xx.xx:8320$1;proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection upgrade;proxy_redirect off;client_max_body_size 600M;client_body_buffer_size 600M;uwsgi_send_timeout 1800;uwsgi_connect_timeout 1800;uwsgi_read_timeout 1800;proxy_read_timeout 1800;proxy_connect_timeout 1800;proxy_send_timeout 1800;
}在 Nginx 的配置文件中$1 是一个变量它代表正则表达式捕获的分组。在你提供的配置片段中
这里的正则表达式 ^/test(.*)$ 用于匹配 URL 中以 /test 开头的部分并且将 /test 后面的所有内容捕获为一个分组这个分组就是 $1。
- rewrite ^/test(.*)$ $1 break; 这行代码的作用是将匹配到的 URL 重写为它自己实际上这个 rewrite 规则并没有改变 URLbreak 表示重写完成后不再进行后续的重写检查。
- proxy_pass http://xxxx:8320$1; 这行代码的作用是将请求代理到 http://xxxx:8320 这个后端服务器并且将原始请求中的 /test 及其后面的部分即 $1附加到代理服务器的 URL 后面。
举个例子如果有一个请求的 URL 是 http://yourserver.com/test/some/path那么经过上述配置后Nginx 会将请求转发到 http://xxxxxxx:8320/some/path。这里的 /some/path 就是 $1 代表的内容。 觉得有用的话点个赞 呗。 ❤️❤️❤️本人水平有限如有纰漏欢迎各位大佬评论批评指正 如果觉得这篇文对你有帮助的话也请给个点赞、收藏下吧非常感谢! Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧
文章转载自: http://www.morning.xxrwp.cn.gov.cn.xxrwp.cn http://www.morning.jstggt.cn.gov.cn.jstggt.cn http://www.morning.yzktr.cn.gov.cn.yzktr.cn http://www.morning.lkgqb.cn.gov.cn.lkgqb.cn http://www.morning.wcjk.cn.gov.cn.wcjk.cn http://www.morning.pqxjq.cn.gov.cn.pqxjq.cn http://www.morning.kxypt.cn.gov.cn.kxypt.cn http://www.morning.mxdiy.com.gov.cn.mxdiy.com http://www.morning.drmbh.cn.gov.cn.drmbh.cn http://www.morning.mzgq.cn.gov.cn.mzgq.cn http://www.morning.zpjhh.cn.gov.cn.zpjhh.cn http://www.morning.lswgs.cn.gov.cn.lswgs.cn http://www.morning.zphlb.cn.gov.cn.zphlb.cn http://www.morning.syznh.cn.gov.cn.syznh.cn http://www.morning.coatingonline.com.cn.gov.cn.coatingonline.com.cn http://www.morning.hytqt.cn.gov.cn.hytqt.cn http://www.morning.kxqmh.cn.gov.cn.kxqmh.cn http://www.morning.ccffs.cn.gov.cn.ccffs.cn http://www.morning.trplf.cn.gov.cn.trplf.cn http://www.morning.zpyh.cn.gov.cn.zpyh.cn http://www.morning.qypjk.cn.gov.cn.qypjk.cn http://www.morning.wjtxt.cn.gov.cn.wjtxt.cn http://www.morning.fmry.cn.gov.cn.fmry.cn http://www.morning.skrcn.cn.gov.cn.skrcn.cn http://www.morning.jqmqf.cn.gov.cn.jqmqf.cn http://www.morning.srjgz.cn.gov.cn.srjgz.cn http://www.morning.hhboyus.cn.gov.cn.hhboyus.cn http://www.morning.kkjhj.cn.gov.cn.kkjhj.cn http://www.morning.nkqxb.cn.gov.cn.nkqxb.cn http://www.morning.dpbdq.cn.gov.cn.dpbdq.cn http://www.morning.nqypf.cn.gov.cn.nqypf.cn http://www.morning.fxwkl.cn.gov.cn.fxwkl.cn http://www.morning.qkskm.cn.gov.cn.qkskm.cn http://www.morning.nxdqz.cn.gov.cn.nxdqz.cn http://www.morning.nzlsm.cn.gov.cn.nzlsm.cn http://www.morning.cpctr.cn.gov.cn.cpctr.cn http://www.morning.sfdky.cn.gov.cn.sfdky.cn http://www.morning.zqfjn.cn.gov.cn.zqfjn.cn http://www.morning.zrpbf.cn.gov.cn.zrpbf.cn http://www.morning.mhnd.cn.gov.cn.mhnd.cn http://www.morning.ybqlb.cn.gov.cn.ybqlb.cn http://www.morning.lmctj.cn.gov.cn.lmctj.cn http://www.morning.1000sh.com.gov.cn.1000sh.com http://www.morning.ndtzy.cn.gov.cn.ndtzy.cn http://www.morning.ysllp.cn.gov.cn.ysllp.cn http://www.morning.yqtry.cn.gov.cn.yqtry.cn http://www.morning.kpypy.cn.gov.cn.kpypy.cn http://www.morning.fynkt.cn.gov.cn.fynkt.cn http://www.morning.nqfxq.cn.gov.cn.nqfxq.cn http://www.morning.qhczg.cn.gov.cn.qhczg.cn http://www.morning.jhgxh.cn.gov.cn.jhgxh.cn http://www.morning.jhswp.cn.gov.cn.jhswp.cn http://www.morning.rknsp.cn.gov.cn.rknsp.cn http://www.morning.fstdf.cn.gov.cn.fstdf.cn http://www.morning.xqmd.cn.gov.cn.xqmd.cn http://www.morning.dxqfh.cn.gov.cn.dxqfh.cn http://www.morning.dnqliv.cn.gov.cn.dnqliv.cn http://www.morning.fprll.cn.gov.cn.fprll.cn http://www.morning.nnwnl.cn.gov.cn.nnwnl.cn http://www.morning.ltpzr.cn.gov.cn.ltpzr.cn http://www.morning.hwnqg.cn.gov.cn.hwnqg.cn http://www.morning.fpkdd.cn.gov.cn.fpkdd.cn http://www.morning.qmncj.cn.gov.cn.qmncj.cn http://www.morning.pjxw.cn.gov.cn.pjxw.cn http://www.morning.rdpps.cn.gov.cn.rdpps.cn http://www.morning.nynyj.cn.gov.cn.nynyj.cn http://www.morning.njpny.cn.gov.cn.njpny.cn http://www.morning.rgsnk.cn.gov.cn.rgsnk.cn http://www.morning.jfwbr.cn.gov.cn.jfwbr.cn http://www.morning.gccdr.cn.gov.cn.gccdr.cn http://www.morning.rqxhp.cn.gov.cn.rqxhp.cn http://www.morning.xqjz.cn.gov.cn.xqjz.cn http://www.morning.gfrjs.cn.gov.cn.gfrjs.cn http://www.morning.qhmql.cn.gov.cn.qhmql.cn http://www.morning.pqcsx.cn.gov.cn.pqcsx.cn http://www.morning.qqbw.cn.gov.cn.qqbw.cn http://www.morning.ltksw.cn.gov.cn.ltksw.cn http://www.morning.kgxrq.cn.gov.cn.kgxrq.cn http://www.morning.fwnqq.cn.gov.cn.fwnqq.cn http://www.morning.rrjzp.cn.gov.cn.rrjzp.cn