当前位置 主页 > 服务器问题 > nginx问题汇总 >

    Nginx常用功能详解(2)

    栏目:nginx问题汇总 时间:2018-10-17 16:24

    server_name     www.iis7.com *.jb51.net jb51.net
    现在我不管用什么域名访问, $_SERVER["SERVER_NAME"] 都只会返回 www.iis7.com !!这是个很严重的问题,对泛域名造成了致命的影响!

    既然有问题,就肯定有解决方案。。在wiki主翻了N久,终于找到了需要的资料!原来:$_SERVER["SERVER_NAME"] 返回的值是由 Nginx 的 fastcgi_param 中 SERVER_NAME 提供的,而默认的配置为:
    fastcgi_param  SERVER_NAME    $server_name;
    Nginx中 $server_name 变量就是上面设置的域名,只会返回第一个!
    这下好办了,把上面的配置改成:

    fastcgi_param  SERVER_NAME    $host;
    就行了。

    另外还需要在server_name配置后面加一行:

    server_name_in_redirect off;
    意思是 让 nginx 在处理自己内部重定向时不默认使用  server_name 设置中的第一个域名!