Ho un progetto Laravel 4.2 ospitato su un server (Server A) e devo essere in grado di caricare i file da questa applicazione ei file devono essere trasferiti su un server Windows che si trova sul stessa rete locale (Server B).Laravel SSH su Windows Server
Ho installato OpenSSH sul server Windows e ho avviato il servizio. Posso confermare che questo funziona perché posso connettermi correttamente in un terminale sul server A.
Nel progetto Laravel ho creato la connessione nel file app/config/remote.php.
Ma quando si tenta di eseguire un comando nel progetto laravel sul server Un utilizzando il seguente codice:
SSH::into('ServerB')->run(['IF EXIST folder (echo YES) ELSE (echo NO)'], function($line){
echo $line.PHP_EOL;
});
ottengo il seguente errore:
unpack(): Type N: not enough input, need 4, have 1
Sono ricevendo questo errore per ogni comando provo ad eseguire sul server B. Stranamente, se provo a usare lo stesso codice ma lo indirizza a un server Linux, il codice funziona correttamente. Ciò mi indurrebbe a credere che il server SSH è probabilmente impostato in modo errato sul server B, ma il fatto che riesca a connettermi tramite SSH al server B dal server A in una finestra di terminale confonde l'intera questione!
Qualcuno conosce il significato dell'errore che sto ricevendo?
Su quale versione di PHP è ospitato il progetto Laravel 4.2? – revo
Non conosco molto bene Laravel, ma ho trovato un problema simile su phpeclib, che è stato risolto l'anno scorso: https://github.com/terrafrost/phpseclib/commit/684d6eed0e2fc3045c9169685ce135a14474abef – andrucz
pubblica il tuo log 'echo $ ssh-> getLog(); 'controlla anche l'host e il firewall – Ghayel