1

Эта настройка предназначена для совместного использования нескольких доменов на одной платформе CMS. Это позволит любому домену указывать на ip моего сервера.

Я могу использовать nginx имя_сервера _; поймать всех.

Но тогда я хотел бы 301 перенаправить на www (добавление www. Infront), если www нет. Если www присутствует, это нормально.

Как я могу достичь этого?

1 ответ1

0

Примерно так может работать (не проверено!):

server {
    server_name  ~^www\.;
    <deliver content here>
}
server {
    server_name  ~^(?!www\.);
    location / {
        return 302 $scheme://www.$host$request_uri;
    }
}

Есть и другие варианты, отсутствующие сейчас! Как "слушать" и "местоположение".
Вероятно, вам следует добавить еще один блок сервера с общедоступным ip-адресом сервера, который перенаправляет трафик не vhost на сайт по умолчанию.
Вы должны обратить внимание на порядок, в котором обрабатывается директива server_name: http://nginx.org/en/docs/http/server_names.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .