Проблемы с CORS в nginx

Рейтинг: 0Ответов: 0Опубликовано: 22.05.2023

Я сделал простой прокси на nginx который направляет на localhost:3000,на 3000 порту у меня запущен React JS. При переходе на главную страницу все нормально, но не выводит данные полученные от сервера другого(127.0.0.1:8000) т.к. firefox блокирует их из за CORS. Сама ошибка в консоле браузера:Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на http://127.0.0.1:8000/api/vds/product_order/. (Причина: не удалось выполнить запрос CORS). Код состояния: (null).

Добавил в файл конфигурации nginx add_header вот так :

   server {
        add_header Access-Control-Allow-Origin *;

        location / {
            add_header "Access-Control-Allow-Origin" *;
            add_header "Access-Control-Allow-Methods" "GET, POST, OPTIONS";
            proxy_pass http://localhost:3000;
        }

        location ~ \.(gif|png|jpg)$ {
            add_header Access-Control-Allow-Origin *;
            add_header "Access-Control-Allow-Methods" "GET, POST, OPTIONS";
            root /home/lostik/data/images;
        }

Пробовал и дугие варианта по типу if ($request_method), не чего не помогло. Так же попробовал в коде написать header вот так :

    static async get_order_product() {
        const res_product = await axios.get('http://127.0.0.1:8000/api/vds/product_order/',{
            headers:{"Access-Control-Allow-Methods":'http://127.0.0.1:8000/api/vds/product_order/'}
         })

        return res_product.data

Так же безуспешно. Всё это работает на виртуальной машине linux. Можно ли это как то исправить? И надо ли создавать еще прокси сервер для 127.0.0.1:8000?

Ответы

Ответов пока нет.