首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >适用于css和js的Nginx位置正则表达式

适用于css和js的Nginx位置正则表达式
EN

Stack Overflow用户
提问于 2020-04-22 12:57:38
回答 1查看 1.2K关注 0票数 0

根据我的配置,我希望在位置/luz_online_web中提供css和js,只有访问/luz_online_web/*.css或.js的权限才能被proxy_pass到http://110.134.0.20:8085/luz_online_web/

代码语言:javascript
复制
server {
    server_name ~(?<name>[^.]+)\.dev\.abc\.io$;
    location  / {
      proxy_pass http://110.134.0.20:8085/luz_online_web/$name$request_uri;
      include /etc/nginx/klara-reverse.conf;

    }
    location ~* ^/luz_online_web/(.+\.(css|js))$ {
        rewrite ^/luz_online_web/(.*)$ /luz_online_web/$1 break;
        proxy_pass http://110.134.0.20:8085;
    }
}

但是当我访问网站时,css和js文件仍然不能加载。CSS、JS文件位于/luz_online_web目录,而其他文件(HTML、PNG..)存储在/luz_online_web/name目录中。如果我删除过滤器并设置位置/luz_online_web/,它们可能会被加载,js文件的路径,例如

/luz_online_web/javax.faces.resource/jsf.js;jsessionid=SnhEULxbunZ9F6OEGRtJrMmy

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2020-04-22 17:43:20

我的问题解决了,我在正则表达式位置的末尾删除了$,因为.css和.js在URL之间而不是结尾。

代码语言:javascript
复制
location ~* ^/luz_online_web/(.+\.(css|js)) {
    rewrite ^/luz_online_web/(.*) /luz_online_web/$1 break;
    proxy_pass http://110.134.0.20:8085;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61357589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档