Conflito de CORS após habilitar FPM em PHP

Conflito de CORS após habilitar FPM em PHP

No arquivo .htaccess em meu servidor web, tenho o seguinte conjunto de cabeçalho CORS:

Header set Access-Control-Allow-Origin "example.com"

Em um dos meus scripts PHP, que chamo frequentemente enquanto trabalho no localhost, tenho este cabeçalho definido:

header("Access-Control-Allow-Origin: *");

Isso funcionou para mim até ontem, quando ativei o FPM para PHP. Agora recebo o seguinte erro:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://www.example.com/script.php. (Reason: CORS header 'Access-Control-Allow-Origin' does not match '*, example.com').

Só estou recebendo esse erro ao ligar do localhost, não ao ligar do site. Estou me perguntando se existe uma maneira de substituir o .htaccesscabeçalho CORS via PHP agora que o FPM está habilitado.

Responder1

Motivo: o cabeçalho CORS 'Access-Control-Allow-Origin' não corresponde a '*, example.com'

Curioso, é como se Header mergetivesse sido chamado, em vez de Header set? Valores "mesclados" como este não são oficialmente suportados pelo Allow-Control-Allow-Origincabeçalho, portanto, o suporte do navegador pode variar e explicará por que não está funcionando para você.

se houver uma maneira de substituir o .htaccesscabeçalho CORS via PHP agora que o FPM está habilitado.

Eu acho que você precisará tentar fazer com que o Apache não substitua o cabeçalho definido pelo PHP (que foi definido anteriormente), em vez de o PHP substituir o Apache. Experimente a setifemptyação:

Header setifempty Access-Control-Allow-Origin "example.com"

Você também pode tentar a alwayscondição, ou seja. Header always set ....- este é um "grupo" de cabeçalhos diferente dopadrão onsuccesse deve significar que o cabeçalho está efetivamente definido duas vezes.

No entanto, também não acredito que vários Access-Control-Allow-Origincabeçalhos façam parte estritamente do padrão, portanto, o comportamento do navegador pode variar.

Veja também a seguinte pergunta relacionada no StackOverflow:

informação relacionada