throw new \RuntimeException('Failed to start the session: already started by PHP.');
}
if (ini_get('session.use_cookies') && headers_sent($file, $line))
{
throw new \RuntimeException(
sprintf('Failed to start the session because headers have already been sent by "%s" at line %d.', $file, $line)
);
}
if (!session_start())
$this->setId($session_clean);
$cookie->set($session_name, '', time() - 3600);
}
}
parent::start();
// Try loading data from the session
if (isset($_SESSION['joomla']) && !empty($_SESSION['joomla']))
{
$this->data = unserialize(base64_decode($_SESSION['joomla']));
if ($this->isStarted())
{
return;
}
$this->store->start();
$this->setState(SessionState::ACTIVE);
// Initialise the session
$this->setCounter();
*/
public function has($name)
{
if (!$this->isActive())
{
$this->start();
}
return $this->store->has($name);
}
$name = $args[2] . '.' . $name;
}
}
if (parent::has($name))
{
// Parent is used because of b/c, can be changed in Joomla 5
return parent::get($name, $default);
}
__CLASS__
),
E_USER_DEPRECATED
);
$instance = self::getApplication()->getSession()->get('user');
if (\is_null($id))
{
if (!($instance instanceof User))
{
{
$renderer = $this->_doc->loadRenderer('module');
$buffer = '';
$app = Factory::getApplication();
$user = Factory::getUser();
$frontediting = ($app->isClient('site') && $app->get('frontediting', 1) && !$user->guest);
$menusEditing = ($app->get('frontediting', 1) == 2) && $user->authorise('core.edit', 'com_menus');
foreach (ModuleHelper::getModules($position) as $mod)
{
$cache->store($cbuffer, 'cbuffer_' . $type);
}
else
{
$this->setBuffer($renderer->render($name, $attribs, null), $type, $name, $title);
}
return parent::$_buffer[$type][$name][$title];
}
$with = [];
foreach ($this->_template_tags as $jdoc => $args)
{
$replace[] = $jdoc;
$with[] = $this->getBuffer($args['type'], $args['name'], $args['attribs']);
}
return str_replace($replace, $with, $this->_template);
}
}
if (\array_key_exists('csp_nonce', $params) && $params['csp_nonce'] !== null)
{
$this->cspNonce = $params['csp_nonce'];
}
$data = $this->_renderTemplate();
parent::render($caching, $params);
return $data;
}
$this->debug = $params['debug'] ?? false;
$this->error = $this->_error;
$params['file'] = 'error.php';
return parent::render($cache, $params);
}
/**
* Render the backtrace
*
ob_end_clean();
}
$this->getDocument()->setTitle(Text::_('Error') . ': ' . $error->getCode());
return $this->getDocument()->render(
false,
[
'template' => $template->template,
'directory' => JPATH_THEMES,
'debug' => JDEBUG,
// Reset the document object in the factory, this gives us a clean slate and lets everything render properly
Factory::$document = $renderer->getDocument();
Factory::getApplication()->loadDocument(Factory::$document);
$data = $renderer->render($error);
// If nothing was rendered, just use the message from the Exception
if (empty($data))
{
$data = $error->getMessage();
* @since 3.10.0
*/
public static function handleException(\Throwable $error)
{
static::logException($error);
static::render($error);
}
/**
* Render the error page based on an exception.
*
);
// Trigger the onError event.
$this->triggerEvent('onError', $event);
ExceptionHandler::handleException($event->getError());
}
// Trigger the onBeforeRespond event.
$this->getDispatcher()->dispatch('onBeforeRespond');
// Set the application as global app
\Joomla\CMS\Factory::$application = $app;
// Execute the application.
$app->execute();
* define() is used rather than "const" to not error for PHP 5.2 and lower
*/
define('_JEXEC', 1);
// Run the application - All executable code should be triggered through this file
require_once dirname(__FILE__) . '/includes/app.php';
throw new \RuntimeException('Failed to start the session: already started by PHP.');
}
if (ini_get('session.use_cookies') && headers_sent($file, $line))
{
throw new \RuntimeException(
sprintf('Failed to start the session because headers have already been sent by "%s" at line %d.', $file, $line)
);
}
if (!session_start())
$this->setId($session_clean);
$cookie->set($session_name, '', time() - 3600);
}
}
parent::start();
// Try loading data from the session
if (isset($_SESSION['joomla']) && !empty($_SESSION['joomla']))
{
$this->data = unserialize(base64_decode($_SESSION['joomla']));
if ($this->isStarted())
{
return;
}
$this->store->start();
$this->setState(SessionState::ACTIVE);
// Initialise the session
$this->setCounter();
*/
public function has($name)
{
if (!$this->isActive())
{
$this->start();
}
return $this->store->has($name);
}
$name = $args[2] . '.' . $name;
}
}
if (parent::has($name))
{
// Parent is used because of b/c, can be changed in Joomla 5
return parent::get($name, $default);
}
__CLASS__
),
E_USER_DEPRECATED
);
$instance = self::getApplication()->getSession()->get('user');
if (\is_null($id))
{
if (!($instance instanceof User))
{
*
* @since 3.2
*/
protected function initialiseApp($options = array())
{
$user = Factory::getUser();
// If the user is a guest we populate it with the guest user group.
if ($user->guest)
{
$guestUsergroup = ComponentHelper::getParams('com_users')->get('guest_usergroup', 1);
* @since 3.2
*/
protected function doExecute()
{
// Initialise the application
$this->initialiseApp();
// Mark afterInitialise in the profiler.
JDEBUG ? $this->profiler->mark('afterInitialise') : null;
// Route the application
$this->sanityCheckSystemVariables();
$this->setupLogging();
$this->createExtensionNamespaceMap();
// Perform application routines.
$this->doExecute();
// If we have an application document object, render it.
if ($this->document instanceof \Joomla\CMS\Document\Document)
{
// Render the application output.
// Set the application as global app
\Joomla\CMS\Factory::$application = $app;
// Execute the application.
$app->execute();
* define() is used rather than "const" to not error for PHP 5.2 and lower
*/
define('_JEXEC', 1);
// Run the application - All executable code should be triggered through this file
require_once dirname(__FILE__) . '/includes/app.php';
[2/2]
RuntimeException
|
---|
RuntimeException: Failed to start the session because headers have already been sent by "/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/input/src/Input.php" at line 42. at /hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Storage/NativeStorage.php:473 at Joomla\Session\Storage\NativeStorage->start() (/hp/al/ac/ro/www/J5x2025/libraries/src/Session/Storage/JoomlaStorage.php:305) at Joomla\CMS\Session\Storage\JoomlaStorage->start() (/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Session.php:406) at Joomla\Session\Session->start() (/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Session.php:333) at Joomla\Session\Session->has('user') (/hp/al/ac/ro/www/J5x2025/libraries/src/Session/Session.php:198) at Joomla\CMS\Session\Session->get('user') (/hp/al/ac/ro/www/J5x2025/libraries/src/Factory.php:338) at Joomla\CMS\Factory::getUser() (/hp/al/ac/ro/www/J5x2025/libraries/src/Document/Renderer/Html/ModulesRenderer.php:42) at Joomla\CMS\Document\Renderer\Html\ModulesRenderer->render('debug', array('name' => 'debug', 'style' => 'none'), null) (/hp/al/ac/ro/www/J5x2025/libraries/src/Document/HtmlDocument.php:597) at Joomla\CMS\Document\HtmlDocument->getBuffer('modules', 'debug', array('name' => 'debug', 'style' => 'none')) (/hp/al/ac/ro/www/J5x2025/libraries/src/Document/HtmlDocument.php:903) at Joomla\CMS\Document\HtmlDocument->_renderTemplate() (/hp/al/ac/ro/www/J5x2025/libraries/src/Document/HtmlDocument.php:668) at Joomla\CMS\Document\HtmlDocument->render(false, array('template' => 'j4starter', 'directory' => '/hp/al/ac/ro/www/J5x2025/templates', 'debug' => '', 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php')) (/hp/al/ac/ro/www/J5x2025/libraries/src/Document/ErrorDocument.php:140) at Joomla\CMS\Document\ErrorDocument->render(false, array('template' => 'j4starter', 'directory' => '/hp/al/ac/ro/www/J5x2025/templates', 'debug' => '', 'csp_nonce' => null, 'templateInherits' => '', 'params' => object(Registry), 'file' => 'error.php')) (/hp/al/ac/ro/www/J5x2025/libraries/src/Error/Renderer/HtmlRenderer.php:69) at Joomla\CMS\Error\Renderer\HtmlRenderer->render(object(RuntimeException)) (/hp/al/ac/ro/www/J5x2025/libraries/src/Exception/ExceptionHandler.php:131) at Joomla\CMS\Exception\ExceptionHandler::render(object(RuntimeException)) (/hp/al/ac/ro/www/J5x2025/libraries/src/Exception/ExceptionHandler.php:74) at Joomla\CMS\Exception\ExceptionHandler::handleException(object(RuntimeException)) (/hp/al/ac/ro/www/J5x2025/libraries/src/Application/CMSApplication.php:311) at Joomla\CMS\Application\CMSApplication->execute() (/hp/al/ac/ro/www/J5x2025/includes/app.php:63) at require_once('/hp/al/ac/ro/www/J5x2025/includes/app.php') (/hp/al/ac/ro/www/J5x2025/index.php:32) |
[1/2]
RuntimeException
|
---|
RuntimeException: Failed to start the session because headers have already been sent by "/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/input/src/Input.php" at line 42. at /hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Storage/NativeStorage.php:473 at Joomla\Session\Storage\NativeStorage->start() (/hp/al/ac/ro/www/J5x2025/libraries/src/Session/Storage/JoomlaStorage.php:305) at Joomla\CMS\Session\Storage\JoomlaStorage->start() (/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Session.php:406) at Joomla\Session\Session->start() (/hp/al/ac/ro/www/J5x2025/libraries/vendor/joomla/session/src/Session.php:333) at Joomla\Session\Session->has('user') (/hp/al/ac/ro/www/J5x2025/libraries/src/Session/Session.php:198) at Joomla\CMS\Session\Session->get('user') (/hp/al/ac/ro/www/J5x2025/libraries/src/Factory.php:338) at Joomla\CMS\Factory::getUser() (/hp/al/ac/ro/www/J5x2025/libraries/src/Application/SiteApplication.php:619) at Joomla\CMS\Application\SiteApplication->initialiseApp() (/hp/al/ac/ro/www/J5x2025/libraries/src/Application/SiteApplication.php:222) at Joomla\CMS\Application\SiteApplication->doExecute() (/hp/al/ac/ro/www/J5x2025/libraries/src/Application/CMSApplication.php:278) at Joomla\CMS\Application\CMSApplication->execute() (/hp/al/ac/ro/www/J5x2025/includes/app.php:63) at require_once('/hp/al/ac/ro/www/J5x2025/includes/app.php') (/hp/al/ac/ro/www/J5x2025/index.php:32) |