2012-07-30 38 views
0

我有一个通过自定义php文件重定向的表单(用重力表单构建)。

如果我把重定向到“/custom_redirect.php”表格发送给我“http://www.subdomain.mydomain.com/:/custom_redirect.php”导致404,因为“/ :“或”:/“然而你想看看它。

如果我通过“http://www.mydomain.com/custom_redirect.php”来源,它会正常工作。但我需要抓住他们从第一次来到的URL,这样我就可以将其

header('Location: .........') 

如果我抢

$x = $_SERVER['REQUEST_URI']; 
$y = $_SERVER['SERVER_NAME']; 

他们打印

(x).... /custom_redirect-x.php?JOHN+DOE&title=FOO+BAR 
(y).... www.mydomain.com 

类似$ Y,“$ _SERVER ['SERVER_NAME'];“,

...有没有办法抓住SUBDOMAIN,所以我可以用

(y).... www.SUBDOMAIN.mydomain.com 
+0

你能后的形式?你可能想看看'$ _SERVER ['HTTP_REFERER']'并解析 – Fabrizio 2012-07-30 19:17:55

+0

我用'$ _SERVER ['HTTP_REFERER']'得到的问题是,即使使用'parse_url($ _ SERVER ['],它也是完全不可靠的 – Xhynk 2012-07-30 19:21:19

+0

HTTP_REFERER'])'(http://php.net/manual/en/function.parse-url.php) – Fabrizio 2012-07-30 19:22:12

回答

0

你想看看parse_url结合$_SERVER['HTTP_REFERER']

$info = parse_url($_SERVER['HTTP_REFERER']); 
echo $info['host']; 
+0

我加了那个字符串来查看结果并得到了'(z)= www.mydomain.com',没有前一个url的子域:/ – Xhynk 2012-07-30 19:28:25

+0

咦?之前的url? – 2012-07-30 19:34:36

+0

'http:// www.subdomain.mydomain.com /'有形式,它需要通过'http:// www.mydomain.com/custom_redirect.php'重定向,使用'$ _SERVER ['HTTP_HOST ']'只为我提供了'www.mydomain.com',sans-subdomain。 – Xhynk 2012-07-30 19:38:17