Nginx:将IP地址重定向到域名

Mat*_*oli 17 nginx redirect

使用以下 Nginx 配置:

server {
    listen 80;
    listen [::]:80 default_server ipv6only=on;

    server_name isitmaintained.com;

    ...
}

server {
    listen 178.62.136.230:80;
    server_name 178.62.136.230;

    add_header X-Frame-Options "SAMEORIGIN";

    return 301 $scheme://isitmaintained.com$request_uri;
}
Run Code Online (Sandbox Code Playgroud)

我试图重定向http://178.62.136.230/http://isitmaintained.com/,但是当我部署这个配置时,我最终得到了一个Redirect loop或两个链接。

我究竟做错了什么?

Ter*_*nen 37

在第二个块上试试这个:

server {
    listen 80;
    server_name 178.62.136.230;

    return 302 $scheme://google.com$request_uri;
}
Run Code Online (Sandbox Code Playgroud)

问题是第二个服务器块listen指令比第一个服务器块更具体,因此它总是被使用。由于第二个块是该listen规范的唯一虚拟主机,因此始终使用它。

注意:301 将添加永久重定向。使用 302 进行测试。