Я пытаюсь заставить nGinx прокси-запрос на отдельный веб-сервер MoinMoin (Python Wiki).
До сих пор я использовал два виртуальных сервера:
server {
listen 80;
server_name my-domain.com www.my-domain.com;
location / {
root /path-to-dir;
index index.html;
}
}
server {
listen 80;
server_name subdomain-1.my-domain.com;
location / {
root /path-to-dir;
index index.html;
}
}
Один был для my-domain.com, а второй был для subdomain-1.my-domain.com. Они оба обслуживали статический контент. Они оба бегают без проблем.
Теперь мне нужно запустить сервер веб-приложений, и я хотел бы сделать его доступным с subdomain-2.my-domain.com. Пока я добавил это:
server {
listen 80;
server_name subdomain-2.my-domain.com;
location / {
proxy_pass http://127.0.0.1:8000;
include /etc/nginx/proxy_params;
}
}
Сервер веб-приложений запущен и работает - я могу получить к нему доступ с хоста.
Но когда я пытаюсь получить к нему доступ с помощью URL-адреса subdomain-2.my-domain.com, все, что я получаю, это корень subdomain-1.my-domain.com.
Почему так?
И как мне настроить nGinx, чтобы сделать мой сервер веб-приложений доступным?
Хорошо, после комментария Алексея я нашел решение.
Проблема заключалась в том, что я использовал неправильную команду, чтобы остановить сервер nGinx. Команда не делала свою работу. Таким образом, фактически, сервер вообще не был перезапущен, и использовалась старая конфигурация.
Теперь, когда я перезапустил сервер (используя разные команды), все работает как надо.
Извлеченный урок: когда вы останавливаете свой сервер, убедитесь, что он действительно остановился. Попробуйте получить доступ к вашей веб-странице - она должна быть недоступна. Это был шаг, который я пропустил.