【发布时间】:2018-09-07 14:54:21
【问题描述】:
部署我的 angular5+symfony 应用程序我发现了一些错误,不管我的配置是什么,我仍然得到:
跨域请求被阻止:同源策略不允许读取 远程资源在 http://api-name.real-local-domain.cu/app_dev.php/api/some-url (原因:CORS 预检通道未成功)。
问题是路径 /some-url/adicionar (post) 有效,但没有别的。我已经按照一些文档在 apache 或虚拟主机中全局设置 CORS 来源,但仍然无法正常工作。
最后这是我的 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\.']
有人知道发生了什么
使用 Ubuntu 16.04 上的 Angular 5+Symfony 3.4.6(fosrest+nelmiocors)+Apache2
更新
此外,当我访问已部署的服务器时,我可以在我的表中看到请求的记录,但其他人看不到。其他人收到 403 代码响应,但通常是获取 CORS 标头问题。
我的应用结构:
- 企业域:realdomain.cu
- 虚拟服务器:Ubuntu 16.04
- 后端项目:Symfony 3.4.6+corsbundle+fosrest
- 后端api:project-api.realdomain.cu
- 前端:project.realdomain.cu
两个虚拟主机都在 apache/sites-available 下配置了 .conf
【问题讨论】:
标签: angular symfony cors symfony-3.4 nelmiocorsbundle