当我使用以下配置访问nginx时,响应文件都相同
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
upstream tomcat_01 {
server 192.168.6.103:9763 max_fails=3 fail_timeout=600;
}
upstream tomcat_02 {
server 192.168.6.103:9763 max_fails=3 fail_timeout=600;
}
upstream default {
server 192.168.6.106:9763 max_fails=3 fail_timeout=600;
}
server {
listen 81;
server_name localhost;
set $group default;
if ($remote_addr ~ "192.168.20.52") {
set $group tomcat_01;
}
location /{
proxy_pass http://$group/static/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
index index.html index.htm;
}
}
}
当我访问http://192.168.6.103:81/时,静态文件CSS,JS响应内容都是相同的内容。我该如何解决?谢谢
答案 0 :(得分:1)
编辑:如评论中所述,如果您还从代理服务器提供静态文件,则只需使用proxy_pass而不是别名:
location ~* \.(png|gif|css|js)$ {
proxy_pass http://$group$request_uri;
}
旧答案(如果静态文件与NGINX在同一台服务器上,则可以使用):您可以根据文件类型进行位置匹配,并使用别名指定文件路径:
location ~* \.(png|gif|css|js)$ {
alias /path/to/your/static/files/;
}