[TASK] Move toplevel index.php to frontend extension 90/46390/11
authorMathias Brodala <mbrodala@pagemachine.de>
Sat, 30 Jan 2016 11:36:00 +0000 (12:36 +0100)
committerFrank Naegler <frank.naegler@typo3.org>
Mon, 7 Nov 2016 12:00:24 +0000 (13:00 +0100)
This moves the toplevel "index.php" to the frontend extension
as "frontend.php". The toplevel "index.php" becomes a stub which
includes the "frontend.php".

This setup works in the following cases:

1) Package "typo3/cms" is the root package
2) The "index.php" is symlinked into the web-dir
3) The "index.php" is copied into the web-dir

In all of these cases "typo3" is a toplevel directory.

Resolves: #73027
Releases: master
Change-Id: I1c0653bcc4691105eb2ccfbea2bcc873ce6189da
Reviewed-on: https://review.typo3.org/46390
Reviewed-by: Joerg Boesche <typo3@joergboesche.de>
Tested-by: Joerg Boesche <typo3@joergboesche.de>
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Frank Naegler <frank.naegler@typo3.org>
Tested-by: Frank Naegler <frank.naegler@typo3.org>
.gitignore
index.php
typo3/sysext/frontend/Resources/Private/Php/frontend.php [new file with mode: 0644]

index fe80800..df0a471 100644 (file)
@@ -43,7 +43,7 @@ phantomjsdriver.log
 bin/*
 vendor/*
 #
-# Ignore common TYPO3 CMS directories
+# Ignore common TYPO3 CMS files/directories
 typo3temp/*
 typo3conf/*
 fileadmin/*
index 092dca7..ee91334 100644 (file)
--- a/index.php
+++ b/index.php
@@ -1,30 +1,3 @@
 <?php
-/*
- * This file is part of the TYPO3 CMS project.
- *
- * It is free software; you can redistribute it and/or modify it under
- * the terms of the GNU General Public License, either version 2
- * of the License, or any later version.
- *
- * For the full copyright and license information, please read the
- * LICENSE.txt file that was distributed with this source code.
- *
- * The TYPO3 project - inspiring people to share!
- */
 
-/**
- * This is the MAIN DOCUMENT of the TypoScript driven standard frontend.
- * Basically this is the "index.php" script which all requests for TYPO3
- * delivered pages goes to in the frontend (the website)
- */
-
-// Exit early if php requirement is not satisfied.
-if (version_compare(PHP_VERSION, '7.0.0', '<')) {
-    die('This version of TYPO3 CMS requires PHP 7.0 or above');
-}
-
-// Set up the application for the Frontend
-call_user_func(function () {
-    $classLoader = require rtrim(realpath(__DIR__ . '/typo3'), '\\/') . '/../vendor/autoload.php';
-    (new \TYPO3\CMS\Frontend\Http\Application($classLoader))->run();
-});
+require __DIR__ . '/typo3/sysext/frontend/Resources/Private/Php/frontend.php';
diff --git a/typo3/sysext/frontend/Resources/Private/Php/frontend.php b/typo3/sysext/frontend/Resources/Private/Php/frontend.php
new file mode 100644 (file)
index 0000000..00b9bcf
--- /dev/null
@@ -0,0 +1,24 @@
+<?php
+/*
+ * This file is part of the TYPO3 CMS project.
+ *
+ * It is free software; you can redistribute it and/or modify it under
+ * the terms of the GNU General Public License, either version 2
+ * of the License, or any later version.
+ *
+ * For the full copyright and license information, please read the
+ * LICENSE.txt file that was distributed with this source code.
+ *
+ * The TYPO3 project - inspiring people to share!
+ */
+
+// Exit early if php requirement is not satisfied.
+if (version_compare(PHP_VERSION, '7.0.0', '<')) {
+    die('This version of TYPO3 CMS requires PHP 7.0 or above');
+}
+
+// Set up the application for the Frontend
+call_user_func(function () {
+    $classLoader = require __DIR__ . '/../../../../../../vendor/autoload.php';
+    (new \TYPO3\CMS\Frontend\Http\Application($classLoader))->run();
+});