| 
									
										
										
										
											2020-03-10 19:04:22 +00:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-21 20:18:05 +00:00
										 |  |  | /* | 
					
						
							|  |  |  |  * This file is part of GNU social - https://www.gnu.org/software/social | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * GNU social is free software: you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU Affero General Public License as published by | 
					
						
							|  |  |  |  * the Free Software Foundation, either version 3 of the License, or | 
					
						
							|  |  |  |  * (at your option) any later version. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * GNU social is distributed in the hope that it will be useful, | 
					
						
							|  |  |  |  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
					
						
							|  |  |  |  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
					
						
							|  |  |  |  * GNU Affero General Public License for more details. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * You should have received a copy of the GNU Affero General Public License | 
					
						
							|  |  |  |  * along with GNU social.  If not, see <http://www.gnu.org/licenses/>. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /** | 
					
						
							|  |  |  |  * GNU social's true web entry point, bootstraps Symfony's configuration and instantiates our Kernel | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @package  GNUsocial | 
					
						
							|  |  |  |  * @category Framework | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * @author    Hugo Sales <hugo@fc.up.pt> | 
					
						
							|  |  |  |  * @copyright 2020 Free Software Foundation, Inc http://www.fsf.org | 
					
						
							|  |  |  |  * @license   https://www.gnu.org/licenses/agpl.html GNU AGPL v3 or later | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2020-03-10 19:04:22 +00:00
										 |  |  | use App\Kernel; | 
					
						
							|  |  |  | use Symfony\Component\ErrorHandler\Debug; | 
					
						
							|  |  |  | use Symfony\Component\HttpFoundation\Request; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-15 21:21:11 +00:00
										 |  |  | require dirname(__DIR__) . '/config/bootstrap.php'; | 
					
						
							| 
									
										
										
										
											2020-03-10 19:04:22 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | if ($_SERVER['APP_DEBUG']) { | 
					
						
							|  |  |  |     umask(0000); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     Debug::enable(); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) { | 
					
						
							| 
									
										
										
										
											2020-03-21 20:18:05 +00:00
										 |  |  |     Request::setTrustedProxies(\explode(',', $trustedProxies), | 
					
						
							|  |  |  |                                Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST); | 
					
						
							| 
									
										
										
										
											2020-03-10 19:04:22 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) { | 
					
						
							|  |  |  |     Request::setTrustedHosts([$trustedHosts]); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-03-15 21:21:11 +00:00
										 |  |  | $kernel   = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']); | 
					
						
							|  |  |  | $request  = Request::createFromGlobals(); | 
					
						
							| 
									
										
										
										
											2020-03-10 19:04:22 +00:00
										 |  |  | $response = $kernel->handle($request); | 
					
						
							|  |  |  | $response->send(); | 
					
						
							|  |  |  | $kernel->terminate($request, $response); |