Я пытаюсь настроить установку nginx на Amazon Lightsail VPS под управлением Debian (не пакет Nginx Bitnami). Я немного новичок в этом деле. Я полностью озадачен тем, что происходит.
Вывод ls -l /etc/nginx/sites-enabled
:
lrwxrwxrwx 1 root root 39 27 июля 16:39 статический -> /etc/nginx/sites-available/static
Содержание /etc/nginx/sites-available/static
:
сервер { слушать 80; слушать [::]:80; server_name 'ИМЯ ДОМЕНА' www.'ИМЯ ДОМЕНА' www1.'ИМЯ ДОМЕНА' 'IP-АДРЕС СЕРВЕРА' корень /var/www/static индекс index.html; расположение / { индекс index.html; try_files $uri $uri/ =404; } }
В приведенном выше примере DOMAIN_NAME
и IP ADDRESS
являются заполнителями для реального текста.
Вывод nginx -T
показывает содержимое, static
отображаемое после содержимого /etc/nginx/nginx.conf
. В этом выводе нет server-name
строк, кроме тех, что находятся в static
.
/var/log/nginx/access.log
показывает доступы, когда я ввожу основное доменное имя, но не имена поддоменов. В любом случае, ввожу ли я поддомен или только основной домен, мне показывается страница приветствия.
Что еще более загадочно, так это то, что страница приветствия, похоже, находится по адресу /var/www/html/index.html
. Поэтому я изменил и этот файл в качестве теста. Но измененная версия также не отображалась.
Я в растерянности. Что я сделал не так?
решение1
Комментарий @RichardSmith к вопросу указал мне правильный ответ.
Я использовал код с других сайтов для создания своего файла блока сервера ( /etc/nginx/sites-available/static
). Но часть этого кода была неправильной — он не завершал каждую строку ;
.
После этого я добавил это в файл, вот так:
сервер { слушать 80; слушать [::]:80; server_name 'ИМЯ ДОМЕНА' www.'ИМЯ ДОМЕНА' www1.'ИМЯ ДОМЕНА' 'IP-АДРЕС СЕРВЕРА'; корень /var/www/static; индекс index.html; расположение / { индекс index.html; try_files $uri $uri/ =404; } }
Все сработало идеально!
Примечание:Хотя хотелось nginx -t
бы предупредить меня об этом...