aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--boot.php8
1 files changed, 8 insertions, 0 deletions
diff --git a/boot.php b/boot.php
index aa016ef0c..1b15eaa63 100644
--- a/boot.php
+++ b/boot.php
@@ -352,6 +352,14 @@ if(! class_exists('App')) {
if(x($_SERVER,'SERVER_NAME')) {
$this->hostname = $_SERVER['SERVER_NAME'];
+ if(stristr($this->hostname,'xn--')) {
+ // PHP or webserver may have converted idn to punycode, so
+ // convert punycode back to utf-8
+ require_once('library/simplepie/idn/idna_convert.class.php');
+ $x = new idna_convert();
+ $this->hostname = $x->decode($s);
+ }
+
if(x($_SERVER,'SERVER_PORT') && $_SERVER['SERVER_PORT'] != 80 && $_SERVER['SERVER_PORT'] != 443)
$this->hostname .= ':' . $_SERVER['SERVER_PORT'];
/**