0

我想在浏览器中打开 xyz.abc.com 但在内部(使用 python-django),我想将其映射到 abc.com/xyz 以下 nginx conf 代码有效,但我不想将用户重定向到这个新网址 (abc.com/xyz)

server {
    listen   80;
    server_name xyz.abc.com;

    location / {
        rewrite ^ http://abc.com/xyz;
        break;
}

我已经尝试了很多东西,包括使用 proxy_pass 但它不起作用。我该如何解决这个问题?

谢谢。

4

1 回答 1

1

您可以将任何 3 级域转换为 2 级:

server {
    listen   80;
    server_name ~^(?<domain>.*)\.abc\.com;

    location / {
        proxy_pass http://abc.com/$domain$request_uri;
        break;
}

在您的情况下尝试下一个:

server {
    listen   80;
    server_name xyz.abc.com;

    location / {
        proxy_pass http://abc.com/xyz$request_uri;
        break;
}

关于request_urihttp ://wiki.nginx.org/HttpCoreModule

于 2012-11-02T19:58:18.450 回答