Implantei um novo plugin do WordPress que depende do SSO do Discourse, mas encontrei um bug estranho que afeta apenas a implantação ao vivo do site.
No ambiente local, consigo fazer login e usar o parâmetro redirect_url para retornar à página. No entanto, no site ao vivo, o SSO só funciona se o redirect_url for a URL do wp-admin, por exemplo:
Você já encontrou algo assim antes? Tem alguma ideia de onde procurar? Se persistir, terei que criar meu próprio mecanismo de redirecionamento para capturar o wp-admin.
Haha, essa não é minha decisão, o site usa o Cloudflare como cache principal. Vou precisar pesquisar sobre proxies reversos e ver se consigo ajustar alguma configuração no CF.
Existem dezenas de tópicos sobre problemas causados pelas otimizações da Cloudflare. Você poderia usar a Cloudflare como CDN, configurando o Discourse para redirecionar apenas o conteúdo que pode ser armazenado em cache pela Cloudflare.
Você também pode desativá-la temporariamente e verificar se isso resolve o problema.
Basta desativar o “desempenho” e o “rocket loader” do Cloudflare no Discourse por meio de regras de página, o que provavelmente resolverá o problema para você.
Sim, esta é uma mistura estranha de problemas, que parece ser parcialmente devido ao diretório de instalação do WP. Por enquanto, criei uma solução alternativa que sempre redireciona para /core/wp-admin; depois, há um ?final_redirect_url final que meu próprio hook captura e executa as ações para nos levar de volta ao local desejado.