Проблема с несколькими КОРСАМИ с Symfony, Нельмио

#symfony #cors #nelmioapidocbundle

Вопрос:

Я создал API с помощью symfony и FOSRestBundle и подключился к нему с помощью интерфейса VueJS. Это прекрасно работает локально. Но, оказавшись в сети, некоторые маршруты возвращают ошибку CORS.

Доступ к XMLHttpRequest по адресу ‘https://api.domain.com/route» от происхождения «https://front-end.com/route» был заблокирован политикой CORS: заголовок «Доступ-Контроль-Разрешить-Происхождение» содержит несколько значений «https://front-end.com, https://front-end.com», но разрешен только один.

Очевидно, поэтому сервер возвращает заголовок дважды. И я понятия не имею, почему, потому что я определил это только один раз.

Я использую Nelmio для определения CORS.

Моя конфигурация Nelmio в /config/пакеты/nelmio_cors.yaml

 nelmio_cors:
defaults:
    origin_regex: true
    allow_origin: ['%env(CORS_ALLOW_ORIGIN)%']
    allow_methods: ['GET', 'OPTIONS', 'POST', 'PUT', 'PATCH', 'DELETE']
    allow_headers: ['Content-Type', 'Authorization']
    expose_headers: ['Link']
    max_age: 3600
paths:
    '^/': ~
 

В файле .env :

 ###> nelmio/cors-bundle ###
CORS_ALLOW_ORIGIN='^https?://(front-end.com|localhost|127.0.0.1)(:[0-9] )?

Это отлично работает локально, но однажды на моем общем хостинге он возвращает ошибку, показанную выше. И что я нахожу странным, некоторые маршруты работают нормально и возвращают ответы. Но другие маршруты возвращают ошибку CORS, даже если источник не изменился.

Пожалуйста, кто-нибудь сталкивался с этой проблемой раньше? Пожалуйста, помогите мне.


Комментарии:

1. Возможно, ваш обратный прокси-сервер общего хостинга делает какие-то странные вещи. Таким образом, вполне возможно, что ваше приложение отправляет правильный заголовок.

###< nelmio/cors-bundle ###
Это отлично работает локально, но однажды на моем общем хостинге он возвращает ошибку, показанную выше. И что я нахожу странным, некоторые маршруты работают нормально и возвращают ответы. Но другие маршруты возвращают ошибку CORS, даже если источник не изменился.

Пожалуйста, кто-нибудь сталкивался с этой проблемой раньше? Пожалуйста, помогите мне.

Комментарии:

1. Возможно, ваш обратный прокси-сервер общего хостинга делает какие-то странные вещи. Таким образом, вполне возможно, что ваше приложение отправляет правильный заголовок.