URL Redirection of complete domain names
Versie door Jeroen Strompf (overleg | bijdragen) op 7 nov 2015 om 13:07 (→Oplossing met VirtualHost-bestand)
Er zijn meerdere wegen die naar Rome leiden, en meerdere manieren om URL redirection oftewel URL forwarding te doen. Dit artikel behandelt redirection op Apache-niveau.
Casus: example.de → example.com/de
Hoe doe je een redirect van het ene domein naar een specifieke URL binnen een ander domein? Alleen example.de → example.com
is simpel. Dit is een stap verder.
Brainstorm
- Rechtstreeks redirect in een Apache Virtueel Hostbestand plaatsen?
mod_rewrite
-modulemod_alias
-module? Deze is beperkter dan mod_rewrite, en werkt altijd met een beginlocatie die zich binnen de document root van het betreffende domein moet beginnen. Maw.: mod_alias werkt alleen binnen een domeinnaam.htaccess
Oplossing met .htaccess
RewriteCond %{HTTP_HOST} ^(.*)example\.de(.*)$ RewriteRule ^(.*) http://example.com/de/
- Zonder
http://
werkt het niet - Door de wildcards
(.*)
aan het begin en het eind van de RewriteConditie, worden alle subdomeinen en achtervoegsels genegeerd.
Oplossing met VirtualHost-bestand
Op de Apache .htaccess-tutorial-pagina wordt gezegd:
You should avoid using .htaccess files completely if you have access to httpd main server config file. Using .htaccess files slows down your Apache http server. Any directive that you can include in a .htaccess file is better set in a Directory block, as it will have the same effect with better performance.
De oplossing lijkt simpel: De statements uit het .htaccess-bestand verplaatsen naar het hoofd-directory block. Het werkte echter niet. Komt een andere keer.
Bronnen
Algemeen
- https://en.wikipedia.org/wiki/URL_redirection
- http://stackoverflow.com/questions/4856193/using-mod-rewrite-and-mod-alias-redirect-301-together-in-htaccess - mod_alias-redirects stop je in .htaccess
- http://www.greywyvern.com/?post=358 - Apache mod_rewrite & mod_alias tricks you should know
- http://httpd.apache.org/docs/2.2/mod/mod_alias.html
Specifiek
- https://www.webmasterworld.com/apache/4509064.htm - Redirect old domain to specific page on main domain? > Ziet er goed uit