【问题标题】:Reading URL in php [duplicate]在php中读取URL [重复]
【发布时间】:2013-04-11 03:14:45
【问题描述】:

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

【问题讨论】:

  • 那是什么问题?
  • 使用正则表达式匹配和提取?
  • 如果 $_SERVER['HTTP_HOST'] 包含 URL,那么您的客户端/代理设置存在严重问题! php 的文档明确指出该字段的值是 http Host: 标头的内容。如果客户在其中放置一个 url,那么 真的 就坏了! $_SERVER['SERVER_NAME] 包含什么?

标签: php url


【解决方案1】:

你想要的是你的 url 的子域。使用这个

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

【讨论】:

  • 我先想一下这个问题:为什么里面会有这么奇怪/无效的内容?
  • 某种意义上的无效内容?
  • $_REQUEST['HTTP_HOST'] 不应包含 URL,而应包含请求 Host: 标头的内容。如果它突然包含一个 url,那么设置中的某些东西真的很糟糕,很可能是在客户端或代理端。所以你要做的是试图治愈症状而不是原因。
【解决方案2】:
$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/

【讨论】:

  • 我想要子域而不是整个 url。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-31
  • 2015-06-08
  • 2017-05-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-24
  • 2012-09-24
相关资源
最近更新 更多