【发布时间】:2021-02-16 09:24:24
【问题描述】:
当使用 apache 处理程序而不是 FastCGI / PHP-FPM 时,我可以使用一种解决方法来响应预检 HTTP 请求,检查 REQUEST_METHOD 并返回 http 代码 200。
但是使用 FastCGI 处理程序时,相同的代码不起作用,并且 chrome 无法显示 Access-Control-Allow-Origin is found on request。
有没有办法让它工作?
$http_origin = $_SERVER['HTTP_ORIGIN'];
header("Access-Control-Allow-Origin: $http_origin");
header("Access-Control-Allow-Headers: Content-Type, Origin, Authorization");
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Methods', 'GET, POST, PUT, PATCH, DELETE, OPTIONS');
header('Content-Type: application/json');
if ($_SERVER['REQUEST_METHOD'] == "OPTIONS"){
exit(0);
}
【问题讨论】: