2010-04-18 34 views
5

Tenemos una instalación de WP en la raíz de nuestro servidor y está funcionando muy bien ... pero, acabamos de instalar otra aplicación en un subdominio. Ahora puedo ver el index.php de esa aplicación pero no puedo hacer nada con ella. Las reglas de htaccess en la raíz (de la instalación base de WP) están efectuando las solicitudes.WordPress htaccess en la raíz anula htaccess en el subdominio. La aplicación Subdominio no funciona ahora

Entonces, ¿cómo elimino el archivo WP htaccess de afectar el subdominio?

Aquí es el contenido htaccess para la raíz (WP instalar):

<IfModule mod_rewrite.c> 
RewriteEngine On 
# BEGIN WordPress 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
# END WordPress 
</IfModule> 

Y para el .htaccess en el subdominio:

RewriteEngine on 
RewriteCond $1 !^(index\.php|css|stylesheets|js|images|user_guide|favicon\.ico|robots\.txt) 
RewriteRule ^(.*)$ /index.php/$1 [L] 

Tengo buscar todas partes en línea y trató un par de muestras Encontré ... nada ha funcionado.

¡Cualquier ayuda es muy apreciada! Gracias

ACTUALIZACIÓN: Parece que tal vez Wordpress no es el culpable .. por curiosidad, que elimina todas las líneas en el archivo .htaccess WP .. y la aplicación en el subdominio todavía no estaba funcionando. Su regla de reescritura debe estar equivocada.

Por lo tanto, es la segunda regla de reescritura que no funciona. Si escribo /index.php?acerca de entonces puedo ver la página sobre ... pero debe mostrar yendo a:/about

Respuesta

4

WP también es el culpable (tiene dos problemas).

Puedo solucionar el primer problema .htaccess porque WP es predecible. ¿Quieres poner este antes la sección COMENZAR WordPress:

RewriteRule ^subdir-name/.*$ - [PT] 

que atrapa cualquier solicitud a su subdirectorio y se lo pasa a través de (PT) de manera que no es secuestrado por WordPress.

El problema en su segundo .htaccess es que parece estar asumiendo que todavía está en el directorio raíz. Para este, no puedo estar seguro sin ver el diseño de su aplicación, pero el/before index.php puede ser incorrecto. ¿Estás seguro de que las rutas en el segundo archivo coinciden con el nuevo diseño de tus archivos?

+1

Excelente ... gracias. Justo antes de ver tu respuesta (aún no la he probado) Probé todo lo que leía en línea y parece que funciona para cualquier subdirectorio que necesito para trabajar correctamente: # cosas para dejar pasar (ignorar) RewriteBase/ RewriteCond% {REQUEST_URI} "/ sub-dir1 /" [OR] RewriteCond% {REQUEST_URI} "/ sub = dir2 /" RewriteRule (. *) $ 1 [L] – revive

+0

Sí, puede usar RewriteConditions. Sin embargo, algunas personas tienen archivos .htaccess muy complicados (lo cual puede ser algo bueno, son mejores para tratar con muchas clases de cosas que el manejo de PHP que algunas personas usan), y usar RewriteConds será más difícil si tienes muchos bloques diferentes de reglas para tratar PT es la forma "correcta" de manejarlo, aunque no es la única forma. –

+0

¡Gracias de nuevo! ¿Hay alguna forma de encontrar un punto para esta respuesta? ¡No puedo votar hasta que obtenga 15 puntos! ¡LAME! – revive

1

Um ... ¿debería funcionar? Para el subdirectorio "oficina" - aplausos :-)

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteRule ^office/.*$ - [PT] 
# BEGIN WordPress 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
# END WordPress 
</IfModule> 
Cuestiones relacionadas