Разрешить доступ к серверу nginx только при использовании полного имени домена, а не IP

У меня есть сервер nginx, обслуживающий http://example.com , который разрешает IP 1.2.3.4. В настоящее время пользователи могут подключиться, перейдя на http://example.com или посетив http://1.2.3.4 .

Я хочу разрешить доступ только при использовании полного доменного имени, http://exmple.com . Как я могу настроить свой nginx для блокировки доступа через IP и разрешать доступ только при использовании полного доменного имени?

1
задан 17 June 2019 в 14:56

1 ответ

Вы можете создать два виртуальных хоста в Nginx. Один для доступа по умолчанию, а другой для домена.

Затем вы можете ограничить доступ для доступа по умолчанию или перенаправить на ваш домен по вашему выбору.

server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name "";
    return      444;  # or comment this and uncomment below to redirect to domain.
    #return 301 http://www.example.com$request_uri;
}
server {
    listen      80 default_server;
    listen      [::]:80 default_server;
    server_name "www.example.com";
    ...
    ...
}

Виртуальные хосты Nginx - https://tecadmin.net/setup-nginx-virtual-hosts-on-ubuntu/

0
ответ дан 17 June 2019 в 14:56

Другие вопросы по тегам:

Похожие вопросы: