SSLl flexível do Cloudflare significa a conexão entre o cloudflare e seu servidor é sempre sobre http:
Dadoisso-oúnicoblocodeservidornaquestãodarelevânciaéeste:
server{listen80;server_nameexample.comwww.example.com;return301https://$server_name$request_uri;}
Deveseróbvioporqueissoresultaemumloopderedirecionamento,existemduassoluçõesparaforçarasconexõeshttpsusandosuasoluçãosslflexível.
UseasregrasdapáginadoCloudflare
Seoacessoaoservidorforexclusivamenteviacloudflare,vocêpodeusaropróprio
Umadasopçõeséforçarhttps:
Teste$http_x_forwarded_proto
Hámomentosemquevocêpodequererevitarousoderegrasdepágina(devemserrarasouapenastransicionais).Paraessescenários,épossíveltestaroprotocoloencaminhadoeredirecionarcombasenisso:
server{listen80;server_nameexample.comwww.example.com;if($http_x_forwarded_proto="http") {
return 301 https://$server_name$request_uri;
}
... directives to generate a response
}