Redireccionar recursivament

Podem redireccionar recursivament qualsevol petició web (es pot posar URL o fitxer, a la tercera linia).

Per fer-ho, afegim les següents línies al fitxer .htaccess

RewriteEngine on
RewriteBase /
RewriteRule (.*) https://www.dominidesti.tld/$1 [R=301,L]

Alternativa…

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) https://dominidesti.tld [NC]

Si no volem passar el paràmetres o subdirectoris de la URL…

RedirectMatch 301 ^/subdirectori/.*$ https://dominidesti.tld/

Més info: https://gist.github.com/ScottPhillips/1721489

#301 Redirects for .htaccess
   
  #Redirect a single page:
  Redirect 301 /pagename.php http://www.domain.com/pagename.html
   
  #Redirect an entire site:
  Redirect 301 / http://www.domain.com/
   
  #Redirect an entire site to a sub folder
  Redirect 301 / http://www.domain.com/subfolder/
   
  #Redirect a sub folder to another site
  Redirect 301 /subfolder http://www.domain.com/
   
  #This will redirect any file with the .html extension to use the same filename but use the .php extension instead.
  RedirectMatch 301 (.*)\.html$ http://www.domain.com$1.php
   
  ##
  #You can also perform 301 redirects using rewriting via .htaccess.
  ##
   
  #Redirect from old domain to new domain
  RewriteEngine on
  RewriteBase /
  RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
   
  #Redirect to www location
  RewriteEngine on
  RewriteBase /
  rewritecond %{http_host} ^domain.com [nc]
  rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
   
  #Redirect to www location with subdirectory
  RewriteEngine on
  RewriteBase /
  RewriteCond %{HTTP_HOST} domain.com [NC]
  RewriteRule ^(.*)$ http://www.domain.com/directory/index.html [R=301,NC]
   
  #Redirect from old domain to new domain with full path and query string:
  Options +FollowSymLinks
  RewriteEngine On
  RewriteRule ^(.*) http://www.newdomain.com%{REQUEST_URI} [R=302,NC]
   
  #Redirect from old domain with subdirectory to new domain w/o subdirectory including full path and query string:
  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{REQUEST_URI} ^/subdirname/(.*)$
  RewriteRule ^(.*) http://www.katcode.com/%1 [R=302,NC]
   
  Rewrite and redirect URLs with query parameters (files placed in root directory)
   
  Original URL:
   
  http://www.example.com/index.php?id=1
  Desired destination URL:
   
  http://www.example.com/path-to-new-location/
  .htaccess syntax:
   
  RewriteEngine on
  RewriteCond %{QUERY_STRING} id=1
  RewriteRule ^index\.php$ /path-to-new-location/? [L,R=301]
  Redirect URLs with query parameters (files placed in subdirectory)
   
  Original URL:
   
  http://www.example.com/sub-dir/index.php?id=1
  Desired destination URL:
   
  http://www.example.com/path-to-new-location/
  .htaccess syntax:
   
  RewriteEngine on
  RewriteCond %{QUERY_STRING} id=1
  RewriteRule ^sub-dir/index\.php$ /path-to-new-location/? [L,R=301]
  Redirect one clean URL to a new clean URL
   
  Original URL:
   
  http://www.example.com/old-page/
  Desired destination URL:
  http://www.example.com/new-page/
  .htaccess syntax:
   
  RewriteEngine On
  RewriteRule ^old-page/?$ $1/new-page$2 [R=301,L]
  Rewrite and redirect URLs with query parameter to directory based structure, retaining query string in URL root level
   
  Original URL:
   
  http://www.example.com/index.php?id=100
  Desired destination URL:
   
  http://www.example.com/100/
  .htaccess syntax:
   
  RewriteEngine On
  RewriteRule ^([^/d]+)/?$ index.php?id=$1 [QSA]
  Rewrite URLs with query parameter to directory based structure, retaining query string parameter in URL subdirectory
   
  Original URL:
  http://www.example.com/index.php?category=fish
  Desired destination URL:
  http://www.example.com/category/fish/
  .htaccess syntax:
   
  RewriteEngine On
  RewriteRule ^/?category/([^/d]+)/?$ index.php?category=$1 [L,QSA]
  Domain change – redirect all incoming request from old to new domain (retain path)
   
  RewriteEngine on
  RewriteCond %{HTTP_HOST} ^example-old\.com$ [NC]
  RewriteRule ^(.*)$ http://www.example-new.com/$1 [R=301,L]
  If you do not want to pass the path in the request to the new domain, change the last row to:
   
  RewriteRule ^(.*)$ http://www.example-new.com/ [R=301,L]
   
  #From blog.oldsite.com -> www.somewhere.com/blog/
  retains path and query, and eliminates xtra blog path if domain is blog.oldsite.com/blog/
  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{REQUEST_URI}/ blog
  RewriteRule ^(.*) http://www.somewhere.com/%{REQUEST_URI} [R=302,NC]
  RewriteRule ^(.*) http://www.somewhere.com/blog/%{REQUEST_URI} [R=302,NC]

2021-03-26T16:27:13+01:0008 01 2019|Apache|