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

Настройка nginx conf для серверной части Django-Rest-Framework + внешнего интерфейса Vuejs

Я использую экземпляр в Google Cloud. У меня есть приложение, которое использует DRF для api (используя gunicorn) и Vuejs на интерфейсе. я собираюсь ERR_CONNECTION_REFUSED по запросам, сделанным из браузера, и попыткам выяснить, как правильно выполнить эту настройку. Вот мой текущий файл конфигурации nginx:

upstream django-api {
    server 127.0.0.1:8000;
}

server {
    listen 80;
    server_name "SERVER_IP";
    location / {
        alias /path/to/website/;
        index index.html;
    }

    location /dist/ {
        alias /path/to/js/files;
    }

    location /api/ {
        proxy_pass http://django-api;
    }

    location /rest-auth/ {
        proxy-pass http://django-api;
    }
}

В приложении Vue я использую axios для HTTP-вызовов, и я использую SERVER_IP: 8000 в качестве базового URL-адреса / порта. Опять же, ошибка, которую я вижу в браузере:

xhr.js:178 GET http://XX.XXX.XXX.xx:8000/api/rest/url/ net::ERR_CONNECTION_REFUSED

Вы пытаетесь установить HTTP-соединение с портом 8000 на сервере, но ваш веб-сервер имеет только порт 80, открытый для внешнего мира.

Вам нужно делать запросы на порт 80 в ваших тестах.