From d661439b9ea48ee0f2e34df8a0cb77873d1242a3 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tim=20D=C3=BCsterhus?= Date: Wed, 11 May 2022 13:00:29 +0200 Subject: [PATCH] Remove the favicon/corsProxy.php This was required for multi-domain setups. --- .../files/images/favicon/corsProxy.php | 73 ------------------- .../files/lib/data/style/Style.class.php | 7 -- 2 files changed, 80 deletions(-) delete mode 100644 wcfsetup/install/files/images/favicon/corsProxy.php diff --git a/wcfsetup/install/files/images/favicon/corsProxy.php b/wcfsetup/install/files/images/favicon/corsProxy.php deleted file mode 100644 index 9adb7b94fb..0000000000 --- a/wcfsetup/install/files/images/favicon/corsProxy.php +++ /dev/null @@ -1,73 +0,0 @@ - - */ - -$types = [ - 'manifest' => [ - 'filename' => 'manifest.json', - 'type' => 'application/json; charset=UTF-8', - ], -]; -if (!empty($_GET['type']) || !isset($types[$_GET['type']])) { - // get parameters - $type = $_GET['type']; - $styleID = (!empty($_GET['styleID'])) ? \intval($_GET['styleID']) : 'default'; - if ($styleID === 'default' || $styleID > 0) { - if ($styleID === 'default') { - $filename = 'default.' . $types[$type]['filename']; - } else { - $filename = '../style-' . $styleID . '/' . $types[$type]['filename']; - } - if (\file_exists($filename)) { - $filemtime = \filemtime($filename); - - $etag = '"' . \md5($filemtime . $filename) . '"'; - $clientEtag = (!empty($_SERVER['HTTP_IF_NONE_MATCH'])) ? \trim($_SERVER['HTTP_IF_NONE_MATCH']) : ''; - $clientLastModified = (!empty($_SERVER['HTTP_IF_MODIFIED_SINCE'])) ? \trim($_SERVER['HTTP_IF_MODIFIED_SINCE']) : 0; - $clientLastModified = @\strtotime($clientLastModified); - - // ignore request if client seems to already have fetched this file - if (($clientLastModified && $clientEtag) ? (($clientLastModified == $filemtime) && ($clientEtag == $etag)) : ($clientLastModified == $filemtime)) { - \header("HTTP/1.1 304 Not Modified"); - - exit; - } - - $data = \file_get_contents($filename); - - if ($styleID !== 'default') { - $data = \str_replace('src": "', 'src": "../style-' . $styleID . "/", $data); - } - - // send cache and type headers - // allow font fetching from all domains (CORS) - \header('Access-Control-Allow-Origin: *'); - \header('Content-Type: ' . $types[$type]['type']); - \header('Cache-Control: max-age=31536000, private'); - \header('ETag: ' . $etag); - \header('Expires: ' . \gmdate("D, d M Y H:i:s", \time() + 31536000) . ' GMT'); - \header('Last-Modified: ' . \gmdate('D, d M Y H:i:s', $filemtime) . ' GMT'); - \header('Content-Length: ' . \strlen($data)); - - exit($data); - } - - \header("HTTP/1.1 404 Not Found"); - - exit("Unknown file '" . $filename . "' requested."); - } - - \header("HTTP/1.1 400 Bad Request"); - - exit("Invalid styleID '" . $styleID . "' given"); -} - -\header("HTTP/1.1 400 Bad Request"); - -exit("Missing type parameter"); diff --git a/wcfsetup/install/files/lib/data/style/Style.class.php b/wcfsetup/install/files/lib/data/style/Style.class.php index 7449aca536..2f676d488f 100644 --- a/wcfsetup/install/files/lib/data/style/Style.class.php +++ b/wcfsetup/install/files/lib/data/style/Style.class.php @@ -3,7 +3,6 @@ namespace wcf\data\style; use wcf\data\DatabaseObject; -use wcf\system\application\ApplicationHandler; use wcf\system\style\StyleCompiler; use wcf\system\WCF; use wcf\util\FileUtil; @@ -414,12 +413,6 @@ class Style extends DatabaseObject */ protected function getFaviconPath($filename, $absolutePath = true) { - if ($filename === 'manifest.json') { - if (ApplicationHandler::getInstance()->getActiveApplication()->domainName !== ApplicationHandler::getInstance()->getApplicationByID(1)->domainName) { - return WCF::getPath() . 'images/favicon/corsProxy.php?type=manifest' . ($this->hasFavicon ? '&styleID=' . $this->styleID : ''); - } - } - if ($this->hasFavicon) { $path = FileUtil::getRelativePath(WCF_DIR, $this->getAssetPath()) . $filename; } else { -- 2.20.1