Я пытаюсь получить доступ к файлу PHP (который содержит инструкции по перенаправлению) через Windows cmd, используя ideviceactivation из libimobiledevice. Файл хранится в GearHost. Прежде чем я начал получать эту ошибку, я хотел бы указать каталог файла в командной строке, и ideviceactivation получит доступ к файлу PHP и перенаправит на указанный URL-адрес, где другой файл PHP размещен и содержит фактические инструкции для программы. Однако я больше не могу успешно получить файл перенаправления для доступа к реальному файлу без следующей ошибки:
Connection #0 to host (redirect file host) left intact
error_message: Failed to connect to (actual file host) port 80:
Timed out<br>error_no: 7
Это прекрасно работает, если я указываю каталог реального файла PHP через командную строку, но это не моя цель.
Вот часть моего кода для перенаправления. Для доступа ко второму файлу используется curl:
$_POST['activation-info'] = $data;
$myurl = "http://website.com/secondphpfile";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL , $myurl );
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Expect: 100-continue", "Accept: */*", "Content-Length: ".strlen($_POST['activation-info']), "Content-Type: multipart/form-data; boundary=------------------------0edb00d9406ed52e--------------------------0edb00d9406ed52e"));
curl_setopt($ch, CURLOPT_USERAGENT , "iOS Device Activator
(MobileActivation-20 built on Jan 15 2012 at 19:07:28)" );
curl_setopt($ch, CURLOPT_POST , 0);
curl_setopt($ch, CURLOPT_POSTFIELDS , $_POST['activation-info']);
$xml_response = curl_exec($ch);
if (curl_errno($ch)) {
$error_message = curl_error($ch);
$error_no = curl_errno($ch);
echo "error_message: " . $error_message . "<br>";
echo "error_no: " . $error_no . "<br>";
}
curl_close($ch);
Предполагается, что этот код перенаправляет в файл с указанным значением $ myurl, но возвращает вышеуказанную ошибку. Любые предложения будут потрясающими!