CURL POST后重定向不会更改URL

时间:2013-01-28 19:25:03

标签: php curl

我有一个位于我网站上的表单。提交表单时,需要将该信息发布到内部(或外部)网站,然后将浏览器重定向到该内部(或外部)网站。

表单位于https://www.mysite.com/form.php

<?php
$urlToPostTo = 'https://www.mysite.com/postPage.php';
$urlToRedirectTo = 'https://www.mysite.com/redirectPage.php';

$curlConnection = curl_init($urlToPostTo);
curl_setopt($curlConnection, CURLOPT_POST, true);
curl_setopt($curlConnection, CURLOPT_POSTFIELDS, $valuesToPost);

curl_exec($curlConnection);
curl_close($curlConnection);

header("Location: $urlToRedirectTo");
exit;

?>

表单使用CURL正确发布,我看到的最终页面是$urlToRedirectTo,但浏览器中列出的网址仍然是mysite.com网址。

如果POST和Redirect页面在外部域上,一切正常。浏览器中的URL会发生变化。只有当它是一个同域URL时,它才会执行这种奇怪的行为。通常,它会被发布到外部URL,但我需要它才能正常工作,因为它是一个内部URL,而不必编写单独的代码。

注意:要发布到/重定向的URL作为变量发送给我 - 我不知道它是否指向内部或外部域。

有关如何使其正确处理内部重定向的任何想法(更新浏览器URL)?

0 个答案:

没有答案