public function DrupalKernel::handle in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/DrupalKernel.php \Drupal\Core\DrupalKernel::handle()
1 method overrides DrupalKernel::handle()
- UpdateKernel::handle in core/
lib/ Drupal/ Core/ Update/ UpdateKernel.php
File
- core/
lib/ Drupal/ Core/ DrupalKernel.php, line 693
Class
- DrupalKernel
- The DrupalKernel class is the core of Drupal itself.
Namespace
Drupal\CoreCode
public function handle(Request $request, $type = self::MASTER_REQUEST, $catch = TRUE) {
// Ensure sane PHP environment variables.
static::bootEnvironment();
try {
$this
->initializeSettings($request);
// Redirect the user to the installation script if Drupal has not been
// installed yet (i.e., if no $databases array has been defined in the
// settings.php file) and we are not already installing.
if (!Database::getConnectionInfo() && !InstallerKernel::installationAttempted() && PHP_SAPI !== 'cli') {
$response = new RedirectResponse($request
->getBasePath() . '/core/install.php', 302, [
'Cache-Control' => 'no-cache',
]);
}
else {
$this
->boot();
$response = $this
->getHttpKernel()
->handle($request, $type, $catch);
}
} catch (\Exception $e) {
if ($catch === FALSE) {
throw $e;
}
$response = $this
->handleException($e, $request, $type);
}
// Adapt response headers to the current request.
$response
->prepare($request);
return $response;
}