tutorial php nginx configuration fastcgi

tutorial - Directiva nginx "servidor" con mĂșltiples entradas "server_name": siempre la primera se pasa a $_SERVER de PHP



php-fpm apache (2)

Establezca SERVER_NAME para usar $host en su configuración de fastcgi_params .

fastcgi_param SERVER_NAME $host;

Fuente: http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_param

Mi archivo de configuración tiene un bloque de directiva de server que comienza con ...

server { server_name www.example1.com www.example2.com www.example3.com;

... para permitir el acceso al sitio con diferentes nombres de dominio.

Sin embargo, $_SERVER[''SERVER_NAME''] siempre devuelve la primera entrada de server_name , en este caso http://www.example1.com

Así que no tengo manera de saber qué dominio usó el usuario para acceder al sitio.

¿Hay alguna forma de decirle a nginx / fastcgi que pase el nombre de dominio real utilizado para acceder al sitio?

La única solución que he encontrado hasta ahora es repetir todo el bloque de server para cada dominio con una entrada distinta server_name pero obviamente estoy buscando uno mejor.


Esto está destinado y la solución adecuada es usar $_SERVER[''HTTP_HOST''] en su código.

Debe interpretar SERVER_NAME como un nombre de servidor verificado y HTTP_HOST como una entrada de usuario que se puede modificar con bastante facilidad y, por lo tanto, no debe ser de confianza.