Aquesta és una revisió antiga del document


.htaccess rewrites (redirecciones)

/via:http://deteresa.com/redireccion-301/ hay que tener el mod_rewrite activo

Options +FollowSymlinks
RewriteEngine on
RedirectMatch permanent ^/(.*) http://<url>/$1
RewriteEngine on
RewriteRule ^wiki.*$ https://miguelangel.torresegea.es/wiki/$1 [r=307,L]
RewriteRule ^blog.*$ https://miguelangel.torresegea.es/blog/$1 [r=307,L]
RewriteRule ^sqleditor.*$ https://miguelangel.torresegea.es/bike-9b12022-portable/ [r=307,L]
RewriteRule ^sql.*$ https://miguelangel.torresegea.es/sqldesigner/ [r=307,L]
RewriteRule ^estellar.*$ https://bitbucket.org/estellarcat/workspace/projects/EST [r=307,L]
RewriteRule ^diezminutos.*$ https://bitbucket.org/10minutos/workspace/projects/XMIN [r=307,L]
RewriteRule ^text.*$ https://www.outpan.com/app/e7d5b37405/mytextarea [r=307,L]
 
RewriteCond %{HTTP_HOST} zxc.cat$ [NC]
RewriteCond %{REQUEST_URI} !^/help
RewriteRule ^(.*)$ https://miguelangel.torresegea.es/wiki/$1 [r=307,L]

redireccionar de una página a otra u otro dominio:

Redirect 301 /vieja-pagina http://www.dominio.com/nueva-pagina

redireccionar solo la página principal del dominio:

RedirectMatch 301 ^/$ http://www.dominio.com/nueva-pagina

redireccionar un directorio:

Redirect 301 /viejo-directorio/ http://www.dominio.com/nuevo-directorio/

redirección de un subdirectorio + sus páginas:

RedirectMatch 301 ^/viejo-directorio/(.*)$ http://www.dominio.com/nueva-pagina

redireccionar dominio

Redirect 301 / http://www.dominio.com
RedirectMatch 301 ^(.*)$ http://www.dominio.com

Redireccionar 301 (de técnicos de Colt)

RewriteEngine on
rewriterule ^(.*)$ http://www.volvocars.com/es/sales-services/sales/volvoselekt/Pages/ [r=301,nc]

redireccionar de www a no-www:

<IfModule mod_rewrite.c>
   RewriteCond %{HTTP_HOST} ^example.com [NC]
   RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
</IfModule>

redireccionar de no-www a www

<IfModule mod_rewrite.c>
  RewriteCond %{HTTP_HOST} ^www.example.com [NC]
  RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
</IfModule>

Más información: http://deteresa.com/redireccion-301

eliminar las www:

Options +FollowSymlinks
RewriteEngine on
RewriteCond %{http_host} ^www\.example\.com[nc]
RewriteRule ^(.*)$ http://example.com/$1 [r=301,nc]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

cancelar sitio completo «por obras»:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !^.*secret-cookie.*$ [NC]
RewriteRule .* maintenance-page.html [NC,L]

/vía: http://www.besthostratings.com/articles/force-ssl-htaccess.html utilizar la redirección 301 para evitar penalización en Google:

Options +FollowSymlinks
RewriteEngine on
rewriterule ^(.*)$ http://www.nuevapaginaweb.com/$1 [r=301,nc]
<?php
$web_url ="http://www.nuevapaginaweb.com";
header("HTTP/1.1 301 Moved Permanently");
header("Location: $web_url");
exit(0);
?>

redirección http a https: activar el módulo rewrite en apache

$ sudo a2enmod rewrite
# Copia el contenido siguiente en tu archivo .htaccess y colócalo en la raíz de tu sitio web.
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.dominio.com/$1 [R,L]

# Para forzar la conexión segura en un folder en especifico.
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} folder
RewriteRule ^(.*)$ https://www.dominio.com/folder/$1 [R,L]
Para este segundo caso el archivo .htaccess debe estar ubicado en el folder donde necesitas activar HTTPS.

de www. a <nada> para evitar penalizaciones de doble indexación:

RewriteEngine On
RewriteCond% {} HTTP_HOST! ^ su-site.com $ [NC]
RewriteRule ^(.*)$ http://your-site.com/ $ 1 [L, R = 301]

redireccionar una petición de la raiz de la página web a una carpeta:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^entregaelbalon\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.entregaelbalon\.com$
RewriteCond %{REQUEST_URI} !^/copadelrey/
RewriteRule (.*) /copadelrey/ [L]

en este caso, las peticiones a www.entregaelbalon.com irán automáticamente a www.entregaelbalon.com/copadelrey (si se intenta con redirect da bucle)

  • RewriteEngine on
    RewriteCond %{HTTP_REFERER} ejemplo\.com [NC,OR]
    RewriteCond %{HTTP_REFERER} otroejemplo\.com
    RewriteRule .* - [F]
  • Si el visitante no es de mi sitio -example.com- y pide un fichero de esas extensiones, redireccionalo a un arhivo .gif :
    RewriteEngine on
    RewriteCond %{HTTP_REFERER} !^$
    RewriteCond %{HTTP_REFERER} !^http://([-a-z0-9]+\.)?example\.com[NC]
    RewriteRule .*\.(zip|mp3|avi|wmv|mpg|mpeg)$ http://www.example.com/images/nohotlink.gif [R,NC,L]
  • ojo con enlaces que si que quieres permitir - como un RSS - a alguno de tus ficheros
  • web/apache/htaccess/redirects.1592650885.txt.gz
  • Darrera modificació: 20/06/2020 04:01
  • per admin