Eu tenho a seguinte configuração do servidor:
server {
listen 7777;
server_name localhost;
rewrite ^/standardlib/(.*)$ /standardlib/src/main/webapp/$1 last;
location / {
root D:\Projects\gibr;
index index.html index.htm;
}
location /api {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
proxy_pass http://172.22.90.61:8008;
}
}
Eu tenho o seguinte link para o recurso:
http://localhost:7777/standardlib/resources/css/standardlib.css
Mas o arquivo está dentro:
/standardlib/src/main/webapp/resources/css/standardlib.css
Estou tentando reescrever o URL:
rewrite ^/standardlib/(.*)$ /standardlib/src/main/webapp/$1 last;
Mas, por algum motivo, não funciona. Eu adicionei logging:
error_log logs/error.log notice;
rewrite_log on;
Mas não há informações no registro de erros sobre a regravação.
Eu verifiquei o regex com regex101 e parece estar capturando o grupo correto.
O que estou fazendo de errado?
UPDATE
Na verdade, estou adicionando log_not_found on;
, mas, por algum motivo, ele tenta encontrar o seguinte arquivo:
'D:\webservers\nginx/html\standardlib\src\main\webapp\bootstrap.js'
em vez de
'D:\projects\gibr\standardlib\src\main\webapp\bootstrap.js'
Aqui está o que eu tenho no log:
15128#7720: *1 "^/standardlib/(.*)$" matches "/standardlib/bootstrap.js"
15128#7720: *1 rewritten data: "\standardlib\src\main\webapp\bootstrap.js"
15128#7720: *1 CreateFile() "D:\webservers\nginx/html\standardlib\src\main\webapp\bootstrap.js" failed (3: The system cannot find the path specified)