如何在不添加端口号的情况下使用NginX进行301重定向?

时间:2015-09-14 12:38:41

标签: redirect nginx http-status-code-301

我需要301使用nginx将整个目录的内容重定向到另一个目录。虽然我的配置有效,但不幸的是它还暴露了端口号。我猜这是一个副作用,因为特定域的入站流量是通过HAProxy ACL规则处理到8000端口,而url本身是端口80。

这是我的nginx conf:

server {
    listen       8000;
    port_in_redirect off;
    location ~* ^/data/dir1/(.*)$ {
            return 301 /data/dir2/$1;
    }
    ...

从网址重定向: domain.com/data/dir1 / ... 至: domain.com:8000/data/dir2 /...

我怎样才能摆脱URL重定向中的8000?

1 个答案:

答案 0 :(得分:0)

您可以使用没有端口号的绝对URL:

return 301 http://domain.com/data/dir2/$1;

HAProxy应该完成剩下的工作。