Header Ads Widget

Ticker

6/recent/ticker-posts

15 consejos y trucos útiles de htaccess

 Algunos desarrolladores no conocen el poder de htaccess. El servidor Apache tiene una gran característica para manipular información usando htaccess.

.htaccess es un archivo de configuración que se utiliza en el servidor web para modificar la configuración del servidor web Apache.

Usando .htaccess podemos anular fácilmente los ajustes de configuración del servidor.

El archivo .htaccess se utiliza para controlar el acceso de los usuarios por directorio. Podemos hacer varias cosas usando el archivo .htaccess.

En este artículo, veremos 15 consejos y trucos útiles de htaccess que se pueden utilizar para proteger el servidor de ataques maliciosos o proyectos seguros.

1. Deshabilitar la exploración de directorios

Opciones -índices

Este fragmento deshabilita la lista de directorios, por lo que debemos usarlo en cada directorio para protegerlo.

2. Bloquear las secuencias de comandos entre sitios (XSS)

# Bloquea algunos ataques XSS

<IfModule mod_rewrite.c>
RewriteCond% {QUERY_STRING} (\ |% 3E) [NC, OR]
RewriteCond% {QUERY_STRING} GLOBALS (= | \ [| \% [0-9A-Z] {0,2}) [O]
RewriteCond% {QUERY_STRING} _REQUEST (= | \ [| \% [0-9A-Z] {0,2})
RewriteRule. * Index.php [F, L]
</IfModule>

O

<IfModule mod_rewrite.c>
	RewriteCond% {QUERY_STRING} (\ <|% 3C). * Script. * (\> |% 3E) [NC, OR]
	RewriteCond% {QUERY_STRING} GLOBALS (= | \ [| \% [0-9A-Z] {0,2}) [O]
	RewriteCond% {QUERY_STRING} _REQUEST (= | \ [| \% [0-9A-Z] {0,2})
	RewriteRule. * Index.php [F, L]
</IfModule>

3. Acceso solo por IP

#permitir el acceso solo por IP
orden denegar, permitir
permitir desde [inserte su propia dirección IP]
Negar todo

El fragmento anterior permite el acceso solo a aquellos usuarios cuya IP se agregó aquí.

4. Proteger un archivo particular

<files config.php> 
pedir permiso, denegar
denegar de todos
</files>

Este código no permitirá el acceso al archivo de configuración. Este código ayuda a proteger el archivo de configuración de WordPress o el archivo de configuración del proyecto PHP. Reemplace config.php con su propio nombre de archivo de configuración.

5. Deshabilite la ejecución de PHP en su carpeta "uploads"

<Archivos * .php> 
denegar de todos
</Files>

El fragmento anterior se puede usar para deshabilitar la ejecución de PHP en la carpeta de carga.

6. Impedir el acceso a un tipo de archivo en particular

<Archivos * .php>
Negar todo
</Files>

Este código se utiliza para evitar el acceso a archivos PHP.

7. Impedir el acceso a varios tipos de archivos

<FilesMatch "\. (Htaccess | htpasswd | ini | phps | fla | psd | log | sh) $"> 
Solicitar Permitir, Denegar
Denegar de todos
</FilesMatch>

Con el uso del fragmento de código anterior, podemos evitar el acceso a varios tipos de archivo en un proyecto.

8. Redirigir a una conexión HTTPS segura

RewriteEngine en 
RewriteCond% {HTTPS}! En
RewriteRule (. *) Https: //% {HTTP_HOST}% {REQUEST_URI}

9. Redirija a los usuarios a una página de error 404 personalizada.

# páginas de error personalizadas

ErrorDocument 404 /error/404.php   
ErrorDocument 500 /error/500.php

El fragmento anterior se utiliza para redirigir al usuario a una página de error personalizada.

10. Agregue una barra al final de su URL.

 # aplicación de barra diagonal
 RewriteBase /
 RewriteCond% {REQUEST_FILENAME}! -F
 RewriteCond% {REQUEST_URI}! #
 RewriteCond% {REQUEST_URI}! (. *) / $
 RewriteRule ^ (. *) $ Http://domain.com/$1/ [L, R = 301] 

Este fragmento se usa para agregar una barra al final de las URL.

11. No permitir el método GET

<Limit GET>      
denegar de todos
</Limit>

Usando la directiva limit podemos fácilmente rechazar cualquier método como Get o POST.

12. Redirección permanente 301

Redirigir 301 /file1.html http://yourdomain.com/file2.html 

Este código redirigirá permanentemente file1.html a file2.html.

13. Habilite la compresión gzip

<IfModule mod_deflate.c>   
# Comprimir HTML, CSS, JavaScript, texto, XML y fuentes AddOutputFilterByType DEFLATE aplicación / javascript AddOutputFilterByType DEFLATE aplicación / rss + xml AddOutputFilterByType DEFLATE aplicación / vnd.ms-fontoFLterByType DEFLATE aplicación / vnd.ms-fontoFLterByType AddOutATE aplicación / x-font-opentype aplicación AddOutputFilterByType DEFLATE / x-font-OTF AddOutputFilterByType DEFLATE application / x-font-TrueType aplicación AddOutputFilterByType DEFLATE / x-font-ttf aplicación AddOutputFilterByType DEFLATE aplicación AddOutputFilterByType DEFLATE / x-javascript / xhtml + xml
aplicación AddOutputFilterByType DEFLATE / xml
AddOutputFilterByType DEFLATE fuente / opentype
AddOutputFilterByType DEFLATE fuente / otf
AddOutputFilterByType DESINFLE fuente / ttf
svg + xml AddOutputFilterByType DESINFLE imagen /
imagen DESINFLE AddOutputFilterByType / x-icon
AddOutputFilterByType DESINFLE text / css
texto AddOutputFilterByType DESINFLE / html
AddOutputFilterByType desinflan text / javascript
texto AddOutputFilterByType DESINFLE / plain
texto AddOutputFilterByType DESINFLE / xml

insectos # Eliminar navegador (sólo necesario para navegadores realmente antiguos)
BrowserMatch ^ Mozilla / 4 gzip-only-text / html
BrowserMatch ^ Mozilla / 4 \ .0 [678] no-gzip
BrowserMatch \ bMSIE! no-gzip! gzip-only-text / html Header append Vary Agente de usuario </IfModule>


14. Archivos de caché

# 1 mes para la mayoría de los activos estáticos 
<filesMatch ". (Css | jpg | jpeg | png | gif | js | ico) $">
Conjunto de encabezados Cache-Control "max-age = 2592000, public"
</filesMatch>

15. Redirigir a HTTPS con WWW

RewriteEngine en 
RewriteCond% {HTTP_HOST}! ^ Www.
RewriteRule ^ (. *) $ Https: //www.% {HTTP_HOST} / $ 1 [R = 301, L]

Publicar un comentario

0 Comentarios