Ошибка nginx Access-Control-Allow-Origin

Ошибка nginx Access-Control-Allow-Origin

Ошибка в консоли разработчика (в браузере Chrome)

has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource

Решение. Добавить в конфиг nginx:

location / {
add_header 'Access-Control-Allow-Origin' '*';
try_files $uri $uri/ /index.html;

При добавлении в конфиг другой строчки:

add_header 'Access-Control-Allow-Origin' '*' always;

ошибка описанная выше пропала, но появилась такая:

has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.

Тут надо отметить, что в моём случае используются прокси-сети и swarm, поэтому ситуация отличается, когда nginx всё проксирует в пределах одного хоста (и получается одной сети).


Ссылки по теме.

Тут вариант с предложением доработать приложение, а не конфиги — https://qna.habr.com/q/974185

По самой ошибки описанной в теме, что прописать в конфиг — https://serverfault.com/questions/162429/how-do-i-add-access-control-allow-origin-in-nginx

Добавить комментарий