Instalar Drupal en un subdirectorio simulando que está en el raíz

ApacheDrupalPHP

Muchas veces queremos tener nuestra cuenta de hosting ordenada y podemos querer la página principal en un subdirectorio en lugar de tenerla en el directorio raíz (donde también puede que tengas las carpetas de otras páginas). Además, no queremos acceder mediante http://www.sitio.com/drupal/; querremos acceder como si fuese realmente el directorio raíz http://www.sitio.com/.

Aquí va la solución. Con estas modificaciones en nuestro archivo .htaccess del directorio raíz estará casi todo hecho.

Options -Indexes
RewriteEngine on
Options +FollowSymLinks
RewriteCond %{HTTP_HOST} !^www\.sitio\.com$ [NC]
RewriteRule .* http://www.sitio.com/ [L,R=301]
RewriteRule ^$ drupal/index.php [L]
RewriteCond %{DOCUMENT_ROOT}/drupal%{REQUEST_URI} -f
RewriteRule .* drupal/$0 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* drupal/index.php?q=$0 [QSA]

Después, en el .htacess que está dentro del directorio drupal, es decir «drupal/.htaccess», deshabilitamos  el mod_rewrite cambiando <IfModule mod_rewrite.c> por:

<IfModule XXXmod_rewrite.c>

Finalmente, en «drupal/sites/default/settings.php», eliminamos el comentario de la siguiente línea:

$base_url = 'http://www.mysite.com';

Es una solución efectiva que he estado utilizando, aunque puede que haya mejores soluciones.


Avatar de Edu Lazaro

Edu Lázaro: Ingeniero técnico en informática, actualmente trabajo como desarrollador web y programador de videojuegos.

👋 Hola! Soy Edu, me encanta crear cosas y he redactado esta guía. Si te ha resultado útil, el mayor favor que me podrías hacer es el de compatirla en Twitter 😊

Si quieres conocer mis proyectos, sígueme en Twitter.

Deja una respuesta

“- Hey, Doc. No tenemos suficiente carretera para ir a 140/h km. - ¿Carretera? A donde vamos, no necesitaremos carreteras.”