Uma visita rápida aos documentos PHP irá dizer-lhe que é incrivelmente fácil de fazer: -)
Mas, em resumo, tudo o que você precisa fazer é:
$myfile = file_get_contents("http://server1/blah/blah/file.log");
Nota: embora ... para que isso funcione, você precisará que o arquivo seja acessível, por meio de um servidor da Web em execução no servidor1, já que é um arquivo estático, instalando algo como NginX e apenas colocando o documento no padrão root (ou apontar a raiz padrão na pasta home) será o suficiente para permitir que você use o PHP para obter o conteúdo do arquivo.
Se, colocar um servidor web no server1 NÃO for uma opção, então essencialmente você terá que seguir estes passos.
-
Conecte-se ao servidor1 usando algo como SSH / Telnet, ou um dos utilitários de cópia remota, ou configure um servidor FTP e aponte-o para sua pasta pessoal.
-
Use um dos muitos métodos de conexão do PHP (Qual deles depende do serviço que você escolheu acima)
-
Em seguida, crie um script que se conecte usando o método de conexão selecionado na etapa 2, automatize os parâmetros necessários e conecte-se.
-
Uma vez conectado, emita todos os comandos necessários (dependendo do método de conexão usado) para capturar o arquivo e seu conteúdo.
-
Desconecte-se do servidor e processe o arquivo.
Com o SSH, você precisará usar as funções do SSH2 embutidas no PHP (Novamente, os documentos estão no php.net), há uma classe documentada lá que você pode usar.
Para o Telnet, diferença semelhante, mas A) Eu não recomendaria isso e B) você precisaria fazer um monte de código para suportar o protocolo telnet em sockets raw.
Para FTP, o PHP tem (e tem há muito tempo) suporte ao FTP, mas como em um servidor web, você precisa instalar e configurar o FTP, então prendê-lo e todo esse jazz, se você vai fazer isso, então é mais fácil fazê-lo funcionar com um servidor web.
Além disso, você pode adotar a filosofia * nix de muitas ferramentas pequenas e usar exec e chamadas do sistema para executar programas da sua distribuição Linux, como 'rcopy', 'sftp' e muitos outros, mas novamente isso é bastante uma tarefa, saber o que automatizar, onde e como.
Você também tem a opção de escrever seu próprio servidor ad-hoc, que escuta em um soquete e envia o log quando uma conexão é feita.
Por último, você poderia também compartilhar uma pasta usando o NFS ou o Samba, então basta usar o arquivo normal abrir / ler / fechar chamadas como se o arquivo fosse local, mas então você tem que configurar usuários, compartilhamentos, auth e uma carga de outras coisas.
Qual caminho seguir, depende de quanto trabalho você deseja fazer e quais restrições você faz / não impede que você use qualquer um dos métodos descritos aqui.
Meu conselho, vá para o método do servidor web, use NginX, configuração mínima, sele o servidor de arquivos de log a portas fechadas e deixe o php fazer o que é bom, e pegue o arquivo em http.