ho creato uno script PHP di eseguire un pull GitHub:PHP Github errore di script Pull 'permesso negato (publickey)'
Questo è contenuta nella mia cartella Github /home/mysite/public_html/github
github_pull.php
<?php
echo `git pull 2>&1`;
?>
il mio server non già la chiave pubblica SSH, come se mi esibisco git pull
dal Terminal:
ssh [email protected]
cd public_html/github
git pull
Questa opera con successo (tuttavia devo inserire la password per la chiave rsa prima)Aggiornamento: la password non è più necessaria (vedi commenti)
Tuttavia, quando corro github_pull.php
ottengo il seguente errore: Autorizzazione negata (chiave pubblica). fatale: L'estremità remota riattaccato inaspettatamente
La chiave SSH è contenuto in /home/mysite/.ssh/id_rsa
Quando corro
<?php echo `whoami`;
emette mysite
L'utente che esegue lo script, in genere 'www_data' di Apache ha accesso alla chiave ssh? Si noti inoltre che l'utente sta probabilmente esaminando una posizione diversa per la chiave. – poke
(1) il tuo server web è in esecuzione come utente o come 'www-data'? (2) la chiave SSH è leggibile per il server web? (3) il webserver cerca effettivamente quella chiave? (puoi sempre provare ad esportare GIT_SSH = "il tuo comando ssh" ') – Wrikken
' tuttavia devo prima inserire la password per la chiave rsa', che significa nessuno-in modo interattivo la chiave non può essere usata. Cioè anche se la chiave è utilizzabile, non funzionerà. – AD7six