2011-04-06 11 views
5

Tengo un sitio de wordpress instalado en el directorio "wp". Quiero mantenerlo en esa carpeta para propósitos de mantenimiento. Wordpress ofrece la opción de crear un htaccess para enlaces permanentes. Puede ver ese código (que funciona) a continuación.htaccess para reescribir el subdirectorio de wordpress con enlaces permanentes a la raíz

Lo que quiero es una reescritura, así que, para los visitantes, el sitio parece estar en la raíz. Tengo que cambiar la base de reescritura, pero eso no funcionó.

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

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase /wp/ 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /wp/index.php [L] 
</IfModule> 

Respuesta

1

¿Qué le ocurre que:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^.*$ /wp/index.php [L] 


RewriteCond %{REQUEST_URI} !^/wp/.*$ 
RewriteRule ^(.*)$ /wp/$1 [L] 

vuelve a escribir todas las cosas no existentes para /wp/index.php, y todos los no/wp/archivo en un archivo/wp/equivalente. Así que si usted llama index.php es, de hecho, /wp/index.php

+0

Lo intenté, pero no funcionó. Aunque encontré la solución, la publicaré más tarde. – SPRBRN

10

1) en su panel de control, vaya a Configuración -> general y asegurarse
a) directorio de WordPress ->http://mydomain.com/wp
b) dirección del sitio ->http://mydomain.com

2) mover el index.php de subdirectorio a la raíz (MOVE, no sólo copia)

3) editar su index.php para leer

/** Loads the WordPress Environment and Template */ 
require('./wp/wp-blog-header.php'); 

donde "wp" es el subdirectorio

4) eliminar cualquier archivo .htaccess en el subdirectorio

5) agregar esto a su .htaccess en la raíz

# 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 

Bajo esta configuración, el wordpress la instalación se ubicará en el directorio/wp /. Los visitantes visitarán su sitio usando http://mydomain.com. Buena suerte.

+0

¿alguien ha intentado este método recientemente? –

Cuestiones relacionadas