Nginx - 如果IP未列入白名单,则显示特定页面

时间:2017-07-01 20:17:06

标签: nginx

我希望拥有IP白名单,如果您的IP不在列表中,那么它会向您comingsoon.html提供。

我怎样才能做到这一点?

目前我已设置白名单,但我不知道如何将特定页面提供给不在白名单中的IP

这就是我目前服务器阻止的内容:

server {
        listen 80;

        root /var/www/public;
        index index.php;

        server_name example.dev 192.168.33.10;

        error_page 404 /404.php;

        location / {
        allow 10.0.1.26;
        deny all;
        }

        location ~ \.php$ {
        try_files $uri =404;
        fastcgi_index index.php;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
        fastcgi_intercept_errors on;
        include fastcgi_params;
        }

        location ~ /\.ht {
        deny all;
        }
}

1 个答案:

答案 0 :(得分:2)

您可以使用error_page的{​​{1}}指令:

403 Forbidden

如果您还想将响应代码更改为error_page 403 /comingsoon.html;

200 OK

参考:error_page