我有 nginx 将流量转发到某个站点,示例配置:
server {
listen 80;
server_name *.company.com;
location /CentOS/7.2.1511/x86_64 {
proxy_pass http://mirror.centos.org/CentOS/7.2.1511/os/x86_64/;
}
}
如果 nginx 具有直接互联网连接,则此配置有效。但我必须使用http代理服务器才能访问Internet。在这种情况下使用 http 代理的正确配置是什么?
答案1
几乎是正确的,您的proxy_pass
指令不应包含 URI,而您应该设置主机名。
server {
listen 80;
server_name *.company.com;
location /CentOS/7.2.1511/x86_64 {
proxy_set_header Host mirror.centos.org;
proxy_pass http://mirror.centos.org;
}
}