diff options
author | Romain d'Alverny <rda@mageia.org> | 2011-07-06 16:55:20 +0000 |
---|---|---|
committer | Romain d'Alverny <rda@mageia.org> | 2011-07-06 16:55:20 +0000 |
commit | 1a0f7746667c91bb81ef8c0c391943ff8bc8781a (patch) | |
tree | 26f8ac04b4d997ae3e105b68971cf4234ae8e066 | |
parent | 629f4e8a6d122cffc3eb9a1ac2f5d02d29d66170 (diff) | |
download | www-1a0f7746667c91bb81ef8c0c391943ff8bc8781a.tar www-1a0f7746667c91bb81ef8c0c391943ff8bc8781a.tar.gz www-1a0f7746667c91bb81ef8c0c391943ff8bc8781a.tar.bz2 www-1a0f7746667c91bb81ef8c0c391943ff8bc8781a.tar.xz www-1a0f7746667c91bb81ef8c0c391943ff8bc8781a.zip |
catch /?fromtld=$tld requests: new tld_redirect()
-rw-r--r-- | index.php | 16 | ||||
-rw-r--r-- | langs.inc.php | 15 |
2 files changed, 28 insertions, 3 deletions
@@ -7,17 +7,27 @@ require_once 'langs.inc.php'; // NOTE, this should go to the main controller in the next platform // (catching all requests) -$domain = 'mageia.org'; +$domain = 'mageia.org'; $www_domain = 'www.' . $domain; + if (G_VHOST == $domain) { + // rewrite "//mageia.org/" to "//www.mageia.org/" header ('HTTP/1.1 301 Moved Permanently'); header(sprintf('Location: http://%s%s', $www_domain, $_SERVER['REQUEST_URI'])); die; -} elseif (G_VHOST != $www_domain) { +} +elseif (isset($_GET['fromtld'])) { + // rewrite "//mageia.org/?fromtld=it" to "//www.mageia.org/it/" + tld_redirect($_GET['fromtld'], $domains_lang, $www_domain); +} +elseif (G_VHOST != $www_domain) { + // rewrite "//mageia.it/" to "//www.mageia.org/it/" domain_redirect($_SERVER['SERVER_NAME'], $domains_lang, $www_domain); } -if (isset($_GET['langs'])) { die(show_langs($langs)); } +if (isset($_GET['langs'])) { + die(show_langs($langs)); +} if (isset($_GET['flang'])) { diff --git a/langs.inc.php b/langs.inc.php index 7409f5b9d..db65777de 100644 --- a/langs.inc.php +++ b/langs.inc.php @@ -48,6 +48,21 @@ $domains_lang = array( * Redirect to a localized path, depending on incoming TLD. * Only manages redirections to main home path. * + * @param string $tld + * @param array $domains_lang + * @param string $vhost + * + * @return void +*/ +function tld_redirect($tld, $domains_lang, $vhost) +{ + domain_redirect('mageia.' . $tld, $domains_lang, $vhost); +} + +/** + * Redirect to a localized path, depending on incoming full domain. + * Only manages redirections to main home path. + * * @param string $host * @param array $domains_lang * @param string $vhost |