{"id":547,"date":"2015-09-30T05:11:42","date_gmt":"2015-09-30T03:11:42","guid":{"rendered":"http:\/\/pymessoft.com\/web\/?p=547"},"modified":"2018-08-02T17:32:18","modified_gmt":"2018-08-02T15:32:18","slug":"configurar-htaccess","status":"publish","type":"post","link":"https:\/\/pymessoft.com\/web\/configurar-htaccess\/","title":{"rendered":"Configurar htaccess"},"content":{"rendered":"<div style=\"text-align: justify;\">\n<p>Hoy en d\u00eda, la mayor\u00eda de ofertas de alojamiento web son para el servidor web Apache. Es una soluci\u00f3n mucho m\u00e1s barata en comparaci\u00f3n con la plataforma IIS en Windows. Apache es bien conocido por su capacidad para usar\u00a0<strong>.htaccess<\/strong>, donde podemos controlar determinados aspectos de nuestro sitio web, incluyendo el rendimiento. Uno de los m\u00e1s populares es redirigir cualquier dominio sin www al dominio con www. En este ejemplo, si intenta tener acceso a http:\/\/webempresa.com, el servidor le redirigir\u00e1 a http:\/\/www.webempresa.com. Esto puede garantizar que el\u00a0<strong><em>PageRank<\/em>&#x2122;<\/strong>\u00a0no se divide en dos. Para su informaci\u00f3n,\u00a0<em>Google<\/em>\u00a0trata a estos dos dominios como diferentes. He aqu\u00ed algunos de los c\u00f3digos\u00a0<strong>.htaccess<\/strong>\u00a0que se pueden utilizar en sus sitios web.<\/p>\n<h3>Redirigir la URL sin www a la direcci\u00f3n con www<\/h3>\n<p>Como explique anteriormente, el siguiente c\u00f3digo redirigir\u00e1 de la URL de su dominio sin\u00a0<strong>www<\/strong>\u00a0a la URL de su dominio con\u00a0<strong>www<\/strong>. RewriteEngine On RewriteCond %{HTTP_HOST} ^webempresa.com RewriteRule (.*) http:\/\/www.webempresa.com\/$1 [R=301,L]<\/p>\n<\/div>\n<div style=\"text-align: justify;\">\n<h3>Como cambiar de la URL www para la direcci\u00f3n URL sin www<\/h3>\n<p>Y el siguiente c\u00f3digo debe redirigir al usuario de la direcci\u00f3n URL de su dominio con www a la direcci\u00f3n URL sin www. RewriteEngine On RewriteCond %{HTTP_HOST} ^www.webempresa.com [NC] RewriteRule ^(.*)$ http:\/\/webempresa.com\/$1 [L,R=301]<\/p>\n<h3>Impedir listar el directorio<\/h3>\n<p>Si tiene una carpeta en el servidor web utilizada para almacenar archivos como los e-docs, software legal, etc,, si la carpeta no tiene archivo index.html, los visitantes pueden ver todos los archivos dentro de la carpeta sin problemas. En este caso puede utilizar el c\u00f3digo siguiente para evitar que esto suceda. Options -Indexes<\/p>\n<h3>Orden de ejecuci\u00f3n de archivos<\/h3>\n<p>Si tiene tanto el archivo index.html como el archivo index.php en la carpeta \/public_html, el archivo index.html tiene mayor prioridad y se ejecutara en primer lugar. Aunque la mayor\u00eda de scripts web utilizan el archivo index.php como punto de partida. Si se puede eliminar el archivo index.html, se soluciona el problema, aunque no siempre es asi y en estos casos hay una mejor soluci\u00f3n que es utilizar el siguiente c\u00f3digo para dar prioridad al archivo index.php en vez de index.html. DirectoryIndex index.php index.html<\/p>\n<h3>Comprimir archivos CSS, JavaScript, XML y texto<\/h3>\n<p>El siguiente c\u00f3digo est\u00e1 dise\u00f1ado para comprimir el c\u00f3digo de salida CSS, JavaScript, XML y de texto antes de ser mostrado en el navegador. La idea b\u00e1sica es ahorrar tiempo en la carga y no consumir tanto ancho de banda. AddOutputFilterByType DEFLATE text\/html text\/plain text\/xml text\/css text\/javascript application\/x-javascript<\/p>\n<h3>Almacenamiento en cach\u00e9 de im\u00e1genes<\/h3>\n<p>Cada vez que recibimos visitas en la web, el servidor web obtiene todos los archivos necesarios, tales como archivos CSS y JavaScript, as\u00ed como fotos e im\u00e1genes para poder mostrarla. Podemos usar el c\u00f3digo de abajo para gestionar los archivos de cach\u00e9, y que cuando un visitante vuelva a visitarnos por segunda vez, el servidor cargue el archivo de la cach\u00e9 lo que acelerar\u00e1 el tiempo de carga sitio web. ExpiresActive On ExpiresByType image\/gif A432000 ExpiresByType image\/jpg A432000 ExpiresByType image\/jpeg A432000 ExpiresByType image\/png A432000 ExpiresByType image\/ico A432000 ExpiresByType image\/bmp A432000 ExpiresByType text\/css A432000 ExpiresByType text\/javascript A432000 ExpiresByType application\/javascript A432000 ExpiresByType application\/x-javascript A432000 El c\u00f3digo anterior guarda cach\u00e9 de los archivos durante cinco d\u00edas o 432.000 segundos. Puede cambiar el per\u00edodo de almacenamiento en cach\u00e9, asegur\u00e1ndose de utilizar el valor expresado en segundos.<\/p>\n<h3>Proteger el archivo .htaccess<\/h3>\n<p>El siguiente c\u00f3digo evita que su archivo .htaccess puedan ser le\u00eddo directamente desde el navegador web. order allow,deny deny from all<\/p>\n<h3>Prevenir el hotlinking<\/h3>\n<p>A veces, otros webmasters, hacen suyas las im\u00e1genes de nuestras webs, art\u00edculos, etc., afectando con ello el ancho de banda de que disponemos en nuestro Hosting. Si ademas ellos tienen una gran cantidad de visitantes al d\u00eda, estos van a utilizar nuestro ancho de banda del servidor para visualizar nuestras imagenes en la web ajena a nosotros. Se puede utilizar el c\u00f3digo que se muestra a continuaci\u00f3n para evitar el\u00a0<em>hotlinking<\/em>, y de esta forma reemplazar la imagen original por otra con alg\u00fan aviso para hacerles saber que la imagen es nuestra o que el\u00a0<em>hotlinking<\/em>\u00a0es una mala pr\u00e1ctica. RewriteEngine On RewriteCond %{HTTP_REFERER} !^http:\/\/(.+\\.)?webempresa\\.com\/ [NC] RewriteCond %{HTTP_REFERER} !^$ RewriteRule .*\\.(jpg|gif|bmp|png)$ http:\/\/hotlink.webempresa.com\/no_se_permite_hotlinking.jpg [L] Puede subir la imagen a un sitio de alojamiento de im\u00e1genes como\u00a0<a href=\"http:\/\/imageshack.us\/\" target=\"_blank\" rel=\"noopener\">ImageShack<\/a>\u00a0para evitar que su ancho de banda se vea afectado.<\/p>\n<h3>Cambiar la ubicaci\u00f3n de la carpeta de dominio a otra carpeta de \/public_html<\/h3>\n<p>Si ya tiene un sitio web en el \/public_html, y quiere actualizar la p\u00e1gina web, pero no quiere que los dem\u00e1s lo vean, pero tampoco quiere afectar al sitio web en producci\u00f3n existente, la forma m\u00e1s f\u00e1cil es la construcci\u00f3n de la nueva p\u00e1gina web en una subcarpeta de \/public_html, por ejemplo, \/public_html\/web2. Al finalizar todas las pruebas y mejoras, quiere reemplazar el antiguo sitio web con el nuevo pero transferir archivos y carpetas a la carpeta \/public_html es bastante molesto. La mejor soluci\u00f3n es usar.htaccess para decirle a Apache que utilice la carpeta \/public_html\/web2 en lugar de \/public_html para el dominio. RewriteEngine On RewriteCond %{HTTP_HOST} ^webempresa\\.com$ [OR] RewriteCond %{HTTP_HOST} ^www\\.webempresa\\.com$ RewriteCond %{REQUEST_URI} !^\/web2\/ RewriteRule (.*) \/web2\/$1 [L]<\/p>\n<h3>Crear URLs de uso f\u00e1cil o \u00abamigables\u00bb<\/h3>\n<p>\u00bfCu\u00e1l de las dos URL a continuaci\u00f3n parece m\u00e1s amigable? http:\/\/tusitio.com\/acercade http:\/\/tusitio.com\/paginas\/acercade.html Cuando se trata de direcciones URL, siempre y cuando el significado sea claro, cuanto m\u00e1s corto es, mejor. htaccess con una llamada al m\u00f3dulo de Apache mod_rewrite permite configurar las direcciones URL como quieras. El servidor puede mostrar el contenido de \u00ab\/paginas\/acercade.html\u00bb cada vez que alguien visita \u00abhttp:\/\/tusitio.com\/acercade\u00bb. A continuaci\u00f3n algunos ejemplos: RewriteEngine on RewriteRule ^acercade\/$ \/paginas\/acercade.html [L] RewriteRule ^caracteristicas\/$ \/caracteristicas.php [L] RewriteRule ^comprar\/$ \/comprar.html [L] RewriteRule ^contacto\/$ \/paginas\/contacto.htm [L]<\/p>\n<h3>Forzar el uso de SSL<\/h3>\n<p>Este c\u00f3digo fuerza a utilizar SSL, no permitiendo conexiones\u00a0<strong>http<\/strong>. Para evitar escuchas en http:\/\/ utilizamos por debajo la directiva\u00a0<em><a href=\"http:\/\/httpd.apache.org\/docs\/2.0\/mod\/core.html#page-header\" target=\"_blank\" rel=\"noopener\">ErrorDocument<\/a><\/em>. SSLOptions + StrictRequire SSLRequireSSL Cuando una l\u00ednea comienza por\u00a0<strong>#<\/strong>\u00a0es un comentario que no tiene ning\u00fan efecto. Cuando alguien visita su sitio el servidor web Apache verifica si tiene un archivo\u00a0<strong>.htaccess<\/strong>\u00a0en alg\u00fan lugar de su espacio web a partir de la carpeta ra\u00edz o la carpeta principal y rastrea todas las carpetas hasta llegar al archivo solicitado. Si encuentra un archivo .htaccess, sus directivas se aplican a la solicitud actual. Es importante saber que el archivo\u00a0<strong>.htaccess<\/strong>\u00a0debe ser legible por el servidor Apache. Por tanto es importante consultar con su Hosting si se requiere alg\u00fan permiso especial que hayan establecido para los archivos .htaccess. En general los permisos correctos para este archivo son 644. Estas apenas son unas pinceladas de las muchas posibilidades que tiene la correcta gesti\u00f3n del archivo .<strong>htaccess<\/strong>\u00a0que en la mayor\u00eda de sitios webs, del nivel que sean, suele pasar desapercibido y es relegado al estatus de un archivo m\u00e1s, cuando el potencial del mismo es tan grande como quiera otorgarle el usuario. Autor: Lu\u00eds Mendez<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Hoy en d\u00eda, la mayor\u00eda de ofertas de alojamiento web son para el servidor web Apache. Es una soluci\u00f3n mucho m\u00e1s barata en comparaci\u00f3n con la plataforma IIS en Windows. Apache es bien conocido por su capacidad para usar\u00a0.htaccess, donde podemos controlar determinados aspectos de nuestro sitio web, incluyendo el rendimiento. Uno de los m\u00e1s&#8230;<\/p>\n","protected":false},"author":1,"featured_media":244,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[148,59,55],"tags":[],"class_list":["post-547","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-redes","category-servidores","category-sistemas-operativos"],"_links":{"self":[{"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/posts\/547","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/comments?post=547"}],"version-history":[{"count":3,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/posts\/547\/revisions"}],"predecessor-version":[{"id":1872,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/posts\/547\/revisions\/1872"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/media\/244"}],"wp:attachment":[{"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/media?parent=547"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/categories?post=547"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pymessoft.com\/web\/wp-json\/wp\/v2\/tags?post=547"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}