Nginx Location 匹配到多个静态文件路径

发布于 2022-09-11 17:10:51 字数 1135 浏览 11 评论 0

问题描述

RT 想设置两个不同的前端项目访问不同的静态资源,但是不知道如何设置,例如
wechat 访问 wechat 路径下的 css 和 js 文件
manager 访问 manager 路径下的 css 和 js 文件

问题出现的环境背景及自己尝试过哪些方法

Nginx 配置中 用了好几种正则和直接目录访问 但是都无效, 使用通配符的话就没法返回指定的 js

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

server {
        listen 80;
        server_name 127.0.0.1;
        root /opt/;
        location / {
            try_files $uri @gunicorn_proxy;
        }

        location @gunicorn_proxy {
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_pass http://localhost:5000;
        }

        location /wechat/ {
            index index.html;
            try_files $uri $uri/ /index.html;
        }

        location /manager/ {
           index index.html
           try_files $uri $uri/ /index.html;
        }

        location ~*.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$ {
            root /opt/manager/;
        }

        location /wechat/(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$ {
            root /opt/wechat/;
        }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

两人的回忆 2022-09-18 17:10:51
location /wechat {
            index index.html;
            try_files $uri $uri/ /wechat/index.html;
        }

        location /manager {
           index index.html
           try_files $uri $uri/ /manager/index.html;
        }
ま昔日黯然 2022-09-18 17:10:51

location之间是讲究先后顺序的,把最后一个location放在最前面试试。
而且/wechat/(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$这个正则有点问题吧?能匹配图片嘛?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文