Регулярное выражение Nginx для css и js - PullRequest
0 голосов
/ 22 апреля 2020

В качестве моей конфигурации я хотел бы использовать css и js в location / luz_online_web, только доступ к /luz_online_web/*.css или. js - это proxy_pass для http://110.134.0.20 : 8085 / luz_online_web / .

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. Если я удаляю фильтр и устанавливаю location / luz_online_web /, они могут быть загружены, путь к файлу js, такой как

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

enter image description here

Есть идеи?

1 Ответ

0 голосов
/ 22 апреля 2020

Моя проблема решена, я удаляю $ в конце расположения регулярного выражения из-за. css и. js между URL вместо конца.

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