Quando gli aggiornamenti di WordPress non funzionano più

Ero contento come un bambino al luna park. WordPress mi funzionava alla perfezione ed ero anche riuscito a sistemare i permessi per gli aggiornamenti automatici.

Questo è durato alcuni mesi, finchè non ho migrato su un nuovo server alcuni blog, utilizzando diversi domini virtuali.

Dopo qualche settimana mi sono accorto che gli aggiornamenti automatici dei vari wordpress migrati non funzionavano più, segnalando un errore sui permessi.

Per la configurazione avevo seguito gli appunti di due articoli: configurazione wordpress, setup utente per gli aggiornamenti, che fin’ora non mi avevano mai lasciato a piedi.

Ho ricontrollato, ma non ho notato nulla di diverso da quello che aveva funzionato nell’installazione precedente.

Un problema di permessi

Cercando alla fine ho trovato la soluzione, un problema di permessi dovuti all’utente appositamente creato per gli aggiornamenti di questo domino.
Per avere utenti diversi collegati ai vari domini ho forzato la directory degli utenti nelle cartelle dei relativi domini. Questo sembra essere stato il problema.

Vediamo i dettagli

Nel secondo articolo configuravo l’utente con i seguenti comandi:

useradd utenteftp
passwd utenteftp
usermod -d /var/www/dominioparticolare/html utenteftp
usermod -a -G apache utenteftp

In pratica nella terza riga forzo per l’utente in chroot, in modo da limitarlo alla directory che ospita wordpress. Mentre nella configurazione di wordpress avevo riportato il codice seguente:

define('FS_METHOD', 'ftpext');
define('FTP_BASE', '/var/www/dominioparticolare/html/');
define('FTP_USER', 'MioUtenteFtp');
define('FTP_PASS', 'MiaPasswordFtp');
define('FTP_HOST', 'Ip Esterno del server');
define('FTP_SSL', false);

Il problema è dato dalla configurazione di FTP_BASE, occorre cambiare la directory a cui punta, visto che già l’utente viene collegato a quella cartella. Ecco come deve diventare la riga incriminata:

define('FTP_BASE', '/');

Fatta questa modifica ho provato subito ad eseguire l’aggiornamento e il messaggio di errore è sparito, l’aggiornamento è andato a buon fine.

Verificare la configurazione dell’utente

Per verificare velocemente la cartella a cui punta l’utente basta il seguente comando:

[bimbo@lunapark html]# more /etc/passwd |grep utenteftp
utenteftp:x:593:593::/var/www/dominioparticolare/html:/bin/bash

Queste informazioni dovrebbero essere sufficienti per risolvere questo tipo di problema. Buon divertimento.

Leave a Comment

Your email address will not be published. Required fields are marked *