zoukankan      html  css  js  c++  java
  • 【SERVER_NAME】PHP中的SERVER_NAME【原创】

    今天碰到一个bug,做接口的时候,返回活动的链接,以前用的是:
    1
    $_SERVER['SERVER_NAME'] .'/index.php/xxxxx' 
    结果发现前面的域名是错误的。

    查文档发现$_SERVER['SERVER_NAME']输出的是apache或者是nginx里面配置文件定义的SERVER_NAME
    比如apache的配置文件httpd.conf:
    1
    <virtualhost *>
    2
    ServerName baidu.cn
    3
    ServerAlias www.baidu.cn
    4
    </virtualhost>
    那么上面的链接输出的是baidu.cn/index.php/xxxx

    这和预想的域名是不一样的,域名是应该和请求的域名是一致的,后来改成用$_SERVER['HTTP_HOST']即可。

    文档:
    _SERVER["HTTP_HOST"] 在HTTP/1.1协议规范下,会根据客户端的HTTP请求输出信息。
    _SERVER["SERVER_NAME"] 默认情况下直接输出apache的配置文件httpd.conf中的ServerName值。

    所以,在实际程序中,应尽量使用_SERVER["HTTP_HOST"] ,比较保险和可靠。
  • 相关阅读:
    ERP类系统设计学习
    人工智能关键词
    系统性能
    连接不同服务器不同数据库
    socket一个例子
    SQLite
    asp.net 页面缓存、数据缓存
    原生js
    Android 网络调试 adb tcpip 开启方法
    C语言中string char int类型转换
  • 原文地址:https://www.cnblogs.com/linewman/p/9918112.html
Copyright © 2011-2022 走看看