gpt4 book ai didi

Nginx通配符代理,将子域名传递给服务器(上游代理)

转载 作者:行者123 更新时间:2023-12-02 18:30:05 32 4
gpt4 key购买 nike

我希望能够将 subdomain.domain.com 传递到 .domain.com apache 服务器,以及 subdomain 信息。

我想为域创建一个 nginx 缓存,其作用类似于通配符,但将子域传递到目的地(也有 apache 女巫通配符)。到目前为止,我通过 proxy_set_header Host $host; 传递信息,但我想在 apache 服务器上发出带有子域的请求。

  upstream domain.com {
server 172.1.1.1:80 weight=50 fail_timeout=30s;
}

server {
server_name *.domain.com;

location / {
proxy_pass http://domain.com;
#proxy_pass $request;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
}

location ~* ^.+. (jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|swf)$ {
proxy_pass http://topmanagergame.com;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_cache my-cache;
proxy_cache_valid 200 302 30m;
proxy_cache_valid 404 1m;
}

access_log /var/log/nginx/domain.com.log main;
error_log off;
}

你认为我可以在上游使用 proxy_pass 吗?

Nginx (*wildcard_domain.com) --(cache)--> Apache (*wildcard_domain.com)
Nginx (anything.domain.com) --(cache)--> Apache (anything.domain.com)

最佳答案

upstream somestring {
server domain2.com:80 weight=50 fail_timeout=30s;
}

server {
listen 80;
server_name *.domain.com;

server_name ~^(?<subdomain>.+)\.domain\.com$;

location / {
proxy_pass http://somestring;
proxy_set_header Host $subdomain.domain2.com;
}
}

关于Nginx通配符代理,将子域名传递给服务器(上游代理),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12950572/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com