PHP — Выполнить поиск другого файла PHP на удаленном сервере

#php #centos

#php #centos

Вопрос:

Прежде чем я задам вопрос, я объясню настройку.

сервер 1: vps с CentOS
сервер 2: vps с CentOS

На server1 у меня есть /var/www/html/test.php Этот файл должен выполнить проверку get.php на другом сервере с некоторыми переменными POST.

На server2 у меня есть /home/somedir/get.php

Так возможно ли пропинговать файл, который не является веб-файлом?

Комментарии:

1. php может быть выполнен как скрипт командной строки, так что да, это возможно.

2. Определите ping . Вы имеете в виду HTTP POST-запрос?

3. Просто так он запускает файл на server2

4. ДА. Когда вы просматриваете test.php в http выполняется get.php на другом сервере.

5. Создайте php-файл на server1, в этом файле вы используете curl, чтобы открыть URL-адрес файла на server2.. И если он недоступен удаленно, используйте telnet или ssh для входа с помощью php-скрипта.

Ответ №1:

SSH в server2 через ssh2_exec(). Измененный пример из php.net:

 <?php
$connection = ssh2_connect('server2.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');

$stream = ssh2_exec($connection, 'php /home/somedir/get.php');
?>
  

Указанный выше файл должен быть размещен на server1.

Источник: http://php.net/manual/en/function.ssh2-exec.php