从 PHP 发布到 ASP 页 returns 原始源代码

posting from PHP to ASP page returns raw source code

我正在尝试 post 从 PHP 到 ASP 页面的数据。这是 PHP 代码:

$url = 'test.asp';
$data = array('q' => 'test');

$options = array(
    'http' => array(
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'content' => http_build_query($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);
if ($result === FALSE) { 
  //Handle error
 }

var_dump($result);

这是 ASP 页面:

<%Response.Write(request("q"))%>

当我调用 PHP 页面时,它打印 <%Response.Write(request("q"))%>。我正在安装经典 Asp 和 Php 的 IIS 上测试此结构。

虽然 test.asp 在某些情况下是亲戚 URL,但它不在这里。

file_get_contents 只会在您传递 absolute URL 时发出 HTTP 请求(例如,以 http://www.example.com/ 开头)。

向它传递一个文件名将导致它从本地文件系统读取,这将绕过任何将执行 ASP 代码的 HTTP 服务器模块。