获取域名
时间:2021-07-01 10:21:17
帮助过:26人阅读
我在看那个ecmall核心文件ecmall.php,看到这个函数写得比较清晰,拿出来分享下
- function get_domain() {
- /* 协议 */
- $protocol = (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) ? 'https://' : 'http://';
- /* 域名或IP地址 */
- if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
- $host = $_SERVER['HTTP_X_FORWARDED_HOST'];
- } elseif (isset($_SERVER['HTTP_HOST'])) {
- $host = $_SERVER['HTTP_HOST'];
- } else {
- /* 端口 */
- if (isset($_SERVER['SERVER_PORT'])) {
- $port = ':' . $_SERVER['SERVER_PORT'];
- if ((':80' == $port && 'http://' == $protocol) || (':443' == $port && 'https://' == $protocol)) {
- $port = '';
- }
- } else {
- $port = '';
- }
- if (isset($_SERVER['SERVER_NAME'])) {
- $host = $_SERVER['SERVER_NAME'] . $port;
- } elseif (isset($_SERVER['SERVER_ADDR'])) {
- $host = $_SERVER['SERVER_ADDR'] . $port;
- }
- }
- return $protocol . $host;
- }
|