Problema del subdirectorio de Wordpress .htaccess

4

He tenido algunos problemas con mi instalación de Wordpress permitiéndome acceder a los subdirectorios, específicamente una instalación de CodeIgniter en mydomain.com/codeigniter. Sé que técnicamente debería funcionar bien como está y reconocer las carpetas a medida que se crean. Sin embargo, esto no está sucediendo. Sospecho que tiene algo que ver con un complemento, pero he intentado deshabilitarlos todos y el problema sigue apareciendo (me dirige a la página de WordPress 404).

Sin embargo, he encontrado una solución mientras tanto. Si creo un subdominio, algo cambia y todo funciona como debería, accediendo a la carpeta tanto a través de la ruta directa como a través del nombre del subdominio.

¿Alguna ayuda? He intentado todo tipo de cosas divertidas con mis archivos .htaccess en ambos directorios, pero cambiarlos no hace nada.

Actualizar: Aquí está el .htaccess de Wordpress en la carpeta raíz:

DirectoryIndex index.php index.htm index.html
AddHandler application/x-httpd-php52 .php .php5 .php4 .php

# BEGIN WordPress

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/?codeigniter/
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Y el archivo .htaccess CodeIgniter en el subdirectorio / codeigniter /.

DirectoryIndex index.php index.htm index.html
AddHandler application/x-httpd-php52 .php .php5 .php4 .php

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /codeigniter
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]
</IfModule>
    
pregunta Jeff Wain 04.02.2011 - 08:24

1 respuesta

3

A pesar de que los archivos y directorios estáticos funcionan con una instalación de wordpress mod_rewrite'd en la raíz de los servidores, es posible que deba excluir su subdirectorio CodeIgniter de esa línea de mod_rewrite.

Puede hacerlo colocando un archivo .htaccess adicional en el directorio CodeIgniter y deshabilitar mod_rewrite allí:

<IfModule mod_rewrite.c> 
RewriteEngine off
</IfModule>

Relacionado: apache - Deshabilitar mod_rewrite para el subdirectorio

Esto normalmente hace el trabajo por mí. Pero puede ser menos trivial en caso de que el subdirectorio necesite una configuración mod_rewrite por sí misma (como lo necesitan algunos Frameworks de PHP).

Para comprender cómo funciona la configuración de apache, consulte Archivos de configuración (Manual de Apache) y directiva AllowOverride (Manual de Apache) .

    
respondido por el hakre 04.02.2011 - 15:20

Lea otras preguntas en las etiquetas