comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Como usar el .htaccess

  • 0 Respuestas
  • 1566 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Réplica1

  • *
  • Underc0der
  • Mensajes: 35
  • Actividad:
    0%
  • Reputación 0
  • ... está historia se acabó.
    • Ver Perfil
    • @Pekador - Twitter
« en: Agosto 28, 2013, 10:46:54 am »
¿Qué es un .htaccess?

El .htaccess (Acceso de Hiper-Texto) es el nombre por defecto del archivo de configuración de directorios de Apache. Se utiliza para personalizar la configuración de directivas y parámetros definidos en el archivo de configuración principal del alojamiento. Tiene una gran variedad de usos y utilidades que le pueden resultar útiles en su web. En el siguiente tutorial le mostramos algunas de las funciones más utilizadas por el .htaccess.


¿Cómo crear y dónde colocar un fichero .htaccess?

Para crear un fichero .htaccess, abra el bloc de notas e introduzca el código necesario. Guarde el fichero como fichero de texto (.txt), por ejemplo "fichero_htaccess.txt", y súbalo por FTP en la carpeta donde tiene que utilizarse. Una vez en el servidor, modifique el nombre del fichero "fichero_htaccess.txt" por el de ".htaccess".

El .htaccess debe colocarse en el interior de la carpeta donde queremos que tenga efecto. Por ejemplo, si queremos proteger con contraseña una carpeta llamada "privado", colocaremos el .htaccess dentro de la carpeta "privado".


Utilidades comunes  del .htaccess

El .htaccess tiene un gran número de utilidades, en este tutorial le mostramos algunas de las utilidades más comunes y cómo debe configurarse en el fichero .htaccess

Control de acceso al sitio

Podemos hacer que, si por alguna razón deseamos denegar el acceso a todos los usuarios o sólo permitir a un cierto grupo de direcciones IP para que tengan acceso a tu sitio.

Para permitir el acceso a tu sitio solo a ciertas IPs:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
ErrorDocument 403 http://www.mi-url.com
Order deny,allow
Deny from all
Allow from 124.34.48.165
Allow from 102.54.68.123

Las IPs 124.34.48.165 y 102.54.68.123 son las IPs que tendrán acceso a la web.

Denegar el acceso al sitio solo a ciertas IPs:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Allow from all
Deny from 145.186.14.122
Deny from 124.15

La IP 145.186.14.122 y la red 124.15.x.x no tendrán acceso a la web.

Control de acceso a carpetas

Un uso muy común del .htaccess es impedir el acceso a algunas carpetas. Puede ser que queramos deshabilitar totalmente el acceso a una carpeta (por ejemplo, una carpeta con librerías de programación que se incluyen en los archivos principales. En este caso sólo los archivos principales accederán a ellos mediante el sistema de archivos, pero no se podrán acceder via web). Bueno, simplemente creamos un archivo .htaccess en esa carpeta que contenga el siguiente codigo si deseamos:

Prohibir o deshabilitar por completo el acceso a una carpeta:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
#deny all access
deny from all

Permitir el acceso desde una IP específica:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
#deny all access
deny from all
allow from 212.267.98.14

Permitir el acceso a un rango específico de IPs (forzado mediante la máscara de red):

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
allow from 192.168.0.0/24
Bloquear el acceso a un archivo específico:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
<Files archivo.html>
Order allow,deny
Deny from all

Listado de carpetas

También podemos utilizar el .htaccess para mostrar el contenido de una carpeta en la estructura de directorios.

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Options +Indexes
Listado de carpetas, pero no queremos que se nos muestren los iconos por defecto:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Options +Indexes
IndexOptions -FancyIndexing

También se podría querer evitar el listado de carpetas:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
IndexIgnore *
Redirigir web

Si al acceder a su alojamiento, desea redirigir la página a otra:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteEngine On
RewriteRule ^(.*)$ http://www.webaredirigir.com/$1 [R=301,L]

Redirigir peticiones a subcarpeta

Si tenemos la web en una subcarpeta diferente de la carpeta "web", podemos redirigir todas las consultas a esta subcarpeta:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteEngine on
RewriteCond % ^midominio.com\.com$
RewriteRule (.*) http://www.midominio.com/$1 [R=301,L]
RewriteRule ^$ carpeta [L]

donde:
midominio.com\.com sería, por ejemplo, cdmon\.com.com
carpeta sería, por ejemplo, wordpress

Redirigir peticiones con No tienes permisos para ver links. Registrate o Entra con tu cuenta a dominio.com y a la inversa

Si queremos que nuestra web se vea siempre sin www, añadimos el siguiente código en el .htaccess:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]
RewriteCond % ^www\.midominio.com [NC]
RewriteRule ^(.*)$ http://midominio.com/$1 [L,R=301]
</IfModule>

I al revés, que la web se vea siempre con www:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond % !-f
RewriteCond % !-d
RewriteRule . /index.php [L]
RewriteCond % ^\.midominio.com [NC]
RewriteRule ^(.*)$ http://www.midominio.com/$1 [L,R=301]
</IfModule>

donde:
midominoi.com podría ser, por ejemplo, cdmon.com

Redirigir web amigable con SEO

Si has transferido nombres de dominio o deseas redireccionar a una página específica sin que afecte a los resultados de los motores de búsqueda como Google, utiliza el siguiente código:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Redirect 301 /d/nombredelarchivo.html http://www.mi-url.com
Redireccionar el tráfico web

Si lo que deseamos es que si alguien intenta acceder a un archivo en concreto le redirija a otro fichero, podemos utilizar la directiva Redirect:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Redirect /fichero.php http://sudominio.com/otros/nuevofichero.php
Redireccionar a conexión segura HTTPS

Si deseamos redireccionar todo nuestro sitio a una conexión segura (HTTPS), esto es muy util si por ejemplo disponemos de un certificado SSL y queremos trabajar con el.

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.midominio.com/$1 [R,L]

Redireccionar usuarios para usar HTTPS para una carpeta en particular

Si lo que deseamos es solo redireccionar a una conexión segura (HTTPS) una carpeta en particular en vez de todo el sitio, por ejemplo tenemos una tienda en una carpeta aparte de nuestro sitio, hay que usar el siguiente codigo.

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} nombre_de_la_carpeta
RewriteRule ^(.*)$ https://www.midominio.com/nombre_de_la_carpeta/$1 [R,L]

Evitar el hotlinking

El hotlinking consiste en realizar un enlace directo a ficheros, generalmente imágenes y vídeos, que pertenecen a otra web. Esta práctica consume la transferencia del sitio original de la imagen. Para evitar que nos "roben" ancho de banda podemos configurar el .htaccess para impedir el hotlinking. RewriteEngine on

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?midominio.com/.*$ [NC]

Ahora falta la ultima linea que puede ser para prohibir que contenido no deseamos (se escoje en función de las extensiones de los archivos) que nos cojan:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteRule .*\.(jpe?g|gif|bmp|png)$ [L]
O bien esta otra regla que además muestra un archivo (no_robar_ancho_de_banda.gif que debemos haber creado previamente) para advertir que esta imagen esta siendo cogida de nuestro site.

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteRule .*.(gif|jpg|png)$ http://midominio.com/img/no_robar_ancho_de_banda.gif[nc]
En la última línea ponemos las extensiones de los ficheros que queremos impedir que los enlacen.

Cambiar la pagina por defecto

Puedes hacer que la página indice de tu sitio a mostrar no sea la archiconocida "index". Aquí seteamos "about.html" como página de inicio:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
#Serve Alternate Default Index Page
DirectoryIndex about.html

Quitar palabras o strings de una URL

Esta opción sirve para evitar que la gente conozca nuestro arbol de rutas de nuestro alojamiento con ello incrementamos la seguridad a la vez que hacemos la dirección más atractiva. En este ejemplo, quitaremos la palabra "category" de nuestras URL.

Es decir: No tienes permisos para ver links. Registrate o Entra con tu cuenta -> No tienes permisos para ver links. Registrate o Entra con tu cuenta

Agrega este código al final de tu .htaccess

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
RewriteRule ^category/(.+)$ http://www.midominio.com/$1 [R=301,L]
Forzar el cacheo de nuestro sitio

El siguiente snippet no va a incrementar directamente la velocidad de carga del sitio en general, pero sí va a cargar más rápido cuando el mismo usuario vuelva a visitarlo, al enviar un status 304 cuando se pidan elementos que no han sido modificados. Puedes cambiar la frecuencia de cacheo al cambiar el número de segundos (en este ejemplo se da una vez al día):

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
FileETag MTime Size
ExpiresActive on
ExpiresDefault "access plus 86400 seconds"

Mejorar la compatibilidad de los caracteres

Esta opción es para aquellos que no utilizan un juego de caracteres standard reconocido por el servidor, con esta medida evitamos mostrar el famoso error 500.

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
AddDefaultCharset utf-8
Crear URL amigables

Una URL amigable consiste en disfrazar una URL llena de parámetros para que quede más elegante y para ayudar también a tener una mejor posición de la página en los buscadores.

Por ejemplo, carpeta/fichero.php?id=120&idioma=es es una URL no amigable, por lo que la transformaremos en carpeta/fichero/120/es que es más elegante y ayuda al posicionamiento en los buscadores. Es una URL amigable. Con el fichero .htaccess podemos realizar este disfraz para la URL.

Tenemos una carpeta en nuestra web que tiene un fichero al que se le pasan parámetros.

sudominio.com/carpeta/fichero.php?id=25

Entonces, dentro de esta carpeta crearemos un .htaccess con el siguiente código:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
Options +FollowSymLinks
RewriteEngine on
RewriteRule carpeta/(.*)/(.*).php$ /carpeta/fichero.php?id=$1

En la última línea es donde se realiza el cambio.

(.*) será el parámetro que le pasaremos, $1.

(.*).php$ será el nombre del fichero para "decorar" la URL.

Una vez creado el .htaccess, en el enlace de nuestra web pondremos:

Código: No tienes permisos para ver links. Registrate o Entra con tu cuenta
<a href="carpeta/25/nombre-del-fichero.php"> Enlace al fichero 25</a>
Por lo tanto, carpeta/25/nombre-del-fichero.php será lo mismo que /carpeta/fichero.php?id=25.

Fuente: No tienes permisos para ver links. Registrate o Entra con tu cuenta

Saludos.

 

¿Te gustó el post? COMPARTILO!



Como instalar el diccionario para corrección ortográfica en español en Notepad++

Iniciado por graphixx

Respuestas: 0
Vistas: 413
Último mensaje Julio 18, 2018, 04:25:23 am
por graphixx
Como colocar caja de comentarios de Facebook en Blogger en 3 pasos

Iniciado por ANTRAX

Respuestas: 1
Vistas: 1360
Último mensaje Junio 21, 2015, 08:53:48 pm
por Yavi
[HTML][BASICO] Como cambiar el cursor por uno personalizado (Explicado)

Iniciado por elshotta

Respuestas: 2
Vistas: 1677
Último mensaje Octubre 15, 2012, 08:25:38 pm
por elshotta
Internet & World Wide Web Como Programar, 5ta Edición - Deitel

Iniciado por D3ivid

Respuestas: 1
Vistas: 1838
Último mensaje Febrero 24, 2015, 05:40:40 pm
por Hu3c0
[SOURCE] Libreria para tu propia NUBE como MEGA

Iniciado por graphixx

Respuestas: 4
Vistas: 2001
Último mensaje Marzo 21, 2017, 01:40:16 pm
por 79137913