it编程 > 前端脚本 > Powershell

nginx中return和rewrite指令同时存在先执行顺序哪个

363人参与 2024-09-17 Powershell

前文

如果return指令rewrite指令同时存在先执行哪个呢?

场景示例

模拟数据

server {
    location /images {
        rewrite /images/(.*)$ /pic/$1 last;  
        return 200 "return 200 in /images";
    }
    
    location /pic {
         rewrite /pic/(.*) /photos/$1;
         return 200 "return 200 in /pic";
    }
    
    location /photos {
        return 200 "return 200 in /photos";
        
    }
}

分别在/images/pic/photos的location段增加return 返回200状态码并输出字符串

流程

场景2

如果在/pic段中增加flag的break,会执行什么?

当遇到break,会重写找/photos段,不会执行return 200 in /pic

注意事项

如果当你直接访问xxx.com/photos/index.html, 但是又有return指令, 会优先执行return指令 , 并不会返回photos/index.html的页面,直接返回return结果给你。

如果没有return指令才会找目录对应下的有没有index.html文件。

总结 

到此这篇关于nginx中return和rewrite指令同时存在先执行顺序哪个的文章就介绍到这了,更多相关nginx中return和rewrite指令执行顺序内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Shell中如何用find命令查找指定文件或目录

09-17

Nginx中return和rewrite的写法及区别浅析

09-17

Linux使用systemd服务和crontab实现Shell脚本开机自动运行过程

09-12

Linux上读取或设置环境和shell变量的教程

10-21

linux如何通过crontab命令定时执行shell脚本

10-22

windows为什么有两个命令行工具? PowerShell VS 命令提示符区别对比

10-30

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论