端口的Nginx别名

时间:2016-03-17 16:51:31

标签: redirect nginx

如何以domain.com/dd?

的身份访问domain.com:81

这是文件夹结构和我想要达到的目的。

/var/www/doamin.com (port 80) - http://domain.com

/var/www/dd (port 81)         - http://domain.com/dd

我使用的是Nginx。

2 个答案:

答案 0 :(得分:1)

如果我理解你的问题,你就不能这样做。 端口号需要是数字(因此我们称之为 - 数字)。

如果您需要虚拟主机,那就是不同的主题。

因此,您可以执行以下操作:

  • 将example nginx设置为exampleLocalhost.com上的/v​​ar/www/doamin.com
  • 将nginx设置为目标/ var / www / dd on anotherExampleLocalhost.com

这样您可以使用vhosts完全避免端口号,并且您将获得正确的内容,具体取决于您定位服务器的域。

答案 1 :(得分:1)

如果您真的必须使用此端口号方法,则可以创建指向domain.com:81的upstream,并在domain.com服务器上使用location /dd创建proxy_pass

server {
    listen  localhost:81;
    root    /usr/share/nginx/html/1;
    location ~* /dd/ {
        proxy_pass  http://domain$request_uri;
    }
}

server {
    listen  localhost:82;
    root    /usr/share/nginx/html/2;
}

upstream domain {
    server localhost:82;
}

我已在dd目录中创建/usr/share/nginx/html/2目录,以便将/dd作为URI的一部分。