[BUGFIX] Also show port when trustedHosts pattern mismatches 34/54834/3
authorOliver Thiele <mail@oliver-thiele.de>
Tue, 28 Nov 2017 09:34:17 +0000 (10:34 +0100)
committerMarkus Klein <markus.klein@typo3.org>
Tue, 28 Nov 2017 16:19:58 +0000 (17:19 +0100)
Add the port information to the error message when the
trustedHostsPattern mismatches. This is important as
the SERVER_NAME may match, but the SERVER_PORT might be
different from the default ports.

Releases: master, 8.7
Resolves: #83133
Change-Id: I8a25cc0bd2c9578b611986cea4bb7f270dff927b
Reviewed-on: https://review.typo3.org/54834
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Tested-by: Mathias Schreiber <mathias.schreiber@typo3.com>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
typo3/sysext/install/Classes/SystemEnvironment/SetupCheck.php

index a9fa51a..65788db 100644 (file)
@@ -67,7 +67,14 @@ class SetupCheck implements CheckInterface
             } else {
                 $status = new Status\ErrorStatus();
                 $status->setTitle('Trusted hosts pattern mismatch');
-                $status->setMessage('The trusted hosts pattern will be configured to allow all header values. This is because your $SERVER_NAME is "' . htmlspecialchars($_SERVER['SERVER_NAME']) . '" while your HTTP_HOST is "' . htmlspecialchars($_SERVER['HTTP_HOST']) . '". Check the pattern defined in Install Tool -> All configuration -> System -> trustedHostsPattern and adapt it to expected host value(s).');
+                $defaultPort = GeneralUtility::getIndpEnv('TYPO3_SSL') ? '443' : '80';
+                $status->setMessage(
+                    'The trusted hosts pattern will be configured to allow all header values. This is because your $SERVER_NAME:[defaultPort]'
+                        . ' is "' . htmlspecialchars($_SERVER['SERVER_NAME']) . ':' . $defaultPort . '" while your HTTP_HOST:SERVER_PORT is "'
+                        . htmlspecialchars($_SERVER['HTTP_HOST']) . ':' . htmlspecialchars($_SERVER['SERVER_PORT'])
+                        . '". Check the pattern defined in Install Tool -> All'
+                        . ' configuration -> System -> trustedHostsPattern and adapt it to expected host value(s).'
+                );
             }
         }