2013-04-18 72 views
0

我想检查请求来自哪个URL LIKE --- www.mysite.com or bussiness.mysite.com。我们如何检查它,因为$ _SERVER ['HTTP_HOST']给出整个URL。 谢谢。在php中的阅读URL

+1

又是什么问题呢? – swapnesh 2013-04-18 06:07:56

+0

使用正则表达式来匹配和提取? – 1337holiday 2013-04-18 06:08:05

+1

如果$ _SERVER ['HTTP_HOST']'包含一个URL,那么您的客户端/代理设置存在一些严重问题! php的文档明确指出,该字段的值是http“Host:'头部的内容。如果客户端放置了一个URL,那么_really_被破坏了! '$ _SERVER ['SERVER_NAME]'包含什么? – arkascha 2013-04-18 06:10:52

回答

0

你想要的东西是你的网址的子域。使用此

$subdomain = array_shift(explode(".",$_SERVER['HTTP_HOST'])); 
+2

我首先想到了这个问题:为什么在那里有这样的奇怪/无效的内容? – arkascha 2013-04-18 06:12:59

+0

意义上的内容无效? – 2013-04-18 06:14:57

+0

$ _REQUEST ['HTTP_HOST']不应该包含一个URL,而是请求'Host:'头部的内容。如果它突然包含一个url,那么在安装过程中会发生一些事情,最有可能是在客户端或代理端。所以你所做的是试图治愈症状而不是原因。 – arkascha 2013-04-18 07:42:41

1
$domain = $_SERVER['HTTP_HOST']; 
$path = $_SERVER['SCRIPT_NAME']; 
$queryString = $_SERVER['QUERY_STRING']; 
$url = "http://" . $domain . $path . "?" . $queryString; 
echo "The current URL is: " . $url . ""; 

visit :http://www.2basetechnologies.com/ 
+0

我想子域不是一个完整的网址。 – Akash 2013-04-18 06:52:40