Podemos eliminar extensiones de archivo usando el archivo .htaccess
¿Qué es un archivo .htaccess?
Un archivo .htaccess es un archivo ASCII simple que crea con un editor de texto como Notepad ++ o TextMate. Proporciona una forma de realizar cambios de configuración por directorio.
Tenga en cuenta que .htaccess es la extensión del archivo. No es file.htaccess, es simplemente .htaccess.
- ¿Qué necesito aprender para un trabajo de desarrollo front-end de nivel de entrada? ¿Qué idiomas, marcos y bases de datos necesito aprender?
- ¿El nuevo MacBook Air 2011 es bueno para el desarrollo web? ¿Por qué o por qué no?
- ¿Existe un complemento o servicio de WordPress como este servicio LeadFormly?
- ¿Qué prácticas de HTML / CSS debo evitar al crear un sitio web para Google AdWords?
- ¿Para qué sirve la configuración general de WordPress?
Los archivos .htaccess afectan el directorio en el que están ubicados y todos los subdirectorios. Por ejemplo, si hay un archivo .htaccess ubicado en su directorio raíz de http://yoursite.com, afectaría a http://yoursite.com/content/, http://yoursite.com/content/images/, etc.
Es importante recordar que esto se puede evitar , por ejemplo, si no desea que ciertos comandos .htaccess afecten a un directorio específico, colocando un nuevo archivo .htaccess dentro del directorio que no desea que se vea afectado por los cambios, y eliminando los comandos específicos del nuevo archivo .htaccess que no desea afectar a este directorio.
Eliminar extensiones
Para eliminar la extensión .php de un archivo PHP, por ejemplo http://yoursite.com/wallpaper.php a http://yoursite.com/wallpaper/, debe agregar el siguiente código dentro del archivo .htaccess:
RewriteEngine On RewriteCond% {REQUEST_FILENAME}! -F RewriteRule ^ ([^ \.] +) $ $ 1.php [NC, L]
Si desea eliminar la extensión .html de un archivo html, por ejemplo http://yoursite.com/wallpaper.html a http://yoursite.com/wallpaper, simplemente tiene que modificar la última línea del código anterior para que coincida el nombre del archivo:
RewriteRule ^([^\.]+)$ $1.html [NC,L]
¡Eso es! Ahora puede vincular páginas dentro del documento HTML sin necesidad de agregar la extensión de la página. Por ejemplo:
fondo de pantalla
Agregar una barra inclinada al final
RewriteEngine On RewriteCond% {REQUEST_FILENAME}! -F RewriteRule ^ ([^ /] +) / $ $ 1.php RewriteRule ^ ([^ /] +) / ([^ /] +) / $ /$1/$2.php RewriteCond% {REQUEST_FILENAME}! -F RewriteCond% {REQUEST_FILENAME}! -D RewriteCond% {REQUEST_URI}! (\. [A-zA-Z0-9] {1,5} | /) $ RewriteRule (. *) $ / $ 1 / [R = 301, L]