PHP 在Apache或IIS中使用PHP获取当前URL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 在Apache或IIS中使用PHP获取当前URL相关的知识,希望对你有一定的参考价值。

// On Apache ->

function selfURL() {
	$s = empty($_SERVER["HTTPS"]) ? ''
		: ($_SERVER["HTTPS"] == "on") ? "s"
		: "";
	$protocol = strleft(strtolower($_SERVER["SERVER_PROTOCOL"]), "/").$s;
	$port = ($_SERVER["SERVER_PORT"] == "80") ? ""
		: (":".$_SERVER["SERVER_PORT"]);
	return $protocol."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI'];
}
function strleft($s1, $s2) {
	return substr($s1, 0, strpos($s1, $s2));
}

// On IIS ->

function selfURL(){
    if(!isset($_SERVER['REQUEST_URI'])){
        $serverrequri = $_SERVER['PHP_SELF'];
    }else{
        $serverrequri =    $_SERVER['REQUEST_URI'];
    }
    $s = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : "";
    $protocol = strleft(strtolower($_SERVER["SERVER_PROTOCOL"]), "/").$s;
    $port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]);
    return $protocol."://".$_SERVER['SERVER_NAME'].$port.$serverrequri;   
}

// Get Current URL ->

print(selfURL());

以上是关于PHP 在Apache或IIS中使用PHP获取当前URL的主要内容,如果未能解决你的问题,请参考以下文章

检查Apache或IIS服务器上是否安装了PHP?

使用线程安全或非线程安全的php?

php在Windows2003下的IIS配置php5.4

Windows IIS配置Jsp和php环境方法

IIS+php服务器无法上传图片(500 错误)

Windows+IIS+Mysql+php安装