WordPress: come far vedere in radice una installazione presente in sottocartella

Introduzione

Quando decidi di installare WordPress in una sottocartella (es. miosito/), l’URL principale del sito diventa dominio.estensione/miosito/.
Tuttavia, è possibile rendere il sito accessibile direttamente da dominio.estensione intervenendo su pochi elementi: l’URL del sito, il file index.php e il file .htaccess.
Questa guida descrive come configurare ciascun elemento in modo coerente e sicuro. 

Prerequisiti

Prima di iniziare:

  • accesso al pannello WordPress (Area Amministratore);
  • un client FTP o accesso via File Manager per modificare file .htaccess e index.php
  • un backup completo di file e database (sempre consigliato);
  • il nome esatto della sottocartella dell’installazione.

Procedura passo passo

Per far vedere in radice una installazione presente in sottocartella:

  1. autenticati al pannello di controllo di WordPress;
  2. dal menu di sinistra seleziona Impostazioni > Generali per accedere al back-end di WordPress;
  3. modifica Indirizzo sito (URL) eliminando il nome della sotto cartella visibile di default:
Schermata delle Impostazioni generali di WordPress con modifica degli URL del sito e dell’indirizzo WordPress
  1. vai su Salva le modifiche in fondo alla schermata per concludere l'operazione;
  2. accedi all'area FTP del dominio sulla cartella dove è presente l'installazione (ad esempio "miosito") e scarica in locale i file .htaccess e index.phpquindi modificali secondo le indicazioni di seguito:

Al posto dell'indicazione "miosito" deve essere inserito il nome della tua sottocartella.

Modifiche da apportare al file .htaccess:

Variare solo le righe evidenziate in grassetto:

  • # BEGIN WordPress
    # Le direttive (linee) tra `BEGIN WordPress` e `END WordPress` sono
    # generate dinamicamente, e dovrebbero essere modificate solo tramite i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori verrà sovrascritta.
    <ifmodule mod_rewrite.c="">
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /miosito
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /miosito/index.php [L]
    </ifmodule>
    # END WordPress

Dopo la modifica delle righe evidenziate il file .htaccess deve risultare come di seguito:

  • # BEGIN WordPress
    # Le direttive (linee) tra `BEGIN WordPress` e `END WordPress` sono
    # generate dinamicamente, e dovrebbero essere modificate solo tramite i filtri di WordPress.
    # Ogni modifica alle direttive tra questi marcatori verrà sovrascritta.
    <ifmodule mod_rewrite.c="">
    RewriteEngine On
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </ifmodule>
    # END WordPress

Modifiche da apportare al file index.php:

Variare solo la riga di seguito indicata:
require __DIR_ . '/wp-blog-header.php';
Dopo la modifica il file index.php deve risultare come di seguito esemplificato:
require __DIR_ . '/miosito/wp-blog-header.php';

  1. trasferisci i file modificati sull'area FTP del dominio sulla radice del dominio tramite client_ftp.

Aiutaci a migliorare