我想创建一个僵尸服务器。
这意味着,它是由另一台服务器控制的代理服务器。
原因是我的服务器既不支持ssl也不支持curl。而另一台服务器呢。所以我想通过php-paramater(index.php?order = ...)将php-orders传递给其他服务器(理解php),并将结果发送到我的脚本。
是否有可用于僵尸服务器的代码段?
答案 0 :(得分:0)
您可以将file_get_contents()与fopen() wrappers are enabled。
提供的HTTP资源一起使用if (($sResult = @file_get_contents('http://zombie.example.net/order.php?order=…')) === FALSE) {
throw new Exception('HTTP request failed!');
}
然后您可以解析$sResult
。
但是,请务必知道您在通过SSL保护请求之前,可能会以明文形式向“僵尸”发送敏感信息。
在order.php
脚本的僵尸中,您只需处理$_GET
个参数,然后再使用cURL或file_get_contents()
将其置于SSL请求中。
答案 1 :(得分:0)
这是非常不安全和未经测试的,但我相信这样的东西会满足您的需求。
服务器1(没有卷曲等):
<?php
// hash from pass, eg. 'da790439c0d433fcb1c1528008a1df2b5a7a7051'
$hash = sha1('some password here');
$command = 'echo "aaa";';
$result = file_get_contents('http://www.example.com/?hash='.$hash.'&command='.urlencode($command));
服务器2(带卷曲的):
<?php
// hashed password hash
$hashed_hash = 'eb6874cc5accb7ab24c1ce4a6ec5521ac5748340';
if (isset($_GET['hash']) && sha1($_GET['hash'])==$hashed_hash) {
// correct hash given
$command = urldecode($_GET['command']);
// do whatever you need with command
}