Как правильно разрешить возникновение cors в symfony api
Развертывание моего приложения angular5+symfony Я обнаружил некоторые ошибки, независимо от того, какую конфигурацию я до сих пор получаю:
Блокировка перекрестного запроса: та же политика происхождения запрещает чтение удаленного ресурса по адресу http://api-name.real-local-domain.cu/app_dev.php/api/some-url (Причина: предварительный канал CORS не был выполнен успешно).
Проблема в том, что путь /some-url/adicionar (post) работает, но больше ничего. Я следовал некоторым документам, чтобы настроить источник Cors глобально в Apache или виртуальном хосте, но все еще не работает.
Наконец, это мой конфиг nelmio, который должен разрешать все источники
nelmio_cors:
defaults:
allow_credentials: false
allow_origin: []
allow_headers: []
allow_methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS']
max_age: 3600
hosts: []
origin_regex: false
forced_allow_origin_value: ~
paths:
'^/api/':
allow_origin: ['*']
allow_headers: ['X-Custom-Auth']
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
max_age: 3600
'^/':
origin_regex: true
allow_origin: ['*']
allow_headers: ['X-Custom-Auth']
allow_methods: ['POST', 'PUT', 'GET', 'DELETE']
max_age: 3600
hosts: ['^api\.']
Есть ли у некоторых представление о том, что происходит
Работа с Angular 5+Symfony 3.4.6(fosrest+nelmiocors)+Apache2 в Ubuntu 16.04
заранее спасибо
ОБНОВЛЕНО
Также, когда я получаю доступ к развернутому серверу, я вижу записи запроса в своей таблице, но другие не могут. Другие получили код 403, но обычно возникает проблема с заголовком cors.
Моя структура приложения:
- Домен предприятия: realdomain.cu
- Виртуальный сервер: Ubuntu 16.04
- Бэкэнд-проект:Symfony 3.4.6+corsbundle+fosrest
- бэкэнд API: project-api.realdomain.cu
- внешний интерфейс: project.realdomain.cu
оба виртуальных хоста настроены с.conf под apache/sites-available
1 ответ
Тебе нужно:
origin_regex: true
в вашем разделе "^/api/"?
Также в вашем разделе "^ /" хосты указываются как:
hosts: ['^api\.']
не должно ли быть:
hosts: ['^api-name\.']