Error 404 en multisitio para subdirectorio

3 nov 2014, 17:51:42
Vistas: 35.3K
Votos: 7

Estoy intentando crear un multisitio como subdirectorio y he seguido las instrucciones de la red al pie de la letra. El multisitio parece estar configurado correctamente, los archivos .htaccess y wp-config.php parecen correctos y pude realizar una configuración de red, sin embargo, cuando voy a mi página de multisitio aparece un error 404 - No encontrado. Esto también me impide iniciar sesión en el lado administrativo de este sitio.

Mi sitio principal sigue funcionando bien y puedo iniciar sesión en el lado administrativo allí y con la ayuda de un plugin puedo acceder y manipular la base de datos. Todas las tablas recién creadas están allí, la URL del multisitio y las opciones parecen correctas.

He verificado que el archivo .htaccess coincide con el de WordPress. He verificado la ubicación apropiada de .htaccess (raíz de public_html) y tiene permisos de escritura. No creemos que sea un problema de enlaces permanentes como sugieren muchas de mis investigaciones.

Después de una extensa investigación no pude encontrar una solución, cualquier ayuda es apreciada.

Aquí está mi archivo .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# agregar una barra diagonal al final de /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>

y el final de mi archivo de configuración:

/**
 * Para desarrolladores: Modo de depuración de WordPress.
 *
 * Cambia esto a true para habilitar la visualización de avisos durante el desarrollo.
 * Es altamente recomendado que los desarrolladores de plugins y temas usen WP_DEBUG
 * en sus entornos de desarrollo.
 */
define('WP_DEBUG', false);

/* Multisitio */
define( 'WP_ALLOW_MULTISITE', true );

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'www.mybusinessconnect.com.au');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

/* Eso es todo, ¡deja de editar! Feliz blogging. */

/** Ruta absoluta al directorio de WordPress. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__) . '/');

/** Configura las variables de WordPress y los archivos incluidos. */
require_once(ABSPATH . 'wp-settings.php');
1
Comentarios

si necesitas ajustes adicionales con Nginx, cambia a Apache

nodws nodws
1 feb 2023 20:39:48
Todas las respuestas a la pregunta 5
2

Tuve exactamente el mismo problema.

Mi solución: edité el archivo /etc/apache2/sites-enabled/000-default.conf. Debe quedar así:

<VirtualHost *:80>

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        <Directory />
                Options FollowSymLinks
                AllowOverride all
        </Directory>
        <Directory /var/www/>
                Options FollowSymLinks
                AllowOverride all
                Order allow,deny
                allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

¡Funciona!

23 feb 2015 14:59:18
Comentarios

Sé que esto es Stack Exchange y este tipo de comentarios no suelen fomentarse, ¡PERO MUCHAS GRACIAS!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Alexandros Kourtis Alexandros Kourtis
20 mar 2023 02:09:29

Si te falta el archivo .htaccess o no lo deseas, necesitas tener un bloque mod_rewrite en el 000-default.conf también: https://gist.github.com/nicolasramy/3206657

JN01 JN01
6 mar 2025 14:10:10
0

Me enfrenté al mismo problema - directorio multisitio de WordPress - error 404 para el nuevo panel de control del sitio y la página del sitio, mientras que el sitio de administración y el panel de control funcionaban.

Mi problema estaba en la configuración de Apache - /etc/apache2/httpd.conf. Necesitaba añadir 'AllowOverride All' en la sección <Directory "/Users/usuario1/Sites">

Y no olvides habilitar mod_rewrite en httpd.conf:

LoadModule rewrite_module libexec/apache2/mod_rewrite.so

De lo contrario, dará un error 500.

No sé exactamente qué representan estas configuraciones, pero esto resolvió mi problema. Espero que ayude.

20 ene 2019 02:28:01
0

Según WordPress, estas reglas de htaccess son para multisitio https://wordpress.org/support/article/htaccess/

#Ejemplo de Subcarpeta

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# agregar una barra diagonal al final de /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

#Ejemplo de Subdominio

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# agregar una barra diagonal al final de /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

Eso es lo que he utilizado sin problemas en un sitio alojado.

2 sept 2017 05:35:05
1

¡Tuve el mismo problema e intenté de todo! Descubrí que no había un PUNTO delante de mi archivo htaccess. Estoy usando Windows y de alguna manera el punto se eliminó.

Para agregar un punto delante de un archivo en Windows, renombra el archivo como .htaccess. y Windows eliminará el último punto y dejará el primero.

15 nov 2019 16:37:00
Comentarios

Generalmente en Windows los archivos punto están ocultos y tienes que seleccionar la opción relevante para hacerlos visibles.

Alexandros Kourtis Alexandros Kourtis
8 feb 2023 18:34:17
0

Me gustaría mencionar una posible causa, que es bastante obvia pero en realidad difícil de detectar: el uso de caracteres no permitidos en la parte de la ruta de la URL del sub-sitio.

Como se indica en el WordPress Codex:

Dirección del sitio: Solo se permiten los caracteres a-z y 0-9.

El uso de caracteres no permitidos (por ejemplo, puntos) en la ruta del subdirectorio hace que las reglas de reescritura en el archivo .htaccess no se activen, lo que resulta en respuestas 404 del servidor.

Habiendo trabajado durante varios años con proyectos profesionales de WordPress, me consideraba al menos algo competente en el tema, pero debo admitir que pasé 2-3 horas depurando el problema antes de darme cuenta de que había cometido un error de principiante. :)

14 ene 2020 11:29:06