diff --git a/boot.php b/boot.php index aa016ef0..1b15eaa6 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']; /**