Archivo htaccess: cómo crear una instrucción de archivo .htaccess para principiantes

imprimir · Время на чтение: 13мин · por · Publicada · Actualizado

reproducirEscuchar artículo

Cómo crear un archivo .htaccess.

archivo htaccess - ¿Cómo crear un archivo .htaccess para principiantes? El archivo .htaccess, por regla general, solo tiene la extensión bajo Unix - sistemas. Y beneficia a los sitios que ejecutan el servidor Apache.

Htaccess tiene un conjunto de reglas para un sitio específico en el servidor. El archivo controla muchas opciones de configuración para el servidor web Apache. Apache es un software de servidor ampliamente utilizado para sistemas operativos multiplataforma.

Si bien la sintaxis que usa puede ser un poco confusa al principio, este archivo .htaccess puede hacer muchas cosas útiles. Algunas de sus características incluyen redirección, protección con contraseña, restricción de acceso basada en ciertas condiciones y más. En esta publicación, veremos cómo crear y configurar un archivo .htaccess e implementar algunos de los usos más comunes para él.

Instrucciones para crear un archivo .htaccess

Configuración del archivo .htaccess.

htaccess se conoce comúnmente como un "archivo de puntos" porque comienza con un punto. Los archivos de puntos son casi siempre un archivo de configuración. Dichos archivos pueden ser para un sistema operativo o una pieza de software. De forma predeterminada, el sistema operativo oculta los archivos de puntos en las ventanas de búsqueda o en cualquier administrador de archivos del sistema. Por lo general, debe seleccionar la opción "Mostrar archivos ocultos" en la configuración de su sistema operativo. O puede usar el comando para enumerar todos los archivos en la línea de comando. ls-a

Puede haber varios archivos similares en el servidor, y cada archivo siempre funciona de forma recursiva. Esto significa que cada archivo afectará al directorio en el que se encuentra, así como a todos los archivos y subdirectorios.

  1. Para crear este archivo, basta con utilizar cualquier editor de texto disponible (por ejemplo, el bloc de notas).
  2. Nombre (.htaccess) - sin comillas y otras cosas.
  3. Guardamos el archivo.
  4. Luego lo transferimos a su servidor (hosting) mediante un cliente FTP, necesariamente en el directorio raíz del sitio. Debe transmitir en modo ASCII. De manera predeterminada, la mayoría de los clientes FTP transferirán datos usando un modo que es ineficiente para transferir archivos de puntos. Su cliente FTP debería poder configurar el modo de transferencia. BINARIO
  5. Luego puedes editarlo como quieras, pero asegúrate de actualizar la versión del archivo en el servidor (alojamiento). Si por alguna razón parece que las reglas no han tenido efecto, puede deberse a permisos de archivo incorrectos. Los permisos de archivo .htaccess deben establecerse en 755. Su cliente FTP debe tener una opción de "Permisos de archivo". Además, puede ejecutar el comando en la terminal .chmod 755 .htaccess (es mejor especificar la dirección completa antes del archivo).

Un ejemplo de redireccionamiento de página simple

Una de las principales reglas populares en .htaccess es la redirección de página. Puede enrutar desde cualquier ruta relativa en el director de su sitio. También puede redirigir la página a una ruta absoluta en su sitio o a cualquier otro lugar en Internet. La sintaxis básica para usar en su archivo es:

Redirigir /directory_to_redirect_from/ https://mysite.com/new_directory/index.html

Siempre debe utilizar una ruta relativa como directorio de origen. La ruta absoluta debe ser el directorio al que se va a redirigir.

Un ejemplo de creación de un documento de error en .htaccess

La creación de páginas de error personalizadas es muy útil, ya que le permite mostrar a los visitantes de su sitio web un mensaje de error amigable, por ejemplo, si una URL en su sitio web no funciona. Esto evita el error hostil "404 Archivo no encontrado" y le permite mostrar un error amigable, explicando las posibles soluciones y guiando al visitante de regreso al contenido de su sitio web en lugar de dejarlo frustrado y perdido.

Para configurar documentos de error personalizados, cree un archivo .htaccess siguiendo las instrucciones y pautas básicas, que incluyen el siguiente texto:

ErrorDocumento 404 /error_pages/404.html

La línea anterior le dice al servidor web Apache que presente el documento ubicado en /error_pages/404.html (bajo su nombre de dominio/dirección del sitio web) siempre que ocurra un error 404 (archivo no encontrado).

En este ejemplo, asumimos que creó un documento de error y lo llamó "404.html" y lo colocó en un directorio llamado "error_pages" bajo su nombre de dominio. Por ejemplo, http://www.sudominio.com/error_pages/404.html.

El documento 404.html es un documento HTML normal como otros en su sitio web y puede mostrar cualquier contenido que desee, sin embargo, le recomendamos que incluya un mensaje de "Archivo no encontrado".

Para configurar documentos de error adicionales, como 401 no autorizado, 403 prohibido y 500 mensajes de error del servidor interno, cree un archivo htaccess (punto) siguiendo las instrucciones y pautas básicas, que incluyen el siguiente texto:

ErrorDocumento 401 /error_pages/401.html
ErrorDocumento 404 /error_pages/404.html
ErrorDocument 500 /error_pages/500.html

Ejemplo de protección con contraseña en .htaccess

Los sistemas de autenticación y protección con contraseña que ofrece el servidor web Apache son probablemente el uso más importante de los archivos .htaccess. Muy fácilmente, podemos proteger con contraseña un directorio (o varios) de un sitio web que requiera un nombre de usuario y contraseña para acceder. El navegador web maneja automáticamente el procedimiento de inicio de sesión para estos directorios seguros mediante una interfaz de inicio de sesión emergente (probablemente la haya visto antes). Las contraseñas también se cifran utilizando uno de los mejores métodos de cifrado disponibles, lo que mantiene seguras sus credenciales de inicio de sesión.

Primero, decida qué directorio desea proteger con contraseña (tenga en cuenta que todos los archivos y subdirectorios en el directorio estarán protegidos con contraseña), luego cree un archivo .htaccess siguiendo las instrucciones y pautas básicas, que incluyen el siguiente texto:

AuthName "Nombre del área de miembros"
AuthUserFile /ruta/a/contraseña/archivo/.htpasswd
Tipo de autenticación básico
Requerir usuario válido

La primera línea le dice al servidor web Apache que el directorio seguro se llama "Nombre de zona de usuario", que se mostrará cuando aparezca la solicitud de inicio de sesión. La segunda línea especifica la ubicación del archivo de contraseñas. La tercera línea indica el tipo de autenticación, en este ejemplo estamos usando "Básico" porque estamos usando autenticación básica HTTP, y finalmente la cuarta línea indica que requerimos credenciales de inicio de sesión válidas, esta línea también se puede usar para especificar un nombre de usuario específico , como "requerir nombre de usuario nombre de usuario" requerirá el nombre de usuario "nombre de usuario".

Usaría esto si estuviera protegiendo con contraseña el área de administración en lugar de configurar un directorio público protegido con contraseña.

La ubicación del archivo de contraseña puede estar en cualquier parte de su servidor web, "/ubicación/de/contraseña/archivo/" debe reemplazarse con la ruta completa/absoluta al directorio que contiene el archivo de contraseña y el archivo ".htpasswd". debería existir, pero puedes llamarlo como quieras.

Usamos el nombre de archivo ".htpasswd" porque el servidor reconocerá el nombre de archivo y lo ocultará de los visitantes. Tenga en cuenta que algunos servidores requieren que el archivo de contraseña esté en el mismo directorio que el archivo .htaccess. También es importante usar la ruta completa/absoluta del servidor para la ubicación del archivo de contraseña, una ruta relativa o cualquier variación de la URL no funcionará.

El archivo de contraseña contendrá algo similar al siguiente texto:

nombre de usuario: contraseña cifrada
fred_smith:oCF9Pam/MXJg2

Ahora no puede simplemente crear una contraseña, en los servidores Unix/Linux tienen que ser encriptados por el servidor, en los servidores Windows solo usa una contraseña de texto sin formato ya que Windows no ofrece ningún método de encriptación. Puede tener cualquier número de entradas de usuario en el archivo de contraseñas, una cuenta por línea, separando el nombre de usuario y la contraseña con dos puntos. Si no tiene acceso al servidor, solicite a su proveedor de servicios que habilite esta función. Por favor, el panel de control tiene esta función incorporada.

Cómo bloquear visitantes por dirección IP

Las herramientas de bloqueo de visitantes que ofrece el servidor web Apache nos permiten negar el acceso a ciertos visitantes o permitir el acceso a ciertos visitantes. Esto es extremadamente útil para bloquear visitantes no deseados o para permitir que el propietario del sitio web acceda solo a ciertas secciones del sitio web, como el área de administración.

Para configurar restricciones y bloqueos de visitantes, cree un archivo .htaccess siguiendo las instrucciones y pautas básicas, que incluyen el siguiente texto:

order allow,deny
denegar desde 255.0.0.0
denegar desde 123.45.6.
allow from all

Las líneas anteriores le indican al servidor web Apache que bloquee a los visitantes de las direcciones IP "255.0.0.0" y "123.45.6". Tenga en cuenta que a la segunda dirección IP le falta el cuarto conjunto de números, esto significa que cualquier dirección IP que coincida con el primero. se bloquearán tres conjuntos de números, por ejemplo, "123.45.6.10" y "123.45.6.255".

Para configurar el bloqueo de todos los visitantes excepto usted mismo, cree un archivo .htaccess siguiendo las instrucciones y pautas básicas, que incluyen el siguiente texto:

order allow,deny
permitir desde 255.0.0.0
deny from all

Las líneas anteriores le indican al servidor web Apache que bloquee a todos los visitantes, excepto a aquellos con la dirección IP "255.0.0.0", que debe reemplazar con su propia dirección IP.

Puede agregar cualquier cantidad de entradas "denegar desde" y "permitir desde" después de "pedir permitir, denegar". Observe el cambio de "permitir de todos" a "denegar de todos" en la línea inferior, esto es importante y debe cambiarse según sus requisitos. Si desea permitir el acceso a sus visitantes, debe usar "permitir a todos" y colocar las líneas "denegar de" arriba.

A los visitantes bloqueados se les mostrará el mensaje de error "403 Prohibido".

Un ejemplo de configuración de un archivo .htaccess.

Reglas de ejemplo contenidas en mi archivo .htaccess

# AMPFORWPLBROWSERCSTART Almacenamiento en caché del navegador: hash de amplificador en el lado del navegador.

IfModule mod_expires.c debe estar entre corchetes "<>"
Caduca Activo el
Aplicación AddType/vnd.ms-fontobject .eot
Aplicación AddType/x-font-ttf .ttf
Aplicación AddType/x-font-opentype .otf
Aplicación AddType/x-font-woff .woff
AgregarTipo de imagen/svg+xml .svg
ExpiresByType application/vnd.ms-fontobject "acceso 1 año"
ExpiresByType application/x-font-ttf “acceso 1 año”
ExpiresByType aplicación/x-font-opentype "acceso 1 año"
Aplicación ExpiresByType/x-font-woff “acceso 1 año”
ExpiresByType image/svg+xml “acceso 1 año”
ExpiresByType image/webp "acceso 1 año"
ExpiresByType image/gif “acceso 1 año”
ExpiresByType image/jpg “acceso 1 año”
ExpiresByType image/jpeg “acceso 1 año”
ExpiresByType image/png “acceso 1 año”
ExpiresByType image/x-icon "acceso 1 año"
ExpiresByType text/css "acceso 3 meses"
ExpiresByType texto/javascript “acceso 3 meses”
Aplicación ExpiresByType/javascript “acceso 3 meses”
ExpiresByType aplicación/x-javascript “acceso 3 meses”
ExpiresByType aplicación/xhtml-xml "acceso 3 meses"
Aplicación ExpiresByType/pdf “acceso 3 meses”
Aplicación ExpiresByType/x-shockwave-flash “acceso 3 meses”
/IfModule debe estar encerrado entre corchetes "<>"

# COMENZAR COMPRESIÓN GZIP - compresión gzip

IfModule mod_gzip. asegúrese de encerrar entre corchetes “<>”
mod_gzip_on Sí
mod_gzip_dechunk Sí
mod_gzip_item_incluye archivo \.(html?|txt|css|js|php|pl)$
controlador mod_gzip_item_include ^cgi-script$
mod_gzip_item_include mimo ^texto/.*
mod_gzip_item_include mimo ^aplicación/x-javascript.*
mod_gzip_item_exclude mimo ^imagen/.*
mod_gzip_item_exclude rspheader ^Codificación de contenido:.*gzip.*
/IfModule debe estar encerrado entre corchetes "<>"

# Eliminar errores del navegador (solo es necesario para navegadores muy antiguos)

BrowserMatch ^Mozilla/4 gzip-solo-texto/html
BrowserMatch ^Mozilla/4\.0[678] sin gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Encabezado agregar Vary User-Agent
IfModule mod_deflate.c debe estar entre corchetes "<>"

# Comprime HTML, CSS, JavaScript, texto, XML y fuentes

AddOutputFilterByType DEFLATE aplicación/javascript
AddOutputFilterByType DEFLATE aplicación/rss+xml
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE aplicación/fuente x
AddOutputFilterByType DEFLATE aplicación/x-font-opentype
AddOutputFilterByType DEFLATE aplicación/x-font-otf
AddOutputFilterByType DEFLATE aplicación/x-font-truetype
AddOutputFilterByType DEFLATE aplicación/x-font-ttf
AddOutputFilterByType DEFLATE aplicación/x-javascript
AddOutputFilterByType DEFLATE aplicación/xhtml+xml
AddOutputFilterByType DEFLATE aplicación/xml
AddOutputFilterByType DEFLATE fuente/tipo abierto
AddOutputFilterByType DEFLATE fuente/otf
AddOutputFilterByType DEFLATE fuente/ttf
AddOutputFilterByType DESINFLAR imagen/svg+xml
AddOutputFilterByType DEFLATE imagen/icono x
AddOutputFilterByType DEFLATE texto/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DESINFLAR texto/javascript
AddOutputFilterByType DEFLATE texto/sin formato
AddOutputFilterByType DEFLATE texto/xml
/IfModule debe estar encerrado entre corchetes "<>"

# Impedir que los encabezados HTTP Vary se devuelvan a los navegadores de la familia MSIE


BrowserMatch “MSIE” fuerza sin variación
BrowserMatch "Mozilla/4.[0-9]{2}" fuerza sin variable
/IfModule debe estar encerrado entre corchetes "<>"

# Ocultar firma del servidor

Firma del servidor desactivada

# Deshabilitar bots izquierdos

SetEnvIfNoCase User-Agent “^Missigua Locator” bad_bot
#SetEnvIfNoCase User-Agent “^PEAR HTTP_Request class” bad_bot
Agente de usuario SetEnvIfNoCase “^Java/1.4.1” bad_bot
Agente de usuario SetEnvIfNoCase “^Java/1.5.0” bad_bot
SetEnvIfNoCase Agente de usuario "^psycheclone" bad_bot
Agente de usuario SetEnvIfNoCase “^Búsqueda WEP 00” bad_bot
SetEnvIfNoCase Agente de usuario “^FlashGet” bad_bot
Agente de usuario SetEnvIfNoCase “^GetRight” bad_bot
Agente de usuario SetEnvIfNoCase “^GetWeb!” robot_malo
Agente de usuario SetEnvIfNoCase “^Go!Zilla” bad_bot
Agente de usuario SetEnvIfNoCase “^httplib” bad_bot
Agente de usuario SetEnvIfNoCase “^Biblioteca Indy” bad_bot
Agente de usuario SetEnvIfNoCase "^InfoNaviRobot" bad_bot
Agente de usuario SetEnvIfNoCase “^InterGET” bad_bot
Agente de usuario SetEnvIfNoCase “^Ninja de Internet” bad_bot
SetEnvIfNoCase Agente de usuario “^LexiBot” bad_bot
Agente de usuario SetEnvIfNoCase “^libWeb/clsHTTP” bad_bot
Agente de usuario SetEnvIfNoCase “^libwww” bad_bot
Agente de usuario SetEnvIfNoCase “^libwww-perl” bad_bot
Agente de usuario SetEnvIfNoCase “^LinkextractorPro” bad_bot
Agente de usuario SetEnvIfNoCase “^Mozilla.*NEWT” bad_bot
SetEnvIfNoCase Agente de usuario "^Octopus" bad_bot
Agente de usuario SetEnvIfNoCase “^ProWebWalker” bad_bot
SetEnvIfNoCase Agente de usuario “^SuperBot” bad_bot
Agente de usuario SetEnvIfNoCase “^WebAuto” bad_bot
Agente de usuario SetEnvIfNoCase “^Wells Search II” bad_bot
SetEnvIfNoCase Agente de usuario “^Wget” bad_bot
SetEnvIfNoCase Agente de usuario “^wget” bad_bot

Di un mínimo de reglas que están contenidas en mi expediente.

Funciones de personalización de archivos .htaccess y errores comunes

Así es, este archivo suele causar un error de servidor banal 500 Internal Server Error. Debe editar el archivo con mucho cuidado y seguir las siguientes reglas:

  • Guarde siempre una copia de trabajo del archivo .htaccess antes de editarlo.
  • Nunca introduzca nuevas reglas en un sitio de producción sin antes revisar el archivo.
  • La codificación suele ser UTF-8.
  • Cada regla debe escribirse en una nueva línea.
  • Se excluyen aquellas instrucciones que no son procesadas por el servidor Apache, ya que provocan inmediatamente un error del servidor.
  • No puede escribir varias instrucciones en una línea; obtendrá un error 500.
  • Tenga cuidado: un espacio o carácter adicional puede generar un error.

¿Qué efecto tiene el archivo .htaccess en el sitio?

Por regla general, gracias a este archivo, puede perfectamente optimizar el sitio para los motores de búsqueda. Esto es lo que puede hacer:

  1. Configurar una redirección 301 en el sitio (la regla más común). Se puede utilizar para las tareas necesarias.
  2. Configuración de hashing del sitio en el lado del servidor.
  3. Habilitación de la compresión gzip (abreviatura de GNU Zip): compresión de archivos en el lado del servidor.
  4. Asegure la protección del sitio: bloqueo de direcciones IP, prohibiciones, etc.
  5. Especifique la cantidad requerida de memoria asignada para el sitio.

Esta es la funcionalidad mínima disponible para este archivo. Lo principal es seguir correctamente todas estas recomendaciones. En los siguientes artículos, intentaré describir algunas reglas para este archivo, y también sabremos qué es archivo robots.txt y cómo agregar un mapa del sitio a los motores de búsqueda.

Gracias por leer Nicola Top

¿Qué tan útil es la publicación?

¡Haz clic en el emoticón para calificar!

Puntuación media 5 / 5. Número de valoraciones: 29

Aún no hay valoraciones. Califique primero.

También te podría gustar...

1 respuesta

  1. Илья dice:

    Oooh gracias por la información. Al menos puedes ver ejemplos en vivo. La animación de degradado es simplemente genial))) Excelente aplicación: lo más probable es que haya sufrido durante mucho tiempo.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

quince + catorce =