Назад | Перейти на главную страницу

Перенаправление nginx на другой внутренний порт не работает

У меня есть экземпляр nginx, работающий на порту 80, и другое приложение (встроенная пристань), работающее на том же компьютере на порту 4567.

Я пытаюсь перенаправить любой запрос, который включает /api/ в URL-адресе на сервер, работающий на порту 4567.

Для этого я добавил следующее внутри тега контекста http в nginx.conf файл:

server {
        listen 80;
        location /api {
                proxy_pass http://127.0.0.1:4567;
        }
}

Но это не работает. Я просто получаю 404 Not Found из nginx всякий раз, когда я пытаюсь запросить любой URL-адрес, который включает /api/*.

Что мне не хватает? Спасибо.

Я думаю, что ваше местоположение неверно, используйте

location /api/ { 
 proxy_pass http://127.0.0.1:4567; 
}

Добавьте косую черту в конце вашего местоположения.

Нашел решение.

Вместо добавления этой конфигурации в nginx.conf, Я добавил это в /etc/nginx/sites-enabled/default и, похоже, это помогло.