Ho già scritto su come installare WordPress tramite la shell. Oggi lo sto approfondendo mostrando come è possibile aggiornarlo utilizzando l'accesso alla shell. Sebbene sia sempre possibile eseguire l'aggiornamento da WordPress utilizzando il metodo 1 clic, il metodo shell è più sicuro poiché crittografa tutto il trasferimento dei dati. Ci sono due modi per farlo: puoi farlo usando un client SSH o abilitare WordPress per utilizzare i trasferimenti SSH per tutti i tipi di aggiornamenti, sia che si tratti di un aggiornamento principale o di un aggiornamento / installazione di plugin / tema. Discuterò entrambi i metodi qui.
Nota importante: Sempre assicurati di fare un backup completo delle tue installazioni di WordPress file e database prima di eseguire un aggiornamento.
Ora non scriverò più su come connettersi a SSH come ho già discusso nel mio tutorial precedente. Ora tutti i comandi qui vengono eseguiti assumendo che tu sia nella directory del tuo blog (blogdemo in questo caso). Prima di tutto scarica l'ultima versione di WordPress ed estraila.
wget http://wordpress.org/latest.tar.gz tar xfvz latest.tar.gz
Ora dobbiamo eliminare il vecchio wp-admin e wp-includes directory.
rm -rf ./wp-admin rm -rf ./wp-include
Ora vai al wordpress directory in cui sono stati estratti gli ultimi file WordPress e spostati di nuovo in blogdemo elenco.
cd wordpress mv * ... / blogdemo /
Ti verrà chiesto di sovrascrivere alcuni file e alcune directory anche all'interno wp-content. Basta premere y e procedere. Ora esci dal wordpress directory ed eliminare la directory e il file latest.tar.gz. Abbiamo finito con loro adesso, e non abbiamo bisogno che occupino spazio.
cd ... / rm -rf ./wordpress/ rm -f latest.tar.gz
Nella fase finale, accedi alla tua dashboard ed esegui l'aggiornamento del database.
Ti ho parlato di… Sempre assicurati di fare un backup completo delle tue installazioni di WordPress file e database prima di eseguire un aggiornamento.
Con questo metodo, è possibile abilitare WordPress per utilizzare SSH per l'aggiornamento e l'installazione di plug-in / tema. Prima di tutto è necessario verificare con il proprio webhost se hanno l'estensione SSH2 installata per PHP o meno. Per verificare che esegua il seguente comando PHP
var_dump (extension_loaded ('ssh2'));
Se questo comando restituisce true, significa che è installato, altrimenti non lo è. Se il tuo webhost non lo offre, chiedi loro di installarlo per te o se stai utilizzando un VPS / dedicato, puoi installarlo tu stesso. Segui il metodo da installare da qui.
Prima di tutto abbiamo bisogno di generare un working set di chiavi pubbliche e private che verranno utilizzate per autenticare l'utente. Per farlo, usa il seguente comando nel tuo client SSH:
ssh-keygen
Ti verrà chiesto il nome del file. Puoi lasciarlo in bianco o inserire un nome personalizzato. Se lo lasci vuoto, i nomi dei file saranno id_rsa.pub e id_rsa. Inoltre puoi impostare una passphrase per aggiungere ulteriore sicurezza o lasciarla vuota.
Il tempo di aggiungere le chiavi doveva essere aggiunto al authorized_keys file. Nel nostro caso, le chiavi SSH sono state generate e mantenute nel .SSH directory nella directory principale.
cd .ssh cp id_rsa.pub authorized_keys
Ora modifica le autorizzazioni in modo che WordPress possa accedere a quelle chiavi.
cd ... / chmod 755 .ssh chmod 644 .ssh / *
Potrebbe essere necessario modificare l'utente della directory se si sta eseguendo PHP come utente diverso.
Ora che hai configurato e funzionante SSH2, dovresti vedere la seguente schermata mentre esegui qualsiasi aggiornamento / plugin o installazione di temi.
Qui utente è il nome utente SSH che hai utilizzato per accedere ed eseguire tutti i comandi e parola d'ordine è la passphrase che ti è stato chiesto di impostare durante il ssh-keygen
comando. Se non hai scelto una passphrase, dovresti mantenere il campo password vuoto. Per evitare di inserire ripetutamente questi dati, inserisci il seguente codice nel tuo wp-config.php
define ( 'FTP_PUBKEY', '/ home / user / .ssh / id_rsa.pub'); define ( 'FTP_PRIKEY', '/ home / user / .ssh / id_rsa'); define ( 'ftp_user', 'utente'); define ( 'FTP_PASS', 'password'); define ( 'FTP_HOST', 'domain.com');
Da ora in poi WordPress eseguirà tutte le operazioni di trasferimento di file usando SSH.