joder98
Estoy tratando de crear un subdominio sub.domain.com
que muestra domain.com/sub
sin cambiar la barra de direcciones.
Se me ocurrió la siguiente regla .htaccess basada en otras preguntas hechas aquí:
RewriteCond %{HTTP_HOST} ^sub\.domain\.com$ [NC]
RewriteRule ^((?!sub/).*)$ /sub/$1 [L,NC]
El problema es que estoy usando una instancia de WordPress y mi .htaccess actualmente se ve así:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
RewriteCond %{HTTP_HOST} ^sub\.domain\.com$ [NC]
RewriteRule ^((?!sub/).*)$ /sub/$1 [L,NC]
Pero cuando navego por sub.dominio.com, estoy siendo redirigido a mi página de inicio (dominio.com) desde WordPress. ¿Cómo puedo hacer esto correctamente?
Intenté cambiarlo a:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^sub\.domain\.com$ [NC]
RewriteRule ^((?!sub/).*)$ /sub/$1 [NC]
# BEGIN WordPress
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
</IfModule>
Pero sigue sin funcionar
Tienes que crear un host virtual en la configuración de apache.
<VirtualHost *:80>
ServerName sub.domain.com
DocumentRoot /var/www/sub
</VirtualHost>
O VirtualDocumentRoot
si mod_vhosts_alias está habilitado.
<VirtualHost *:80>
ServerName sub.domain.com
ServerAlias *.domain.com
VirtualDocumentRoot /var/www/%1
</VirtualHost>
Arriba lo apunto al directorio /sub si existe. Después de todos los cambios, reinicie el servidor.
Puede agregar la siguiente línea de código en sus archivos wp-config.php
define('WP_HOME','http://sub.domain.com');
define('WP_SITEURL','http://sub.domain.com');
-
No estoy tratando de cambiar el dominio de wordpress, quiero tener mi wordpress en mi dominio principal y un subdominio personalizado que muestre los contenidos de una subcarpeta en mi servidor web
– J0ker98
13 dic 2019 a las 14:00
Esa regla debe venir antes que las reglas de wordpress y no debe tener el
L
conjunto de banderas– arkascha
6 de diciembre de 2019 a las 16:54
@arkascha editó la pregunta, probó su solución pero no funciona
– J0ker98
6 de diciembre de 2019 a las 17:04
¿Puede verificar la configuración de su Cpanel y también verificar la dirección del sitio?
– Pratik bhatt
13 de diciembre de 2019 a las 12:59
@Pratikbhatt No estoy usando cPanel, estoy en Amazon AWS Lightsail con una instancia de Bitnami WordPress
– J0ker98
13 de diciembre de 2019 a las 14:01