Как правильно разрешить возникновение 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\.']
Другие вопросы по тегам