Come trovare, accedere e modificare wp-config.php in WordPress

Pubblicato: 2022-07-14

Che cos'è wp-config.php in WordPress?

Il file wp-config.php è un file principale di installazione di WordPress contenente i dettagli delle impostazioni di configurazione più importanti del tuo sito web. Il prefisso "wp" sta per "WordPress", "config" è l'abbreviazione di "configurazione" e il tipo di file ".php" indica il tipo di codice contenuto nel file: PHP.

Senza wp-config.php , il tuo sito web semplicemente non funzionerebbe. WordPress richiede questo file, soprattutto, per connettersi al database in cui sono archiviate informazioni come le impostazioni di WordPress, il contenuto dei post, le impostazioni di temi e plug-in e i dati dell'utente. Non solo wp-config.php è il ponte tra i file del tuo sito e il tuo database, ma ti permette anche di includere le chiavi di sicurezza; cambiare i prefissi delle tabelle; riposizionare le cartelle di file principali di WordPress come wp-plugins , wp-uploads e wp-content ; ed eseguire altre configurazioni avanzate.

Dove si trova il file wp-config.php ?

Ora che sai cosa fa wp-config.php , probabilmente ti starai chiedendo "Dove si trova wp-config.php ?" Se stai cercando la posizione di wp-config.php in un sito WordPress già esistente, lo troverai nella cartella principale della tua installazione di WordPress. La cartella principale contiene le cartelle wp-admin , wp-content e wp-includes . Sotto queste cartelle vedrai un elenco di file, molti dei quali iniziano con il prefisso 'wp-'. Qui è dove troverai il tuo file wp-config.php .

elenco di file e cartelle principali, con wp-config.php selezionato

Se stai scaricando e configurando WordPress per la prima volta, tuttavia, il file wp-config.php non verrà incluso. Verrà invece creato automaticamente durante il processo di installazione di WordPress. Durante la configurazione, ti verranno richieste alcune informazioni come:

  • Nome database : nome del database associato all'installazione di WordPress
  • Nome utente database : nome utente utilizzato per accedere al database
  • Password del database : password associata all'utente del database
  • Host del database : il nome host del server del database (di solito 'localhost' ma può variare a seconda del provider di hosting)

WordPress utilizzerà quindi queste informazioni per creare il file wp-config.php nella directory principale.

modulo dettagli connessione database

Puoi anche impostare manualmente wp-config.php , se preferisci. Questa potrebbe essere una buona opzione se hai molte impostazioni personalizzate che desideri aggiungere alla configurazione del tuo sito.

Come accedo a wp-config.php ?

Esistono un paio di semplici metodi per accedere a wp-config.php — tramite Secure File Transfer Protocol (SFTP) o tramite cPanel, se la tua società di hosting lo fornisce.

1. Accesso a wp-config.php tramite SFTP

Passaggio 1: installa il tuo client SFTP. Il tuo primo passo sarà scaricare e installare un client SFTP se non ne hai già uno. Diverse buone opzioni includono:

Applicazione Sistema Gratuito o Premium
WinSCP finestre Gratuito
Filezilla Windows, Mac, Linux Opzioni gratuite e premium
Anatra cibernetica Windows, Mac Gratuito
Trasmettere Mac Premium

Useremo Filezilla per questo esempio, ma altri client SFTP dovrebbero funzionare in modo simile.

Passaggio 2: recupera le credenziali SFTP. Dopo aver installato il tuo client SFTP, avrai bisogno delle credenziali SFTP dal tuo host web per accedere al tuo server. Troverai questi dettagli nel pannello di controllo dell'hosting. A seconda del tuo host, queste informazioni potrebbero essere generate per te o potresti dover passare attraverso il processo di creazione di un nome utente e una password SFTP. Se non sei sicuro di dove trovare queste credenziali o di come crearle, chiedi al supporto del tuo host o cerca le istruzioni nella sua documentazione di aiuto. I dettagli di cui avrai bisogno per il tuo client SFTP sono:

  • Host (l'indirizzo IP o l'URL del tuo server live)
  • Nome utente SFTP
  • Parola d'ordine
  • Numero di porta

Passaggio 3: inserisci le tue credenziali nel tuo client SFTP. Inserisci l'indirizzo IP o l'URL del tuo host, il tuo nome utente SFTP, la password e il numero di porta.

Nota: se il client SFTP utilizza l'autenticazione TOFU (trust on first use), potresti ricevere un avviso "chiave host sconosciuta". Fare clic su "OK" e procedere. Seleziona "Fidati sempre di questo host, aggiungi questa chiave alla cache" se prevedi di utilizzare il tuo client SFTP per accedere nuovamente al sito.

Messaggio TOFU da Filezilla

Passaggio 4: vai alla directory principale del tuo sito web.

Dopo aver effettuato l'accesso al tuo server tramite SFTP, vedrai un albero di file visualizzato nei due pannelli in basso a destra dello schermo che elenca le directory sul tuo server web (remoto). Il lato sinistro elenca le directory del tuo computer (locale).

La tua directory principale si trova in genere in una cartella denominata "www" o "public_html", ma potrebbe utilizzare un nome diverso. Le convenzioni di denominazione delle cartelle radice differiscono su alcuni host, quindi se non sei sicuro in quale cartella cercare, chiedi al tuo provider di hosting. Saprai di essere nella cartella corretta se vedi le cartelle wp-admin , wp-content e wp-includes nella parte superiore dell'elenco dei file.

trovare la cartella public_html tramite FTP

Passaggio 5: seleziona o crea una cartella sul tuo computer locale in cui desideri aggiungere il tuo file wp-config.php . Se hai già selezionato una cartella, usa il riquadro sinistro per navigare e aprirla. In caso contrario, trova la directory in cui desideri creare una nuova cartella, fai clic con il pulsante destro del mouse sul riquadro sinistro e seleziona Crea directory .

creare una selezione di directory

Assegna un nome alla directory e quindi fai clic su OK .

Fare doppio clic per aprire la nuova directory creata.

Passaggio 6: trova e scarica wp-config.php . Il file wp-config.php si trova nella tua cartella principale, quindi scorri verso il basso fino a wp-config.php nel riquadro in basso a destra del tuo client SFTP. Fare clic con il pulsante destro del mouse su wp-config.php e fare clic su Download o semplicemente trascinare il file dal riquadro di destra alla cartella desiderata nel riquadro di sinistra.

scaricando il file wp-config.php

Il tuo file wp-config.php dovrebbe ora essere scaricato sul tuo computer locale nella directory che hai selezionato in precedenza. Dovresti riuscire a trovarlo nel browser di file del tuo computer.

2. Accesso a wp-config.php in cPanel

Se il tuo host utilizza cPanel, puoi accedere a wp-config.php tramite il file manager di cPanel. Se non sai come trovare cPanel nella dashboard del tuo host, contatta l'assistenza clienti per chiedere aiuto.

Passaggio 1: apri File Manager di cPanel. Una volta che sei in cPanel, vai alla sezione File e fai clic su File Manager .

Passaggio 2: apri la cartella principale del tuo sito Web. La cartella principale è comunemente chiamata 'www' o 'public_html', ma potrebbe avere un altro nome. Le convenzioni di denominazione delle cartelle radice differiscono su alcuni host, quindi se non sei sicuro in quale cartella cercare, chiedi al tuo provider di hosting. Saprai di essere nella cartella corretta se vedi le cartelle wp-admin , wp-content e wp-includes nella parte superiore dell'elenco dei file.

Passaggio 3: trova e scarica wp-config.php . Il file wp-config.php si trova nella tua cartella principale, quindi scorri verso il basso fino a wp-config.php nel pannello di destra del File Manager di cPanel. Fare clic con il pulsante destro del mouse su wp-config.php e fare clic su Download , oppure fare clic una volta su wp-config.php e quindi fare clic sull'opzione Download dal menu in alto.

scaricando wp-config.php da cpanel

Seleziona o crea una cartella in cui vuoi posizionare il tuo file wp-config.php (NON rinominarlo) e fai clic su Salva .

scegliendo una cartella in cui salvare wp-config.php

Il tuo file wp-config.php dovrebbe ora essere scaricato sul tuo computer locale nella directory che hai selezionato. Dovresti riuscire a trovarlo nel browser di file del tuo computer.

Come modificare il file wp-config.php

Ci sono due opzioni per modificare wp-config.php . Puoi utilizzare un editor di codice sorgente o modificarlo direttamente in cPanel. Prima di modificare il file wp-config.php in WordPress, assicurati sempre di eseguire il backup del tuo sito!

1. Esegui il backup del tuo sito

Ogni volta che apporti una modifica importante al tuo sito, in particolare ai file core o ai plug-in di WordPress, corri il rischio che qualcosa vada storto. Potrebbe essere qualcosa di minore come un problema di visualizzazione appena percettibile per la temuta schermata bianca della morte. Per prevenire tempi di inattività e perdita di dati quando apporti modifiche agli aspetti principali del tuo sito, esegui sempre prima un backup. Se non hai già uno strumento di backup installato sul tuo sito, Jetpack Backup è una soluzione conveniente con ripristini con un clic.

Tutto supportato? Bene. Possiamo iniziare a modificare il file wp-config.php .

2. Come modificare wp-config.php con un editor di codice sorgente

Il modo migliore per modificare wp-config.php è nel tuo software di modifica del codice preferito. Dato che stai modificando una copia di wp-config.php che è offline sul tuo computer locale, non devi essere connesso a Internet per lavorare sul tuo file e hai meno probabilità di sovrascrivere il tuo wp-config originale .php quando lo carichi di nuovo sul tuo server (a differenza della modifica direttamente in cPanel).

Passaggio 1: apri wp-config.php nell'editor del codice sorgente. Se non hai familiarità con l'utilizzo di un editor di codice sorgente, ci sono diverse opzioni gratuite tra cui scegliere.

Codice sorgente gratuito e editor di testo semplice:

Applicazione Sistema
Blocco note++ finestre
Atom.io Windows, Mac, Linux
Sublime Windows, Mac, Linux
Modifica testo
*assicurati di essere in modalità testo normale
Mac (applicazione predefinita)
Bloc notes Windows (applicazione predefinita)

Passaggio 2: modifica wp-config.php e salvalo sul tuo computer locale. Il tuo display potrebbe avere un aspetto diverso a seconda del programma che usi per modificare il tuo file wp-config.php . Ecco come appare parte del codice in atom.io:

contenuto del file wp-config.php

Aggiungi o modifica le informazioni di cui hai bisogno, quindi salva il file. Passa a "Cosa puoi configurare tramite wp-config.php ?" per saperne di più sui diversi tipi di modifiche che puoi apportare al tuo file wp-config.php .

Passaggio 3: accedi al tuo server web tramite SFTP o cPanel. Vai alla cartella principale del tuo sito e trova il file wp-config.php .

Passaggio 4: cambia il nome del file di wp-config.php sul tuo server web. Nel caso in cui la tua versione modificata contenga errori, non vuoi sovrascrivere il tuo file originale. Vuoi essere in grado di ripristinare rapidamente il file wp-config.php originale, quindi rinominarlo in qualcosa come 'wp-config-orginal.php' non solo assicurerà che WordPress ignori questo file ma che il contenuto del file originale sia ancora esiste sul tuo server.

rinominare il file wp-config.php

Se sovrascrivi accidentalmente il tuo file wp-config.php e la tua versione modificata presenta problemi, puoi sempre ripristinare il tuo sito da un backup. Tuttavia, è sempre una buona idea conservare una copia del file wp-config.php originale per un rapido ripristino in caso di problemi. Se non hai un file di backup da qualche parte, specialmente se hai molte impostazioni personalizzate, potrebbe essere una seccatura enorme e causare molti tempi di inattività del sito per recuperare le informazioni originali.

Passaggio 5: carica wp-config.php dal tuo computer locale al tuo server web. Usando SFTP o cPanel, carica il tuo file wp-config.php nella directory principale del tuo server web.

Cliente SFTP:

spostando il file wp-config.php tramite ftp

cPannello:

caricamento di un file tramite cpanel

Passaggio 6: visita il tuo sito Web e verifica che venga visualizzato e funzioni correttamente. Hai caricato correttamente il tuo file wp-config.php , quindi ora è il momento di assicurarti che tutto funzioni sul tuo sito come previsto. Visita il front-end del tuo sito e accedi anche alla dashboard di WordPress per assicurarti che tutto sia accessibile, visualizzato correttamente e che tutte le funzionalità del sito come moduli, navigazione, funzionalità di eCommerce, ecc. funzionino.

Passaggio 7: elimina il vecchio file wp-config.php rinominato . Una volta che hai stabilito che il tuo sito funziona correttamente, puoi eliminare wp-config-original.php (o qualunque cosa tu abbia rinominato).

3. Come modificare wp-config.php direttamente nel tuo cPanel

Se non hai o non vuoi usare un editor di codice sorgente, puoi modificare wp-config.php direttamente in cPanel (se il tuo host usa cPanel). Questo è un po' più rischioso rispetto alla modifica sul tuo computer locale. Se la tua connessione Internet viene interrotta durante la modifica, potresti perdere le modifiche. Corri anche il rischio di sovrascrivere potenzialmente il tuo file wp-config.php originale senza prima salvare un backup. Ma fintanto che fai una copia del tuo file wp-config.php originale e disponi di una connessione Internet affidabile, dovresti essere relativamente sicuro modificando direttamente in cPanel.

Passaggio 1: trova wp-config.php in cPanel. In cPanel, fai clic su "File Manager".

Passa alla tua cartella principale (di solito 'public_html' o 'www' ma, a seconda del tuo host, potrebbe essere chiamato qualcos'altro).

Passaggio 2: crea una nuova cartella per il file di backup wp-config.php . Nel menu principale di File Manager, fai clic su + Cartella per aggiungere una nuova cartella. Faremo una copia del tuo file wp-config.php e lo salveremo qui come backup.

aggiungendo una cartella in cpanel

Assegna un nome alla tua nuova cartella con qualcosa di facile da identificare come "configurazione di backup" in modo da poterla trovare facilmente in un secondo momento. Fare clic su Crea nuova cartella .

Passaggio 3: trova wp-config.php nella cartella principale e copialo nella cartella di backup. Nella tua directory principale, scorri verso il basso fino a wp-config.php e fai clic con il pulsante destro del mouse sul nome del file. Seleziona Copia .

Apparirà una finestra di dialogo che ti chiederà di inserire il percorso del file in cui vuoi copiare il file. Di solito avrà il nome della cartella principale precompilato, quindi dovresti solo aggiungere il nome della cartella di backup che hai appena creato dopo '/public_html/ ' (o qualunque sia il nome della tua cartella principale). Quindi, se la tua cartella di backup si chiama "backup config", il tuo percorso del file sarebbe qualcosa come "/public_html/backup config. '

Fare clic su Copia file .

Dopo aver copiato il file, vai alla cartella ' backup config' e vedrai wp-config.php elencato lì. Dovresti andare avanti e rinominare questo solo in modo da non ottenere questo file wp-config.php e quello che vuoi modificare confuso. Fare clic con il pulsante destro del mouse sul file wp-config.php e fare clic su Rinomina .

Puoi rinominarlo come vuoi, ma in questo caso lo rinomineremo in wp-config-original.php .

rinominare il file wp-config.php

Passaggio 4: torna a wp-config.php nella directory principale. Ora che abbiamo un backup del nostro file wp-config.php , torneremo al file wp-config.php nella directory principale per modificarlo.

Seleziona wp-config.php , quindi fai clic su Modifica nel menu in alto di File Manager.

modifica tramite strumenti cpanel

Passaggio 5: modifica wp-config.php . Ora dovresti vedere il contenuto del file wp-config.php sullo schermo. Dovrebbe assomigliare a qualcosa di simile a questo:

il file wp-config.php in cpanel

Aggiungi o modifica le informazioni di cui hai bisogno, quindi salva il file. Passa a "Cosa puoi configurare tramite wp-config.php ?" per saperne di più sui diversi tipi di modifiche che puoi apportare al tuo file wp-config.php .

Creazione manuale del file wp-config.php

Non puoi modificare il tuo file wp-config.php se non ne hai ancora creato uno! Se per qualche motivo non sei in grado di creare il file wp-config.php durante l'installazione di WordPress o preferisci semplicemente crearlo manualmente, ti consigliamo di utilizzare il modello wp-config-sample.php incluso quando scarichi WordPress.

trovare il file wp-config-sample.php

Apri wp-config-sample.php nel tuo editor di codice sorgente. Il tuo display potrebbe avere un aspetto diverso a seconda del programma che usi per modificare il tuo file wp-config-sample.php . Ecco come appare parte del codice in atom.io:

contenuto del file wp-config.php

Inserisci i seguenti dettagli del database ed eventuali impostazioni personalizzate di cui potresti aver bisogno:

Il nome del database per WordPress

 define( 'DB_NAME', 'database_name_here' );

Nome utente del database

 define( 'DB_USER', 'username_here' );

Password del database

 define( 'DB_PASSWORD', 'password_here' );

Nome host del database

 define( 'DB_HOST', 'localhost' );

Set di caratteri del database da utilizzare nella creazione di tabelle del database (solitamente utf8)

 define( 'DB_CHARSET', 'utf8' );

Tipo di confronto database (non modificarlo in caso di dubbio)

 define( 'DB_COLLATE', '' );

Autenticazione chiavi univoche e sali

Cambiali in diverse frasi uniche. Puoi generarli utilizzando il servizio di chiavi segrete di WordPress.org. Questi possono essere modificati in qualsiasi momento per invalidare tutti i cookie esistenti. Tieni presente che ciò costringerà tutti gli utenti a dover eseguire nuovamente l'accesso.

 define( 'AUTH_KEY', 'put your unique phrase here' ); define( 'SECURE_AUTH_KEY', 'put your unique phrase here' ); define( 'LOGGED_IN_KEY', 'put your unique phrase here' ); define( 'NONCE_KEY', 'put your unique phrase here' ); define( 'AUTH_SALT', 'put your unique phrase here' ); define( 'SECURE_AUTH_SALT', 'put your unique phrase here' ); define( 'LOGGED_IN_SALT', 'put your unique phrase here' ); define( 'NONCE_SALT', 'put your unique phrase here' );

Definisci il prefisso della tabella del database WordPress personalizzato

Il prefisso della tabella del database predefinito per WordPress è 'wp_', ma puoi definire un prefisso personalizzato, se lo desideri. Inoltre, se hai più installazioni di WordPress in un database, puoi assegnare a ciascuna un prefisso univoco. Usa solo numeri, lettere e trattini bassi.

 $table_prefix = 'wp_';

Definisci la modalità di debug di WordPress

Per impostazione predefinita, la modalità di debug di WordPress in wp-config.php dovrebbe essere impostata su "false" a meno che tu non sia in modalità di sviluppo e cerchi attivamente di eseguire il debug dei problemi sul tuo sito.

 define( 'WP_DEBUG', false );

Modificare questa affermazione in "true" per abilitare la visualizzazione di avvisi di errore e avviso durante lo sviluppo.

Aggiungi valori personalizzati

Ci sono due righe di codice commentate dopo la riga che definisce la modalità di debug, in mezzo alle quali puoi aggiungere qualsiasi valore personalizzato che desideri aggiungere al tuo file wp-config.php .

 /* Add any custom values between this line and the "stop editing" line. */ YOUR CUSTOM VALUES GO HERE /* That's all, stop editing! Happy publishing. */

Per informazioni sui valori personalizzati che possono essere utilizzati, scorri verso il basso fino alla sezione 'Cosa puoi configurare tramite wp-config.php?. '

Definisci il percorso assoluto della directory di WordPress

Sotto i tuoi valori personalizzati, dopo '/*Questo è tutto, smetti di modificare! Buona pubblicazione.*/, vedrai un altro paio di frammenti di codice. Il primo definisce il percorso assoluto della directory di WordPress. Puoi lasciarlo così com'è a meno che tu non abbia impostato WordPress in una sottodirectory, nel qual caso sostituiresti '/' con ' /tua-sottodirectory/ '.

 if ( ! defined( 'ABSPATH' ) ) { define( 'ABSPATH', __DIR__ . '/' ); }

Imposta le variabili di WordPress e i file inclusi

Quest'ultima sezione nel file wp-config-sample.php dichiara il percorso assoluto di wp-settings.php , che imposta le variabili di WordPress e i file inclusi.

 require_once ABSPATH . 'wp-settings.php';

Quando hai finito di modificare il tuo file di configurazione di esempio, salvalo come 'wp-config.php' e inseriscilo nella directory principale del tuo sito usando SFTP o cPanel.

NOTA: C'è un ordine specifico per il contenuto del file wp-config-sample.php e l'ordine è importante. La riorganizzazione dell'ordine delle informazioni nel file di configurazione potrebbe creare errori sul tuo sito.

Cosa puoi configurare in wp-config.php ?

Ci sono molte cose che puoi configurare con wp-config.php oltre alle impostazioni di base incluse nel file wp-config-sample.php . Puoi abilitare la funzionalità multisito, impostare domini dei cookie, aumentare la memoria consentita, gestire una varietà di impostazioni relative alla sicurezza, determinare la frequenza con cui WordPress esegue determinate operazioni di base e modificare altre impostazioni di ottimizzazione dei file. Puoi persino apportare modifiche al database e ai permessi dei file.

Cosa non puoi configurare in wp-config.php?

Sebbene l'elenco delle impostazioni che puoi gestire in wp-config.php sia lungo, ci sono alcune cose che non puoi fare.

Il file wp-config.php è più o meno un elenco di costanti che determinano determinate impostazioni all'interno del core di WordPress. Non puoi usarlo per apportare modifiche funzionali ai tuoi plugin o temi: per questo utilizzerai il file functions.php .

Ci sono anche alcuni aspetti hardcoded di WordPress che non puoi alterare, nemmeno in wp-config.php , come la posizione della cartella dei temi.

Come proteggere wp-config.php dagli exploit di sicurezza

Il tuo file wp-config.php contiene molte informazioni sensibili sul tuo sito, informazioni che vuoi tenere fuori dalle mani degli hacker. Ecco alcuni suggerimenti per proteggere il tuo file wp-config.php :

1. Installa un plug-in di sicurezza

Un plug-in di sicurezza aggiungerà automaticamente impostazioni al tuo sito Web che aiutano a proteggere tutti gli aspetti, incluso wp-config.php , dai tentativi di hacking.

Lo strumento di sicurezza di WordPress di Jetpack è un'opzione economica che può aiutare a proteggere il tuo sito da attacchi dannosi. Jetpack Security include:

  • Protezione dagli attacchi di forza bruta che ferma gli attacchi sulle loro tracce
  • Monitoraggio dei tempi di inattività per avvisarti nel momento in cui c'è un problema
  • Un registro delle attività, in modo da sapere se e quando si sono verificate attività sospette
  • Autenticazione sicura per impedire accessi non autorizzati
  • Scansione del malware che ti avvisa se il tuo sito è stato violato
  • Protezione dallo spam per le tue pagine, post e moduli di contatto

Jetpack Security monitora anche il tuo sito per eventuali modifiche ai file principali di WordPress, plug-in obsoleti o non sicuri e altre vulnerabilità in modo che tu possa rilevarle prima che un hacker li trovi e ne tragga vantaggio.

2. Nega l'accesso a wp-config.php tramite il file . file htaccess

Puoi usare il . htaccess per aiutare a proteggere wp-config.php . Troverai questo file nella tua cartella principale.

Passaggio 1: scarica . htaccess

Usando SFTP o cPanel, vai alla cartella principale del tuo sito web. Fare clic con il tasto destro su .htaccess e seleziona download per scaricare il file sul tuo computer locale.

Passaggio 2: aggiungi il codice per bloccare l'accesso a wp-config.php

In un codice sorgente o in un editor di testo semplice, apri .htaccess e aggiungi il seguente codice:

 <files wp-config.php> order allow,deny deny from all </files>

Salva il tuo file. Assicurati che il tuo programma non includa un'estensione di file. Se stai utilizzando Blocco note o Modifica testo, potrebbe aggiungere un'estensione di file .txt, che non desideri. Il file dovrebbe essere semplicemente chiamato '. htaccess .'

Passaggio 3: carica il file .htaccess modificato nella cartella principale

Carica il tuo modificato. htaccess nella cartella principale del tuo sito web. Ti verrà chiesto se desideri sovrascrivere il file esistente. Fare clic su OK .

Adesso tuo . htaccess dovrebbe bloccare l'accesso esterno al tuo file wp-config.php .

3. Nascondi wp-config.php fuori dalla directory principale

Poiché ogni hacker conosce la posizione predefinita di wp-config.php su un sito WordPress, cambiare la posizione in una cartella ad accesso limitato al di fuori della directory principale può tenerla fuori dalle mani di un hacker.

Questo processo comporta una piccola configurazione extra: non puoi semplicemente trascinare e rilasciare wp-config.php fuori dalla cartella principale. Tuttavia, ne vale la pena per aggiungere un ulteriore livello di protezione al tuo sito web.

In pochi passaggi, puoi proteggere il tuo file wp-config.php al di fuori della cartella principale.

Passaggio 1: scarica il tuo attuale file wp-config.php

La tua cartella principale è dove risiedono tutti i tuoi file WordPress, incluso il file wp-config.php . Può essere denominato 'public_html' o 'www' . Se non sei sicuro di dove si trovi la tua cartella principale o la tua directory di WordPress, contatta la tua società di hosting.

Una volta trovata la cartella principale e la directory di WordPress, scarica il file wp-config.php sul tuo computer locale tramite SFTP o cPanel.

salvando il file wp-config.php sul tuo computer tramite ftp

Passaggio 2: crea una nuova directory al di fuori della cartella principale

Spostati al di fuori della tua directory principale alla cartella di file successiva di livello superiore. Dovresti vedere il nome della tua cartella principale e molte altre cartelle. In questa directory, fare clic con il pulsante destro del mouse e selezionare crea directory.

creare una directory tramite ftp

Assegna alla tua directory un nome che ricorderai facilmente come repository per il tuo file wp-config.php . Puoi anche creare più cartelle nidificate, se lo desideri: dovrai solo ricordare i nomi di tutte per il passaggio 4.

Passaggio 3: carica wp-config.php nella nuova cartella

Carica il file wp-config.php che hai scaricato in precedenza nella tua nuova cartella tramite SFTP o cPanel.

spostando wp-config.php nella nuova directory

Controlla la tua nuova cartella e i permessi del file wp-config.php e assicurati che siano impostati su 600.

controllare i permessi dei file per wp-config.php
modificando i permessi dei file a 600

Passaggio 4: indirizza WordPress al nuovo file wp-config.php

Dovresti avere un file wp-config.php nella tua nuova directory "segreta" così come il file wp-config.php originale che è ancora nella tua directory principale. Affinché WordPress possa trovare e utilizzare il file corretto, ti consigliamo di eliminare tutte le informazioni nel file wp-config.php della directory principale e sostituirlo con il seguente frammento di codice:

 <?php include('/home3/usr/secureconfig/wp-config.php'); ?>

Nota: il percorso del tuo file avrà un aspetto diverso poiché utilizzerai i nomi delle directory del tuo singolo server.

In cPanel, puoi aprire il file wp-config.php della directory principale e modificarlo direttamente oppure puoi modificare la copia che hai scaricato in precedenza sul tuo computer locale usando un editor di codice sorgente. Per questo esempio, abbiamo modificato la copia scaricata in precedenza utilizzando Atom.io.

Salva il tuo file wp-config.php e caricalo di nuovo nella tua directory principale.

spostando il file wp-config.php

Ti verrà chiesto se desideri sovrascrivere il file. Fare clic su OK per sovrascrivere il file.

Ora WordPress dovrebbe fare riferimento al tuo nuovo file wp-config.php nella sua posizione sicura al di fuori della cartella principale.

4. Cambia il nome del tuo file wp-config.php

Anche la modifica del nome del file wp-config.php può aiutare a nasconderlo agli hacker. Se lo fai, dovrai anche ospitare questo file al di fuori della tua cartella principale. Se hai già seguito i passaggi in Nascondi wp-config.php al di fuori della directory principale, puoi modificare il nome del file wp-config.php seguendo questi passaggi aggiuntivi:

Passaggio 1: nella tua directory sicura al di fuori della cartella principale, cambia il nome del file di wp-config.php

Passa alla tua cartella wp-config.php ospitata al di fuori della tua directory principale e cambia il nome in qualcosa di unico, come 'secret-setup-file.php' o 'cheese-sandwich.php' : non importa.

Passaggio 2: modifica il codice in wp-config.php nella directory principale per riflettere il cambio di nome

Ora che hai cambiato il nome, devi assicurarti che la tua copia della directory principale di wp-config.php punti al nome del file corretto.

Scarica la copia della cartella principale di wp-config.php sul tuo computer locale e modificala con il tuo editor di codice sorgente preferito. Cambia il nome del file wp-config.php con il tuo nuovo nome file, quindi salvalo.

 <?php include('/home3/usr/secureconfig/cheese-sandwich.php'); ?>

Passaggio 3: carica di nuovo wp-config.php nella directory principale

Ti verrà chiesto se desideri sovrascrivere il file esistente. Fare clic su OK.

Ora WordPress dovrebbe puntare al tuo file di configurazione rinominato.

modifiche wp-config.php per prestazioni WordPress migliori

Puoi utilizzare il file wp-config.php per ottimizzare le impostazioni di WordPress e migliorare le prestazioni del tuo sito web. Di seguito sono elencate sette modifiche che puoi apportare a wp-config.php per ridurre le dimensioni e il carico del database, migliorare il tempo di caricamento del tuo sito e risparmiare spazio sul server.

1. Pulisci le modifiche alle immagini

Ogni volta che modifichi un'immagine in WordPress, viene creato un nuovo set di miniature e altre dimensioni dell'immagine. Quando ripristini un'immagine originale, tali modifiche non vengono eliminate. Ciò può portare a cartelle multimediali disordinate. Se vuoi assicurarti che sul tuo server esista un solo set di modifiche alle immagini e che, quando ripristini l'originale, le modifiche vengano rimosse, puoi utilizzare il codice seguente:

 define( 'IMAGE_EDIT_OVERWRITE', true );

2. Ripara il tuo database

Se il tuo sito funziona lentamente, si verificano errori e sospetti che il tuo database sia danneggiato e debba essere riparato, puoi abilitare la riparazione automatica del database utilizzando WP_ALLOW_REPAIR e impostando il valore su "true".

 define( 'WP_ALLOW_REPAIR', true );

Assicurati di disabilitare questa funzione una volta risolto il problema del database. Questo script può essere trovato anche nel file repair.php: {$your_site}/wp-admin/maint/repair.php .

3. Gestisci le impostazioni di revisione post

Durante la modifica di un post, WordPress salva automaticamente le revisioni ogni 60 secondi per impostazione predefinita. Se desideri ritardi più lunghi tra i salvataggi o desideri intervalli di salvataggio più frequenti, puoi modificare l'intervallo di salvataggio automatico.

 define( 'AUTOSAVE_INTERVAL', 60 ); // Seconds

WordPress non ha un limite al numero di revisioni dei post che vengono salvate, quindi se desideri ridurre il carico che le revisioni dei post hanno sul tuo database, puoi specificare il numero massimo o disabilitare completamente il salvataggio delle revisioni.

Specificare il numero massimo di revisioni post

 define( 'WP_POST_REVISIONS', 3 );

Disabilita le revisioni dei post

 define( 'WP_POST_REVISIONS', false );

4. Gestisci le impostazioni del cestino

Per impostazione predefinita, WordPress elimina definitivamente gli elementi nel cestino dopo che sono rimasti lì per 30 giorni. Se desideri modificare tale frequenza, puoi utilizzare il codice seguente e impostare il numero sulla frequenza desiderata.

 define( 'EMPTY_TRASH_DAYS', 30 ); // 30 days

Puoi anche disabilitare lo svuotamento del cestino impostando il numero di giorni su zero.

 define( 'EMPTY_TRASH_DAYS', 0 ); // Zero days

Nota: se disabiliti lo svuotamento del cestino, WordPress non chiederà conferma quando qualcuno fa clic su Elimina definitivamente . Usa questa impostazione con cautela!

5. Regola le impostazioni del cron

WordPress utilizza WP-Cron per la pianificazione di attività urgenti come il controllo degli aggiornamenti e la pubblicazione di post programmati.

Se i post programmati non vengono pubblicati o altri lavori cron non vengono completati sul tuo sito, potresti provare a utilizzare cron alternativo. Quando ALTERNATE_WP_CRON è impostato su "true", i browser dei visitatori vengono reindirizzati a una nuova connessione mentre cron continua a essere eseguito nella connessione interrotta.

 define( 'ALTERNATE_WP_CRON', true );

Nota: poiché questo metodo dipende da un servizio WordPress non nativo, sono presenti alcuni rischi.

Puoi anche modificare gli intervalli in cui i processi cron possono essere eseguiti o disabilitare completamente cron.

Disabilita cron

 define( 'DISABLE_WP_CRON', true );

Timeout cron

 define( 'WP_CRON_LOCK_TIMEOUT', 60 );

6. Aumenta la memoria allocata a PHP

Se disponi di plug-in o temi che utilizzano molte risorse PHP, potresti trovarti di fronte al messaggio "Dimensione della memoria consentita di xxxxxx byte esaurita". Alcuni temi e plugin possono anche specificare un limite minimo di memoria PHP per poter utilizzare il loro software o funzionalità specifiche del loro software (come l'importazione di dati demo).

Per impostazione predefinita, WordPress tenterà di aumentare i limiti di memoria PHP a 40 MB per siti singoli e 60 MB per installazioni multisito, ma potrebbe essere necessario impostare il limite più alto. A volte, il limite di memoria PHP è impostato dal tuo host e mentre alcuni host ti consentono di modificare il limite di memoria PHP, altri no.

Se il tuo host ti permette di aumentare il tuo limite di memoria PHP, puoi aggiungere il seguente codice al tuo file wp-config.php e sostituire '96M' con la quantità di memoria che ti serve (ricorda di usare M e non MB dopo il numero) :

 define( 'WP_MEMORY_LIMIT', '96M' );

Questa impostazione aumenta la memoria PHP solo per WordPress, non per altre applicazioni.

Le attività nell'area di amministrazione di WordPress richiedono molta più memoria rispetto alle attività sul front-end del tuo sito web. Puoi aumentare la memoria dell'area di amministrazione definendo WP_MAX_MEMORY_LIMIT.

 define( 'WP_MAX_MEMORY_LIMIT', '256M' );

Nota: inserisci questo codice prima dell'inclusione di wp-settings.php nel file wp-config.php .

7. Abilita/disabilita la cache

Alcuni plugin di memorizzazione nella cache utilizzano il file advanced-cache.php e attivano WP_CACHE nel file wp-config.php per te. A volte potrebbe essere necessario aggiungerlo manualmente aggiungendo quanto segue:

 define( 'WP_CACHE', true );

Oppure potresti voler disabilitare la memorizzazione nella cache. In tal caso, sostituisci "true" nell'istruzione precedente con "false".

 define( 'WP_CACHE', false );

modifiche wp-config.php per una migliore sicurezza di WordPress

Puoi utilizzare wp-config.php per gestire la sicurezza del tuo sito WordPress bloccando le richieste URL esterne, richiedendo SSL per gli amministratori, spostando le posizioni dei file e delle cartelle principali di WordPress, sovrascrivendo le autorizzazioni dei file predefinite con impostazioni di autorizzazioni più restrittive e altro ancora. Se sei interessato a utilizzare wp-config.php per proteggere meglio il tuo sito web, dai un'occhiata ai sette suggerimenti seguenti:

1. Definire un table_prefix personalizzato

Il prefisso predefinito per le tabelle del database di WordPress è 'wp_' ma puoi utilizzare qualsiasi prefisso che ti piace con il seguente codice:

 $table_prefix = 'customprefix_';

Sostituisci 'customprefix_' con il testo che preferisci, ma usa solo numeri, lettere e trattini bassi, senza caratteri speciali.

Nota: se stai modificando il prefisso della tabella in un'installazione esistente di WordPress, dovrai anche aggiornare i prefissi della tabella nel database, eseguire una ricerca e sostituire eventuali riferimenti al prefisso della tabella precedente e sostituirli con il nuovo.

2. Richiedi SSL per l'amministratore e gli accessi

Se desideri proteggere le informazioni di accesso dell'amministratore, puoi utilizzare "FORCE_SSL_ADMIN" in modo che password e cookie vengano sempre inviati tramite SSL. Imposta 'FORCE_SSL_ADMIN' su 'true' con il seguente codice in wp-config.php :

 define( 'FORCE_SSL_ADMIN', true );

Nota: dovrai anche avere SSL configurato sul tuo server prima che il tuo sito funzioni correttamente con FORCE_SSL_ADMIN impostato su true.

3. Blocca le richieste URL esterne

Per una maggiore sicurezza, puoi impedire le richieste URL esterne dal tuo server definendo "WP_HTTP_BLOCK_EXTERNAL" come "true". With this constant enabled, only your website and localhost will be able to make requests.

 define( 'WP_HTTP_BLOCK_EXTERNAL', true );

If you want to make an exception for specific hosts, you can define WP_ACCESSIBLE_HOSTS with a list of comma separated host names. If you want to allow all subdomains of a host, prefix the domain name with '*.' (eg '*.wordpress.org'). and this will only allow localhost and your blog to make requests.

For example, if you want to make an exception for Google Fonts and all subdomains of WordPress.org, you would add the following to wp-config.php :

 define( 'WP_ACCESSIBLE_HOSTS', 'fonts.googleapis.com,*.wordpress.org' );

4. Disable the plugin and theme file editor

By default, WordPress site admins have access to the plugin and theme file editor feature in the WordPress dashboard. This can be a security risk. An admin that doesn't have a good understanding of how to (and how NOT to) edit these files could attempt to make edits that break your site. A disgruntled admin may intentionally sabotage these files, or a hacker may get access to the admin interface and attempt to edit core files through the plugin and theme file editor.

To disable the plugin and theme file editor define 'DISALLOW_FILE_EDIT' as 'true.'

 define( 'DISALLOW_FILE_EDIT', true );

Note : Some plugins may check user capabilities with “current_user_can('edit_plugins')”. If you have plugins installed that use this function, they may not work correctly when 'DISALLOW_FILE_EDIT' is set to 'true'. If you define 'DISALLOW_FILE_EDIT' as 'true' and you experience issues with a plugin afterward, then this function in the plugin code may be the culprit.

5. Disable plugin and theme updates and installations

If you want to block users from being able to update or install plugins and themes from the WordPress admin area, you can set 'DISALLOW_FILE_MODS' to 'true.' This will also disable the plugin and theme file editor.

 define( 'DISALLOW_FILE_MODS', true );

6. Move core WordPress folders

Keeping core WordPress folders in custom locations can help secure your site against hackers. Especially if hackers are using automated scripts to find the default names of certain files and folders, changing their location can protect your site against these types of attacks.

Move the wp-content folder

Your wp-content directory contains your themes, plugins, and uploads. You can move this outside of the WordPress directory by setting WP_CONTENT_DIR to the full local path of the directory or to the full URL.

File path

 define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/blog/wp-content' );

URL

 define( 'WP_CONTENT_URL', 'http://example/blog/wp-content' );

Note: Do not include the trailing '/' in the file path.

Move the plugins folder

You can protect your plugins by moving the folder location and using the following options to define the path to your new folder:

Set 'WP_PLUGIN_DIR' to the full local directory path.

 define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/blog/wp-content/secureplugins/plugins' );

Set 'WP_PLUGIN_URL' to the full directory URL.

 define( 'WP_PLUGIN_URL', 'http://example/blog/wp-content/secureplugins/plugins' );

If you encounter compatibility issues with plugins, you can set 'PLUGINDIR' to the full local directory path .

 define( 'PLUGINDIR', dirname(__FILE__) . '/blog/wp-content/secureplugins/plugins' );

Note: Do not include the trailing '/' in the file paths.

Move the uploads folder

Moving your uploads folder is a great way to help protect against scripts that may attempt to upload content directly to the default WordPress uploads folder file path. Use the 'UPLOADS' constant to define your path to the uploads folder.

 define( 'UPLOADS', 'blog/wp-content/secureuploads/uploads' );

Note: use a relative path to your uploads folder without the leading '/.'

7. Sostituisci i permessi dei file predefiniti

In alcuni casi potrebbe essere necessario regolare i permessi dei file per sovrascrivere i permessi dei file predefiniti impostati da WordPress o dal tuo host. Sebbene tu possa modificare i permessi dei file individualmente tramite SFTP o cPanel, puoi anche sovrascriverli in massa usando wp-config.php . Potresti voler utilizzare autorizzazioni più restrittive per alcuni file e cartelle e autorizzazioni meno restrittive per altri, a seconda dei tuoi obiettivi.

Per ignorare l'autorizzazione di un file, utilizzerai la costante 'FS_CHMOD_FILE'. Per sovrascrivere un'autorizzazione di directory, utilizzerai 'FS_CHMOD_DIR.'

File

 define( 'FS_CHMOD_FILE', ( 0644 & ~ umask() ) );

Directory

 define( 'FS_CHMOD_DIR', ( 0755 & ~ umask() ) );

Esempio per fornire setgid (autorizzazioni di gruppo):

 define( 'FS_CHMOD_DIR', ( 02755 & ~umask() ) );

Nota: ' 0755′ e ' 02755 ' sono valori ottali e devono essere preceduti da uno '0'.

Funzionalità avanzate di wp-config.php per gli sviluppatori

Oltre alla sicurezza e all'ottimizzazione del sito, gli sviluppatori possono utilizzare wp-config.php per aggiungere altre impostazioni personalizzate agli ambienti WordPress. Di seguito sono riportate solo alcune funzionalità da considerare l'utilizzo in wp-config.php :

1. Definisci l'URL di WordPress

La costante WP_SITEURL ti consente di definire l'indirizzo in cui si trovano i file core di WordPress. Dovresti includere http:// o https://, il dominio principale e le sottocartelle che ospitano i file core di WordPress. Tuttavia, non includere il "/" finale alla fine dell'URL.

 define( 'WP_SITEURL', 'http://yoursite.com/wordpress' );

Quando imposti l'indirizzo WP_SITEURL in wp-config.php , il valore per 'siteurl' nel database verrà sovrascritto. Poiché WP_SITEURL ha la precedenza solo sul valore 'siteurl' nel database, anziché sovrascriverlo effettivamente, se elimini il codice WP_SITEURL nel tuo file wp-config.php , verrà utilizzato il valore del database originale per 'siteurl'.

Puoi anche impostare dinamicamente l'URL del sito in base all'host del server o al nome del server.

Host del server:

 define( 'WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST'] . '/path/to/wordpress' );

Nome del server:

 define( 'WP_SITEURL', 'http://' . $_SERVER['SERVER_NAME'] . '/path/to/wordpress' );

Nota: potrebbe essere più sicuro utilizzare SERVER_NAME rispetto a HTTP_HOST. L'utilizzo di HTTP_HOST può consentire vulnerabilità di inclusione di file. Inoltre, se il tuo server utilizza Apache ed è configurato come UseCanonicalName "on" , SERVER_NAME non è impostato in modo dinamico ed è invece impostato dalla configurazione del server. In questo caso vorresti utilizzare SERVER_NAME invece di HTTP_HOST.

2. Definisci l'URL principale

Il tuo URL principale è l'URL che usi per accedere alla prima pagina del tuo sito. Normalmente il tuo URL principale sarebbe il tuo dominio principale (es. https://mysite.com) anche se installi WordPress in una sottodirectory.

Se preferisci includere la tua sottodirectory come parte del tuo URL home, puoi usare WP_HOME per sovrascrivere il valore della tabella wp_options per home. Non lo cambierà nel database, quindi se rimuovi questa riga da wp-config.php , l'URL della home page del tuo sito tornerà al valore nella tabella wp_options .

 define( 'WP_HOME', 'https://mysite.com/wordpress' );

Dovrai anche aggiungere il seguente codice a index.php nella directory principale del tuo sito:

 define( 'WP_HOME', 'https://mysite.com' );

Come con "SERVER_NAME" e "SERVER_HOST", puoi anche impostare dinamicamente "WP_HOME". Usa $_SERVER['HTTP_HOST'] tra http:// o https:// e il percorso del tuo file su WordPress (senza il dominio principale) come segue:

 define( 'WP_HOME', 'http://' . $_SERVER['HTTP_HOST'] . '/path/to/wordpress' );

3. Imposta il dominio dei cookie

Se hai una configurazione di dominio non standard, potresti voler specificare il tuo dominio cookie utilizzando la costante "COOKIE_DOMAIN". I casi d'uso per questo includono:

Servire contenuto statico da un sottodominio. Se offri contenuto statico da un sottodominio ma desideri impostare il dominio del cookie sull'URL in cui risiede il tuo contenuto dinamico, utilizza quanto segue:

 define( 'COOKIE_DOMAIN', 'www.mysite.com' );

Nota: non è necessario includere http:// o https:// prima del nome di dominio.

Esecuzione di una rete multisito. Se stai eseguendo una rete multisito in sottocartelle di un dominio e riscontri problemi con i cookie (ad es. viene visualizzato l'errore "I cookie sono bloccati o non supportati dal tuo browser. Devi abilitare i cookie per utilizzare WordPress."), puoi assicurarti che i cookie appartengano ai domini da cui sono richiesti e non provengano da un singolo dominio impostando COOKIE_DOMAIN su un valore vuoto.

 define( 'COOKIE_DOMAIN', '' );

4. Abilita le abilità multisito

WordPress non viene fornito con funzionalità multisito abilitate automaticamente. La maggior parte delle installazioni di WordPress non avrà bisogno di questa funzione. Ma se ne hai bisogno, puoi abilitarlo facilmente usando la costante 'WP_ALLOW_MULTISITE'.

 define( 'WP_ALLOW_MULTISITE', true );

5. Reindirizzare sottodomini o cartelle inesistenti

Sebbene tu possa consentire ai visitatori di atterrare sulla tua pagina 404 predefinita quando il contenuto non viene trovato, potrebbe essere un'esperienza utente migliore indirizzarli a una pagina personalizzata. Puoi farlo facilmente tramite wp-config.php usando la costante 'NOBLOGREDIRECT'.

 define( 'NOBLOGREDIRECT', 'https://mysite.com/custompage' );

6. Non aggiornare le tabelle globali

Se hai un sito con tabelle globali di grandi dimensioni o condividi tabelle utente tra più installazioni di WordPress (i forum e i siti di e-commerce possono rientrare in queste categorie), puoi impedire a WordPress di eseguire query ad alta intensità di risorse su tabelle globali durante il processo di aggiornamento impostando 'DO_NOT_UPGRADE_GLOBAL_TABLES ' a 'vero.'

 define( 'DO_NOT_UPGRADE_GLOBAL_TABLES', true );

7. Gestisci le impostazioni di aggiornamento automatico

Potresti voler disabilitare gli aggiornamenti automatici di temi, plug-in e core di WordPress, specialmente se stai testando un sito di sviluppo o risolvendo un problema. Potresti anche voler scegliere se il core di WordPress si aggiorna automaticamente solo per aggiornamenti minori, per tutte le nuove versioni o per niente.

Disabilita gli aggiornamenti automatici

Per disabilitare completamente tutti gli aggiornamenti automatici, imposta "AUTOMATIC_UPDATER_DISABLED" su "true".

 define( 'AUTOMATIC_UPDATER_DISABLED', true );

Disabilita gli aggiornamenti principali di WordPress

Puoi impostare la costante 'WP_AUTO_UPDATE_CORE' per consentire gli aggiornamenti automatici di tutte le versioni, solo aggiornamenti minori o disabilitare tutti gli aggiornamenti core automatici.

Disabilita tutti gli aggiornamenti di base

 define( 'WP_AUTO_UPDATE_CORE', false );

Abilita tutti gli aggiornamenti di base

 define( 'WP_AUTO_UPDATE_CORE', true );

Abilita gli aggiornamenti principali per le versioni minori

 define( 'WP_AUTO_UPDATE_CORE', 'minor' );

8. Definisci le costanti di aggiornamento di WordPress

Se hai problemi con l'aggiornamento di WordPress, potresti dover definire alcune costanti di aggiornamento di WordPress aggiuntive per arrivare alla radice del tuo problema. Prova a utilizzare il minor numero possibile di queste costanti per risolvere il tuo problema.

I due motivi più comuni per cui potresti aver bisogno di definire queste costanti in wp-config.php sono:

  • Il tuo host sta usando i collegamenti simbolici nella tua installazione. In questo caso, potrebbe essere necessario definire costanti relative al percorso come FTP_BASE, FTP_CONTENT_DIR e FTP_PLUGIN_DIR.
  • L'installazione di PHP utilizza un'estensione FTP incompatibile con alcuni server FTP. Questa è una situazione rara, ma se ti trovi ad affrontare questo problema, potresti dover definire FS_METHOD su 'ftpsockets.'

Di seguito è riportato un elenco di costanti valide e codice di esempio per gli aggiornamenti di WordPress:

METODO_FS Questo forza il metodo del file system. In ordine di preferenza, dovrebbe essere impostato su: direct , ssh2 , ftpext o ftpsockets . Modificalo solo se riscontri problemi di aggiornamento. Se la modifica non risolve il problema, è necessario ripristinarne il valore originale o rimuoverlo. Se altri metodi falliscono, 'ftpsockets' di solito funzionerà. define( 'FS_METHOD', 'ftpext' );
FTP_BASE Il percorso completo della cartella di installazione di WordPress (ABSPATH). define( 'FTP_BASE', '/percorso/di/wordpress/');
FTP_CONTENT_DIR Il percorso completo della cartella del contenuto wp . define( 'FTP_CONTENT_DIR', '/percorso/di/wordpress/wp-content/');
FTP_PLUGIN_DIR Il percorso completo della cartella dei plugin. define( 'FTP_PLUGIN_DIR ', '/percorso/di/wordpress/wp-content/plugins/');
FTP_PUBKEY Il percorso completo della chiave pubblica SSH. define( 'FTP_PUBKEY', '/home/nomeutente/.ssh/id_rsa.pub');
FTP_PRIKEY Il percorso completo della tua chiave privata SSH. define( 'FTP_PRIKEY', '/home/nomeutente/.ssh/id_rsa');
FTP_USER Definisce il nome utente FTP o il nome utente SSH. Sebbene questi siano spesso gli stessi, possono essere diversi. Usa il nome utente FTP se stai aggiornando tramite FTP e il nome utente SSH se stai aggiornando tramite SSH. define( 'UTENTE_FTP', 'nome utente' );
FTP_PASS La password per il nome utente definito con FTP_USER . Non è necessario includerlo se si utilizza l'autenticazione con chiave pubblica SSH. define( 'FTP_PASS', 'password' );
FTP_HOST Il nome host per il tuo server SSH/FTP. Alcune configurazioni dovrebbero utilizzare "localhost" come valore "FTP_HOST" per evitare errori 503 durante l'aggiornamento dei plug-in o del core di WordPress. define( 'FTP_HOST', 'ftp.mysite.com');
FTP_SSL Questa impostazione si applica alla configurazione di "FTP protetto", non SFTP SSH. Impostalo su "true" per una connessione SSL solo se supportata dal trasporto sottostante. Questo potrebbe non essere disponibile su tutti i server. SFTP: define('FTP_SSL', vero); FTP: define('FTP_SSL', false);

9. Crea tabelle utente e meta utente personalizzate

Le costanti 'CUSTOM_USER_TABLE' e 'CUSTOM_USER_META_TABLE' vengono utilizzate per assegnare tabelle personalizzate per la memorizzazione dei dati utente. Queste impostazioni sono implementate al meglio durante la configurazione iniziale di WordPress.

 define( 'CUSTOM_USER_TABLE', $table_prefix.'my_users' ); define( 'CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta' );

Nota : se stai eseguendo un'installazione multisito di WordPress, viene creata una tabella usermeta e le autorizzazioni corrispondenti per il database di ciascuna istanza di WordPress, anche se definisci manualmente "CUSTOM_USER_META_TABLE". Le autorizzazioni vengono aggiunte solo per il primo utente, quindi dovrai gestire le autorizzazioni utente per ciascun sito utilizzando una funzione o un plug-in personalizzato, altrimenti riscontrerai problemi di accesso.

Garantire l'accesso dell'amministratore con usermeta personalizzate e tabelle usermeta durante la configurazione multisito:

  1. Dopo aver creato il tuo primo sito e aver aggiunto le tue tabelle user e usermeta personalizzate, copia il file wp-config.php nell'istanza successiva e modifica la variabile $table_prefix. Se il primo sito usa 'my_usermeta', il tuo secondo sito dovrebbe usare qualcosa di diverso (es. 'site2_usermeta').
  2. Utilizza un indirizzo email diverso per questa istanza successiva rispetto a quello utilizzato per l'installazione originale.
  3. Al termine della configurazione, accedi con l'account amministratore e la password generati automaticamente.
  4. Promuovi l'account che desideri utilizzare come amministratore al livello di amministratore, quindi esci dal tuo amministratore di WordPress.
  5. Accedi nuovamente con il tuo nuovo account amministratore ed elimina l'account generato automaticamente.

10. Salva le query per l'analisi

Se esegui e analizzi le query del database e devi salvarle per un esame successivo, puoi utilizzare la costante 'SAVEQUERIES' in wp-config.php . Le query vengono salvate in un array che può essere visualizzato utilizzando il codice nel file footer.php . La funzione salverà le tue query, quale funzione le ha chiamate e il tempo impiegato dalle query per essere eseguite.

Questa operazione potrebbe rallentare il tuo sito, quindi dovresti disattivare questa funzione a meno che tu non stia eseguendo attivamente il debug.

Aggiungi quanto segue a wp-config.php :

 define( 'SAVEQUERIES', true );

In footer.php (nella cartella del tuo tema), aggiungi questo codice:

 <?php
if ( current_user_can( 'administrator' ) ) {
global $wpdb;
echo "<pre>";
print_r( $wpdb->queries );
echo "</pre>";
}
?>

11. Configurare il debug e la registrazione degli errori

Ricordi lo schermo bianco della morte? Ebbene, dopo il rilascio di WordPress 5.2, invece della temuta schermata bianca e vuota, vedrai ora un messaggio di errore che dice “ Il sito sta riscontrando difficoltà tecniche. Si prega di controllare la casella di posta elettronica dell'amministratore del sito per le istruzioni. quando si verifica un errore fatale.

Ovviamente, se si verifica un errore irreversibile, ti consigliamo di abilitare il debug e la registrazione degli errori in modo da poter risolvere il problema. Per fare ciò ti consigliamo di utilizzare la costante 'WP_DEBUG' e impostarla su 'true' (il valore predefinito è 'false').

 define( 'WP_DEBUG', true );

L'impostazione di "WP_DEBUG" su "true" consentirà la stampa degli errori del database e aumenta i livelli di segnalazione degli errori in modo da visualizzare avvisi quando vengono utilizzati file o funzioni obsoleti.

Prima di poter stampare questi errori, tuttavia, dovrai disabilitare la modalità di ripristino impostando 'WP_DISABLE_FATAL_ERROR_HANDLER' su 'true' e abilitare 'WP_DEBUG_DISPLAY'.

 define( 'WP_DISABLE_FATAL_ERROR_HANDLER', true );   // 5.2 and later define( 'WP_DEBUG_DISPLAY', true );

Puoi scegliere di non registrare gli errori e di stamparli semplicemente sullo schermo, ma dovresti abilitare queste impostazioni su un sito di sviluppo o staging in modo da non stampare errori visibili al pubblico sul tuo sito live. Se le tue impostazioni nel tuo file php.ini sono già impostate per registrare gli errori anziché visualizzarli, puoi sovrascriverli con quanto segue in wp-config.php :

 @ini_set( 'log_errors', 'Off' ); @ini_set( 'display_errors', 'On' ); define( 'WP_DEBUG_LOG', false );

Se php.ini non è impostato per registrare gli errori e vuoi abilitare la registrazione degli errori, dovrai fare un po' più di lavoro.

Il registro degli errori predefinito e le impostazioni di visualizzazione si trovano nel file php.ini . In alcuni casi, potresti non avere accesso a questo file o la tua società di hosting potrebbe utilizzare user.ini o qualche altra convenzione di denominazione. Se non hai accesso a questo file, chiedi alla tua società di hosting di apportare queste modifiche per te.

Impostazioni di errore php.ini consigliate :

 error_reporting = 4339 display_errors = Off display_startup_errors = Off log_errors = On error_log = /home/mysite.com/logs/php_error.log log_errors_max_len = 1024 ignore_repeated_errors = On ignore_repeated_source = Off html_errors = Off

Se attivi la registrazione degli errori, ricorda di eliminare il file in seguito, poiché spesso si trova in una posizione accessibile pubblicamente, dove chiunque potrebbe accedere al tuo registro.

Puoi anche usare wp-config.php per attivare PHP error_logging e registrarli in un file specificato. Assicurati che WP_DEBUG sia definito su true e inserisci quanto segue sopra qualsiasi require_once o include comandi:

 @ini_set( 'log_errors', 'On' ); @ini_set( 'display_errors', 'Off' ); @ini_set( 'error_log', '/home/mysite.com/logs/php_error.log' ); /* That's all, stop editing! Happy blogging. */

Per ulteriori esempi di tecniche di registrazione degli errori puoi dare un'occhiata ai suggerimenti di Mike Little sull'elenco di posta elettronica di wp-hacker o sul Manchester WordPress User Group.

Ci sono alcune cose importanti da tenere a mente quando si implementano le impostazioni di debug e registrazione:

  1. Se 'WP_DEBUG' è impostato su 'false', 'WP_DEBUG_DISPLAY' e 'WP_DEBUG_LOG' non funzioneranno.
  2. Se 'WP_DEBUG' è impostato su 'true', le altre costanti saranno attive solo se anch'esse sono impostate su 'true'. Ciò include le direttive nel tuo file php.ini , non solo le istruzioni in wp-config.php . Quindi se php.ini imposta ('display_errors' = 'Off'); ma define( 'WP_DEBUG_DISPLAY', vero); è impostato nel file wp-config.php , gli errori non verranno visualizzati perché il comportamento configurato in PHP avrà la precedenza.
  3. Per assicurarti che le tue direttive funzionino come previsto, dovresti definire esplicitamente sia le impostazioni di php.ini che le corrispondenti impostazioni di wp-config.php .

Per la tua installazione pubblica di WordPress di produzione, potresti considerare di inserire quanto segue nel tuo file wp-config.php , anche se potrebbe essere in parte ridondante:

 @ini_set( 'log_errors', 'On' ); @ini_set( 'display_errors', 'Off' ); define( 'WP_DISABLE_FATAL_ERROR_HANDLER', false ); // 5.2 and later define( 'WP_DEBUG', false ); define( 'WP_DEBUG_LOG', false ); define( 'WP_DEBUG_DISPLAY', false );

Nota: se stai utilizzando il file di registro di debug predefinito nella sua posizione predefinita di /wp-content/debug.log , ti consigliamo di limitare l'accesso al file solo a SFTP. Imposta le autorizzazioni del file di registro su 600 e aggiungi quanto segue al file . htaccess nella tua directory principale:

 <Files debug.log> Order allow,deny Deny from all </Files>

12. Definisci il tipo di ambiente WordPress

Se stai configurando siti locali, di sviluppo o di staging, può essere utile definire 'WP_ENVIRONMENT_TYPE'. Quando questa costante non è definita, il tipo di ambiente predefinito è production . I valori consentiti sono: locale , sviluppo , allestimento e produzione .

 define( 'WP_ENVIRONMENT_TYPE', 'staging' );

Nota: quando 'WP_ENVIRONMENT_TYPE' è impostato su 'development', WP_DEBUG verrà automaticamente impostato su 'true' se non è già definito in wp-config.php .

13. Eseguire il debug degli script

Se stai risolvendo problemi con JavaScript e CSS, puoi utilizzare la costante SCRIPT_DEBUG per forzare WordPress a utilizzare le versioni di sviluppo di script e fogli di stile. I file in wp-includes/js , wp-includes/css , wp-admin/js e wp-admin/css verranno caricati al posto delle versioni ridotte. Per visualizzare queste versioni di sviluppo, imposta "SCRIPT_DEBUG" su "true".

 define( 'SCRIPT_DEBUG', true );

14. Disabilita la concatenazione JavaScript

In WordPress, i file JavaScript vengono sequenziati per accelerare il tempo di caricamento delle schermate di amministrazione. Se ricevi errori JavaScript nell'area di amministrazione di WordPress, puoi disabilitare la concatenazione degli script impostando "CONCATENATE_SCRIPTS" su "false".

 define( 'CONCATENATE_SCRIPTS', false );

È questa la guida definitiva a wp-config.php ?

Anche se questo articolo è piuttosto ampio e copre tutto, dalle basi su come individuare, accedere e modificare wp-config.php , non è affatto esaustivo. La modalità di configurazione del file wp-config.php sarà specifica per le tue esigenze, l'ambiente del server e le preferenze personali. Se hai ulteriori domande sui modi in cui puoi utilizzare il file wp-config.php , puoi fare riferimento alla documentazione di supporto di WordPress.org. Abbiamo anche incluso alcune risposte alle domande frequenti di seguito.

Domande frequenti su wp-config.php

Cosa succede se non riesco a trovare la mia posizione wp-config.php ?

Mentre il tuo file wp-config.php si trova normalmente nella cartella principale dell'installazione di WordPress, potrebbe trovarsi da qualche altra parte. È più probabile che si verifichi questo problema se stai rilevando un sito WordPress da uno sviluppatore precedente o se la tua società di hosting installa automaticamente WordPress per te. Se hai problemi a trovare il tuo file wp-config.php , puoi fare una ricerca nel tuo programma SFTP o in cPanel.

Filezilla

Se stai utilizzando Filezilla per accedere al tuo sito tramite SFTP, puoi fare clic sull'icona del binocolo in alto per eseguire una ricerca di file. Cerca 'wp-config.php' nella cartella più in alto a cui hai accesso nel caso wp-config.php si trovi in ​​una cartella al di fuori della directory principale. Potrebbero essere necessari diversi minuti prima che i risultati vengano visualizzati, poiché cercherai tutte le cartelle sul tuo server.

modulo di ricerca in Filezilla

cPannello

La ricerca di wp-config.php in cPanel è piuttosto semplice. Nel cPanel del tuo host, fai clic su File Manager in File .

Verrai indirizzato al tuo albero di file sul tuo server e in alto a destra dello schermo ci sarà un campo di ricerca. Puoi utilizzare il selettore a discesa a sinistra per scegliere se desideri cercare tutti i file o solo una directory specifica. Dal momento che non sai dove si trova wp-config.php , probabilmente è meglio cercare in tutte le directory.

Immettere 'wp-config.php' nel campo di ricerca e fare clic su Vai .

modulo di ricerca in cpanel

Se ancora non riesci a trovare wp-config.php , è possibile che la sua cartella non disponga delle autorizzazioni corrette impostate per potervi accedere. In questo caso, contatta la tua società di hosting per assistenza.

Cosa succede se il mio file wp-config.php non è scrivibile?

Se nella dashboard di WordPress viene visualizzato un errore relativo alle autorizzazioni di scrittura mancanti per wp-config.php , è probabile che sia dovuto a un plug-in che richiede l'accesso in scrittura a wp-config.php . Alcuni plugin richiedono questo tipo di accesso per aggiungere il codice necessario per il funzionamento del plugin. Tuttavia, alcuni host possono implementare autorizzazioni rigorose su wp-config.php per motivi di sicurezza che negano anche l'accesso in scrittura a questi plugin.

Se il tuo host ti consente di apportare modifiche a queste impostazioni, dovresti essere in grado di modificare le autorizzazioni di file e cartelle tramite SFTP o cPanel.

SFTP

Per questo esempio, stiamo usando Filezilla.

1. Collegati al tuo server tramite SFTP.

2. Trova il tuo file wp-config.php . Si trova nella cartella principale dell'installazione di WordPress per impostazione predefinita, ma potrebbe trovarsi da qualche altra parte.

3. Fare clic con il pulsante destro del mouse sul file wp-config.php e fare clic su Autorizzazioni file .

permessi di modifica dei file

Assicurati che le autorizzazioni del file siano impostate su 640 o 644.

impostando i permessi dei file su 644

Se wp-config.php si trova in una cartella al di fuori della cartella principale, ricontrolla che i permessi della cartella siano impostati su 750 o 755.

impostando i permessi dei file su 755

Nota: alcune piattaforme di hosting potrebbero richiedere l'utilizzo di valori di autorizzazione diversi. Per i file, puoi provare 664 e 666. Per le cartelle, prova 775.

Se la modifica dei permessi dei file non risolve il problema relativo alla concessione dell'accesso in scrittura, è probabile che la colpa sia delle impostazioni di proprietà del file e dovrai contattare il tuo provider di hosting per apportare eventuali modifiche.

Maggiori informazioni sui permessi dei file di WordPress.

I plugin possono modificare il mio file wp-config.php ?

Se le autorizzazioni per cartelle e file sono impostate per consentire l'accesso in scrittura (750, 755 o 775 per le cartelle; 640, 644, 664 o 666 per i file), i plug-in dovrebbero essere in grado di scrivere su wp-config.php . Se desideri impedire ai plugin di scrivere sul tuo file wp-config.php , puoi impostare autorizzazioni file più rigide di 440 o 400. Ciò impedirà anche ad altri utenti sul tuo server di leggere wp-config.php .

Che cos'è wp-config-sample.php ?

Quando scarichi inizialmente WordPress, non è incluso il file wp-config.php . Questo file viene solitamente impostato durante il processo di installazione o può essere configurato manualmente. Il file wp-config-sample.php è incluso in WordPress in modo che gli utenti dispongano di un modello da utilizzare durante la configurazione manuale di wp-config.php , oltre ad avere anche un modello di backup "pulito" da cui lavorare se dovesse succedere qualcosa al tuo file wp-config.php originale che hai creato.

wp-config-sample.php include tutte le costanti di base e i valori segnaposto necessari per configurare WordPress, nonché le spiegazioni commentate delle sezioni all'interno del file che aiutano gli utenti a capire dove posizionare determinate informazioni.

contenuto wp-config-sample.php:

 <?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the installation. * You don't have to use the web site, you can copy this file to "wp-config.php" * and fill in the values. * * This file contains the following configurations: * * * Database settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://wordpress.org/support/article/editing-wp-config-php/ * * @package WordPress */ // ** Database settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' ); /** Database username */ define( 'DB_USER', 'username_here' ); /** Database password */ define( 'DB_PASSWORD', 'password_here' ); /** Database hostname */ define( 'DB_HOST', 'localhost' ); /** Database charset to use in creating database tables. */ define( 'DB_CHARSET', 'utf8' ); /** The database collate type. Don't change this if in doubt. */ define( 'DB_COLLATE', '' ); /**#@+ * Authentication unique keys and salts. * * Change these to different unique phrases! You can generate these using * the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}. * * You can change these at any point in time to invalidate all existing cookies. * This will force all users to have to log in again. * * @since 2.6.0 */ define( 'AUTH_KEY', 'put your unique phrase here' ); define( 'SECURE_AUTH_KEY', 'put your unique phrase here' ); define( 'LOGGED_IN_KEY', 'put your unique phrase here' ); define( 'NONCE_KEY', 'put your unique phrase here' ); define( 'AUTH_SALT', 'put your unique phrase here' ); define( 'SECURE_AUTH_SALT', 'put your unique phrase here' ); define( 'LOGGED_IN_SALT', 'put your unique phrase here' ); define( 'NONCE_SALT', 'put your unique phrase here' ); /**#@-*/ /** * WordPress database table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix = 'wp_'; /** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the documentation. * * @link https://wordpress.org/support/article/debugging-in-wordpress/ */ define( 'WP_DEBUG', false ); /* Add any custom values between this line and the "stop editing" line. */ /* That's all, stop editing! Happy publishing. */ /** Absolute path to the WordPress directory. */ if ( ! defined( 'ABSPATH' ) ) { define( 'ABSPATH', __DIR__ . '/' ); } /** Sets up WordPress vars and included files. */ require_once ABSPATH . 'wp-settings.php';