2014-09-26 3 views
-4

Я знаю, что на это ответили много раз. Однако в моем случае мне нужно сначала подключиться к хосту, а затем создать туннель. Я просто скопировал это с другого. Вот оно:Как вы называете API в php?

$fp = ssh2_connect('xxx.xxx.xx.xxx', xxxx); 

if (ssh2_auth_password($fp, 'username', 'password')) { 
      echo "Authentication Successful!<br>"; 
      $connection = ssh2_tunnel($fp, 'xxx.xx.xx.xx', xx); 

      if($connection){ 
       echo "Authentication Successful!<br>"; 

       $service_url ='Sample URL'; 

       $curl = curl_init(); 
       curl_setopt($curl, CURLOPT_URL, $service_url); 
       curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1) or die("Curl Error TRANSFER"); 
       curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE) or die("Curl Error SSL"); 
       curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); 

       $curl_response = curl_exec($curl); 
       echo $curl_response."<br><br>"; 

       if ($curl_response === false) { 
        $info = curl_getinfo($curl); 
        echo curl_getinfo($curl) . '<br/>'; 
        echo curl_errno($curl) . '<br/>'; 
        echo "Curl Error: ".curl_error($curl) . '<br/>'; 

        curl_close($curl); 
        die('error occured during curl exec. Additional info: ' . var_export($info)); 
       } 
       else{ 
        echo "Success"; 
       } 

      } else { 
       die('Authentication Failed...'); 
      } 
       } else { 
       die('Authentication Failed...'); 
} 
+2

Что вы хотите сказать? – sectus

+1

Matts, Вы просто ответили на вопрос в вопросе? - Вполне нормально отвечать на вопросы и отвечать на них, пожалуйста, сделайте это в таком формате: ясный вопрос, поставленный как вопрос, и ответ отправлен как ответ на этот вопрос. - В противном случае у меня не возникает вопроса, есть ли у вас проблемы с этим кодом? – Theraot

+0

Вам нужно предоставить примеры того, что вы хотите сделать, а не просто вырезать и вставлять несвязанный код. – JakeGould

ответ

0

They said it was suppose to work.
Вы пробовали фиксируя ее самостоятельно? Большинство людей здесь недовольны тем, что кто-то просто хватает какой-то код, а затем просит помощи, не имея понятия о том, что происходит.

Кроме того ... Вам необходимо предоставить дополнительную информацию о том, что такое ошибка. Есть несколько точек, которые сценарий возвращает значение ... Где он возвращается для вас? Authentication Failed..., Curl Error:, error occured during curl exec, или это было что-то еще?

Я просто запустил это на своем сервере. Не было проблем.

+0

Тогда ваши SSH и туннель работают нормально. Я не знаю, может ли это потому, что этот IP доступен для доступа извне (возможно, именно по этой причине вы хотите туннелировать), но он утверждает, что порт закрыт. Поэтому сначала я должен проверить, что вы действительно можете подключиться к этому серверу на этом порту. – Oberst

+0

И, конечно, я просто помню свой IP-адрес 10.xxx - это частный IP-адрес. Игнорируйте первую половину моего комментария. Мое предложение все еще стоит. Убедитесь, что порт на самом деле открыт. – Oberst

+0

Ну и еще что. Что делать, если туннель требует пароль? Я попытался получить доступ к этому IP-адресу с помощью PUTTY, и я вошел. Однако для туннеля потребовался пароль. Как его поместить в код? – Matts

Смежные вопросы