Eliminar index.php de las URLs en WordPress
Eliminar index.php de las URLs en WordPress
Luego de empezar a construir nuestro sitio con WordPress, nos encontramos con una problemática, conseguir que las URLs de nuestro sitio web sean «bonitas».
Me pasaba lo que a muchos, que las URLs por defecto en sus permanentlinks incluían /index.php/. Por ejemplo, para que los enlaces sean el /%postname%/, se formaba la siguiente cadena /index.php/%postname%/, a la cual WordPress no permite que le podamos eliminar el index.php. Después de leer mucha información sobre ésta problemática, recopilé un poco de la misma que me fue útil y descarté el resto. Aquí les dejo la explicación de todas las problemáticas con la que puedan encontrarse al intentar limpiar las URLs de su sitio:
Cuando contratan un Hosting Web para poner su sitio en Internet, el servicio que contratan puede tener servidores que se ejecuten en ambientes Microsoft o Linux..
Diferencias entre Servidores Linux y Windows
1.- SI EL SERVIDOR ESTÁ MONTADO SOBRE LINUX el /index.php/ de sus urls se debe eliminar mediante el archivo .htaccess, que colocamos en la carpeta html_public en el root de la estructura de archivos de nuestro servidor. Éste lo podemos modificar y subir al servidor mediante FTP. Se recomienda que el archivo tenga permiso de acceso 664, para que pueda ser leído por los motores de búsqueda.
1.1.- El archivo .htaccess debe tener las siguientes líneas:
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
1.2.- Después de modificarlo, lo subimos a la carpeta html_public donde tenemos nuestro sitio.
1.3.- Luego de subir a nuestro hosting el archivo .htaccess podemos ingresar en el panel de control de nuestro WordPress y modificar los permanentlinks. Vamos a Opciones->Permanentlinks y en mi caso solo dejé /%postname%/.
2.- AHORA BIEN, SI EL SERVIDOR ESTÁ MONTADO EN WINDOWS (ISS7), no nos sirve el archivo .htaccess para poder Eliminar el index.php de las URLs.
2.1- En este caso, lo que se debe hacer, es colocar la siguiente linea al final del archivo vars.php que se encuentra dentro de la carpeta wp-include de WordPress en nuestro sitio:
$is_apache = 1;
El resultado obtenido es que WordPress va a eliminar index.php en las URLs. Lo que es muy bueno para poder lograr un buen posicionamiento SEO de cualquier sitio Web.