Instrucciones
OPCIÓN 1
Pasos para solucionar el error "Redirects to external URLs are not allowed by default":
- Abre el archivo settings.php y añade el o los dominios que utilizas para conectarte a tu web, dentro del apartado "Trusted Host".
$settings['trusted_host_patterns'] = [ '^mywebsite\.com$', '^www\.mywebsite\.com$', ];
- A continuación, añade las siguientes líneas, justo debajo del bloque que acabas de añadir:
if (isset($GLOBALS['request']) and '/var/www/mywebsite.com/datos/web/index.php' === $GLOBALS['request']->server->get('SCRIPT_NAME')) { $GLOBALS['request']->server->set('SCRIPT_NAME', '/index.php'); }
- Por último, asegúrate de que dentro de la carpeta /web, existe un archivo .htaccess, con la siguiente declaración:
# If your site is running in a VirtualDocumentRoot at http://example.com/, # uncomment the following line: RewriteBase /
OPCIÓN 2 (Drupal en Subdirectorio)
- En la carpeta public_html, añadir o editar el .htaccess:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?DOMINIO.com$
RewriteCond %{REQUEST_URI} !^/SUBFOLDER/web/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /SUBFOLDER/web/$1
RewriteCond %{HTTP_HOST} ^(www.)?DOMINIO.com$
RewriteRule ^(/)?$ web/index.php [L]
</IfModule>
- Abre el archivo settings.php y añade el o los dominios que utilizas para conectarte a tu web, dentro del apartado "Trusted Host".
$settings['trusted_host_patterns'] = [ '^mywebsite\.com$', '^www\.mywebsite\.com$', ];
- Añade, al final de tu archivo settings.php el siguiente código, modificando SUBFOLDER.
if (isset($GLOBALS['request']) and '/SUBFOLDER/web/index.php' === $GLOBALS['request']->server->get('SCRIPT_NAME')) {
$GLOBALS['request']->server->set('SCRIPT_NAME', '/index.php');
}