← Tutti gli articoliPHP e database

PHP e database

WordPress chiede le credenziali ftp per installare i plugin

Matteo Galacci ·

Se l’installazione di un plugin chiede credenziali FTP, verifica prima come sono gestiti i file. Questa procedura copre un WordPress con aggiornamenti dal pannello e PHP eseguito con un utente dedicato al sito. Nei deploy che rendono il codice intenzionalmente non scrivibile, aggiorna invece tramite la pipeline.

1. Individua il problema

Fai un backup. Sul server controlla il proprietario del file e delle directory coinvolte, sostituendo il percorso:

stat -c "%U:%G %a %n" /srv/www/sito/wp-admin/includes/file.php /srv/www/sito/wp-content /srv/www/sito/wp-content/plugins

Confronta il risultato con l’utente del pool PHP-FPM indicato nella configurazione del sito. Non confondere l’utente master root con quello dei worker. Su hosting condiviso usa la funzione di ripristino proprietari/permessi del pannello; se manca, comunica al provider questi percorsi e chiedi di riallinearli all’utente PHP del tuo account.

2. Correggi solo il caso identificato

Esempio: il sito è in /srv/www/sito, il suo utente dedicato è sito, ma la cartella plugins è stata caricata come root. Se le altre directory e i file core hanno già proprietario corretto, riallinea soltanto quella cartella:

sudo chown -R sito:sito /srv/www/sito/wp-content/plugins
sudo find /srv/www/sito/wp-content/plugins -type d -exec chmod 755 {} +
sudo find /srv/www/sito/wp-content/plugins -type f -exec chmod 644 {} +

Questi comandi presuppongono il modello descritto: non sostituire sito con l’utente web condiviso fra più siti. Se il disallineamento interessa altri percorsi, identifica e correggi anche quelli; non lanciare una normalizzazione generale alla cieca. Controlla pure eventuali FS_METHOD impostati nel wp-config.php: una scelta forzata del trasporto può spiegare la richiesta FTP.

3. Verifica

Riprova l’aggiornamento in staging. Deve completarsi senza richiesta FTP; verifica poi pagina pubblica e upload. Se fallisce ancora, leggi il percorso preciso nell’errore e controlla quota disco, directory upgrade e policy del provider. Non aggiungere 777 o password FTP nel repository: non correggono la causa.

Fonti e approfondimenti