WordPress: eliminar directorio da regra URL Rewrite polo .htaccess

Como acceder directamente un directorio na raíz do servidor de Aloxamento que WordPress está configurado para traballar como URL amigables?

htaccess

problema

Todos sabemos que cando se quere acceder a un directorio na raíz do servidor, Basta pór o dominio seguido do nome do tal directorio. entón, por exemplo, se o directorio chama-se “subidos”, accede el polo enderezo http://taylorlopes.com/uploads.

O problema é que ao configurar o WordPress (ou calquera outro sistema) con URL amigables, O que antes era unha páxina chamada contactos cunha URL http://taylorlopes.com/?page_id = 2, pasa a ser algo así como http://taylorlopes.com/contatos. Teña en conta que esta nova forma de chamar a URL (dita agradable), aseméllase a chamada dun directorio, sendo que contactos en realidade non é un directorio, pero só unha páxina.

Logo, Desde o momento que decide empregar URL amigables queda imposible chamar un directorio, pois WordPress interpreta iso como unha chamada a unha páxina, que obviamente non existe, e lanza o erro “Ops! Esta páxina non se pode atopar“. entón, como facer para chamar un directorio sen que o WordPress interprete esta chamada como a unha páxina?

Resolución

Para solucionar este problema e conseguir acceder directamente un directorio na raíz do servidor sen o WordPress interprete o como unha páxina, Abre o arquivo .htaccess e engade a seguinte liña debaixo da primeira instrución RewriteRule, trocando “mydir” polo nome do seu actual directorio:

subcódigo

RewriteCond %{REQUEST_URI} !^/(mydir|mydir/.*)$

código completo

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^ índice .php $ - [L]
RewriteCond %{REQUEST_URI} !^/(mydir|mydir/.*)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /Índice.php [L]
</IfModule>
# END WordPress

observación:

O .htaccess queda na raíz do directorio onde o contido web publícase, como por exemplo no directorio /www (wampserver) ou no /htdocs (XAMPP).

redirección

A idea aquí é facer que un Post (Páxina) responda por dúas URL amigables, deste xeito, cando alguén escriba http://taylorlopes.com/about (unha páxina sobre non existe) sexa feito unha redirección para http://taylorlopes.com/sobre (Páxina en alí). Use o .htaccess para facer a redirección:

subcódigo

redirect /sobre /en

código completo

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^ índice .php $ - [L]
RewriteCond %{REQUEST_URI} !^/(útil|útil/.*)$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
redirect /sobre /sobre
RewriteRule . /Índice.php [L]
</IfModule>
# END WordPress

fonte

WordPress: Eliminar directorio de URL reescrita con .htaccess

Total de accesos: 8286

Deixe unha resposta

O seu enderezo de correo-e non será publicado. Os campos obrigatorios están marcados con *