25 trucos útiles de Apache .htaccess para proteger y personalizar sitios web


Los sitios web son partes importantes de nuestras vidas. Sirven como medio para expandir negocios, compartir conocimientos y mucho más. Anteriormente restringido a proporcionar solo contenido estático, con la introducción de lenguajes de scripting del lado del cliente y del servidor dinámicos y el avance continuo del lenguaje estático existente como html a html5, agregar cada bit de dinamismo es posible a los sitios web y se espera que lo que quede pronto siga de cerca. futuro.

Con los sitios web, surge la necesidad de una unidad que pueda mostrar estos sitios web a una gran audiencia en todo el mundo. Esta necesidad la satisfacen los servidores que proporcionan los medios para alojar un sitio web. Esto incluye una lista de servidores como: Servidor HTTP Apache , Joomla y WordPress que permiten alojar sus sitios web.

Quien quiera alojar un sitio web puede crear un servidor local propio o puede ponerse en contacto con cualquiera de los mencionados anteriormente o con cualquier otro administrador del servidor para alojar su sitio web. Pero el problema real comienza desde este punto. El rendimiento de un sitio web depende principalmente de los siguientes factores:

  1. Ancho de banda consumido por el sitio web.
  2. Qué tan seguro es el sitio web contra los piratas informáticos.
  3. Optimismo en lo que respecta a la búsqueda de datos a través de la base de datos
  4. Facilidad de uso cuando se trata de mostrar menús de navegación y proporcionar más funciones de interfaz de usuario.

Junto a esto, varios factores que rigen el éxito de los servidores en el alojamiento de sitios web son:

  1. Cantidad de compresión de datos lograda para un sitio web en particular.
  2. Capacidad para atender simultáneamente a varios clientes que solicitan un sitio web igual o diferente.
  3. Asegurar los datos confidenciales ingresados en los sitios web como: correos electrónicos, detalles de tarjetas de crédito, etc.
  4. Permitir cada vez más opciones para mejorar la dinámica de un sitio web.

Este artículo trata sobre una de esas características proporcionadas por los servidores que ayudan a mejorar el rendimiento de los sitios web además de protegerlos de bots maliciosos, enlaces directos, etc., es decir, el archivo " .htaccess ".

htaccess (o acceso de hipertexto ) son los archivos que proporcionan opciones para que los propietarios de sitios web controlen las variables de entorno del servidor y otros parámetros para mejorar la funcionalidad de sus sitios web. Estos archivos pueden residir en todos y cada uno de los directorios del árbol de directorios del sitio web y proporcionar características al directorio y a los archivos y carpetas que contiene.

¿Cuáles son estas características? Bueno, estas son las directivas del servidor, es decir, las líneas que le indican al servidor que realice una tarea específica, y estas directivas se aplican solo a los archivos y carpetas dentro de la carpeta en la que se coloca este archivo. Estos archivos están ocultos de forma predeterminada como todos los sistemas operativos y los servidores web están configurados para ignorarlos de forma predeterminada, pero hacer que los archivos ocultos sean visibles puede hacer que vea este archivo muy especial. Qué tipo de parámetros se pueden controlar es el tema de discusión de las secciones siguientes.

Nota: Si el archivo .htaccess se coloca en el directorio /apache/home/www/Gunjit/, proporcionará directivas para todos los archivos y carpetas en ese directorio, pero si este directorio contiene otra carpeta a saber: /Gunjit/images/ que nuevamente tiene otro archivo .htaccess , entonces las directivas en esta carpeta anularán las proporcionadas por el maestro . htaccess archivo (o archivo en la carpeta superior en la jerarquía).

Servidor HTTP Apache llamado coloquialmente Apache recibió el nombre de una tribu nativa americana Apache para respetar sus habilidades superiores en la estrategia de guerra. Construido en C/C ++ y XML, es un servidor web multiplataforma que se basa en el servidor HTTPd NCSA y tiene un papel clave en el crecimiento y avance de la World Wide Web.

Apache, más comúnmente utilizado en UNIX, está disponible para una amplia variedad de plataformas, incluidas FreeBSD, Linux, Windows, Mac OS, Novel Netware, etc. En 2009, Apache se convirtió en el primer servidor en servir a más de 100 millones de sitios web.

El servidor Apache tiene un archivo .htaccess por usuario en el directorio www/. Aunque estos archivos están ocultos, se pueden hacer visibles si es necesario. En el directorio www/ hay una serie de carpetas, cada una de las cuales pertenece a un sitio web con el nombre del usuario o del propietario. Aparte de esto, puede tener un archivo .htaccess en cada carpeta que configuró archivos en esa carpeta como se indicó anteriormente.

Cómo configurar el archivo htaccess en el servidor Apache es el siguiente ...

Puede haber dos casos:

En este caso, si los archivos .htaccess no están habilitados, puede habilitar los archivos .htaccess simplemente yendo a httpd.conf (archivo de configuración predeterminado para Apache HTTP Daemon) y busque la sección .

<Directory "/var/www/htdocs">

Y localice la línea que dice ...

AllowOverride None 

Y corregirlo.

AllowOverride All

Ahora, al reiniciar Apache, funcionará .htaccess .

En este caso, es mejor consultar al administrador de alojamiento, si permite el acceso a archivos .htaccess .

25 trucos ".htaccess" del servidor web Apache para sitios web

La opción mod_rewrite le permite usar redirecciones y ocultar su verdadera URL con la redirección a otra URL. Esta opción puede resultar muy útil, ya que le permite reemplazar las URL largas y largas por otras cortas y fáciles de recordar.

Para permitir mod_rewrite , simplemente tenga la práctica de agregar la siguiente línea como la primera línea de su archivo .htaccess .

Options +FollowSymLinks

Esta opción le permite seguir enlaces simbólicos y así habilitar la opción mod_rewrite en el sitio web. Más adelante se presenta la sustitución de la URL por una breve y crujiente.

El archivo htaccess puede permitir o denegar el acceso a un sitio web o una carpeta o archivos en el directorio en el que se encuentra utilizando ordenar , permitir y < b> denegar palabras clave.

Order Allow, Deny
Deny from All
Allow from 192.168.3.1

OR

Order Allow, Deny
Allow from 192.168.3.1

La palabra clave Orden aquí especifica el orden en el que se procesará permitir , denegar el acceso. Para la declaración " Pedido " anterior, las declaraciones Permitir se procesarían primero y luego las declaraciones denegar .

Las siguientes líneas proporcionan los medios para permitir el acceso del sitio web a todos los usuarios que aceptan uno con dirección IP: 192.168.3.1 .

rder Allow, Deny
Deny from 192.168.3.1
Allow from All

OR


Order Deny, Allow
Deny from 192.168.3.1

Usando algunas líneas simples, podemos corregir el documento de error que se ejecuta en diferentes códigos de error generados por el servidor cuando el usuario/cliente solicita una página que no está disponible en el sitio web, como la mayoría de nosotros habría visto el ' Página 404 no encontrada 'en su navegador web. Los archivos " .htaccess " especifican qué acción tomar en caso de tales condiciones de error.

Para hacer esto, es necesario agregar las siguientes líneas a los archivos " .htaccess ":

ErrorDocument <error-code> <path-of-document/string-representing-html-file-content>

' ErrorDocument ' es una palabra clave, el código de error puede ser 401 , 403 , 404 , 500 o cualquier error válido que represente el código y, por último, 'ruta del documento' representa la ruta en la máquina local (en caso de que esté usando su propio servidor local) o en el servidor (en caso de que esté usando cualquier otro servidor para alojar su sitio web).

ErrorDocument 404 /error-docs/error-404.html

La línea anterior establece el documento ' error-404.html ' ubicado en la carpeta error-docs para que se muestre en caso de que el servidor informe el error 404 por cualquier solicitud no válida. para una página del cliente.

rrorDocument 404 "<html><head><title>404 Page not found</title></head><body><p>The page you request is not present. Check the URL you have typed</p></body></html>"

La representación anterior también es correcta, lo que coloca la cadena que representa un archivo html habitual.

En el archivo .htaccess puede configurar o desarmar las variables de entorno global que el servidor permite que sean modificadas por los hosters de los sitios web. Para configurar o desarmar las variables de entorno, debe agregar las siguientes líneas a sus archivos .htaccess.

SetEnv OWNER “Gunjit Khera”
UnsetEnv OWNER

MIME ( Extensiones multimedia de Internet multipropósito ) son los tipos que el navegador reconoce de forma predeterminada al ejecutar cualquier página web. Puede definir tipos MIME para su sitio web en archivos .htaccess , de modo que el servidor pueda reconocer y ejecutar diferentes tipos de archivos definidos por usted.

<IfModule mod_mime.c>
	AddType	application/javascript		js
	AddType application/x-font-ttf		ttf ttc
</IfModule>

Aquí, mod_mime.c es el módulo para controlar las definiciones de diferentes tipos de MIME y si tiene este módulo instalado en su sistema, entonces puede usar este módulo para definir diferentes tipos de MIME para las diferentes extensiones utilizadas en su sitio web. para que ese servidor pueda entenderlos.

Los archivos .htaccess le permiten controlar la cantidad de datos que carga o descarga un cliente en particular de su sitio web. Para esto, solo necesita agregar las siguientes líneas a su archivo .htaccess:

php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200

Las líneas anteriores establecen el tamaño máximo de carga, el tamaño máximo de los datos que se publican, el tiempo máximo de ejecución, es decir, el tiempo máximo que un usuario puede ejecutar un sitio web en su máquina local, la restricción de tiempo máxima dentro del tiempo de entrada.