Hallo,

Na dagen van proberen rommelen en testen kom ik er maar niet uit.
Ik heb een VPS met centOS php 5.6.14 waarop de laatste versie van Joomla draait.
Zodra ik joomla heb ingericht werkt alles perfect.
Na 1 dag probeer ik in te loggen maar dan kom ik onmogelijk meer op de frontend, backend nog wel.
Ik heb binnen joomla fouten weergeven aangezet en nu krijg ik de volgende fouten:

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/vhosts/zoolie.nl/httpdocs/index.php:7) in /var/www/vhosts/zoolie.nl/httpdocs/libraries/joomla/session/session.php on line 665

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/vhosts/zoolie.nl/httpdocs/index.php:7) in /var/www/vhosts/zoolie.nl/httpdocs/libraries/joomla/session/session.php on line 665

Ik heb deze problemen ook al voorgelegt bij verschillende Joomla forums maar daar wisten ze niet wat ze er aan moesten doen.

Kunnen jullie mij misschien verder helpen.
Ik word er moedeloos van.

Alvast bedankt.

Met vriendelijke groet,

Rein
Er mag geen enkele output naar de browser gaan voor sessionstart.
Blijkbaar op regel 7 in index,php is dat toch gebeurd.

Toevoeging op 17/11/2015 10:43:15:

Er is nog een probleem op die site:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 41672333 bytes) in /var/www/vhosts/zoolie.nl/httpdocs/plugins/system/debug/debug.php on line 1141
In regel 7 staat niets!
Zie voorbeeld.

<?php
/**
* @package Joomla.Site
*
* @copyright Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/

/**
* Define the application's minimum supported PHP version as a constant so it can be referenced within the application.
*/
define('JOOMLA_MINIMUM_PHP', '5.3.10');

if (version_compare(PHP_VERSION, JOOMLA_MINIMUM_PHP, '<'))
{
die('Your host needs to use PHP ' . JOOMLA_MINIMUM_PHP . ' or higher to run this version of Joomla!');
}




En hoe los ik probleem memory size op?

Even een korte tussentijdse samenvatting:

Tijdens de opbouw van een Joomla-pagina treedt een fout op, dit heeft tot gevolg dat er tekst (mogelijk een foutmelding of iets anders) naar je scherm wordt gestuurd. Dit heeft tot gevolg dat er "output" wordt geproduceerd terwijl dat nog eigenlijk niet de bedoeling was (de pagina was nog in opbouw).

De foutmeldingen die je vervolgens krijgt (headers already sent) zijn een gevolg van de oorspronkelijke fout, maar niet de oorzaak. Als je deze achterliggende fout oplost verdwijnen bovenstaande fouten (headers already sent) naar alle waarschijnlijkheid ook.

Je moet dus niet zoeken naar "headers already sent" fouten want dat zijn reacties op het achterliggende probleem.

Ik zie nou nog strict standards meldingen van de jsecurelite plugin.

Trouwens, heb je geen testomgeving, of is deze site nog in ontwikkeling? Het is nogal onhandig om dit soort problemen op een productie-omgeving op te lossen.
Hallo Thomas,

Dit is een testomgeving aangezien de site normaal uit staat totdat hij af is.
Maar om jullie mee te laten kijken heb ik de frontpage aangezet.

Als ik de plugin jsecurelite uitzet ben ik die melding wel kwijt maar het probleem van inloggen blijft.
Ook het registreren werkt niet meer.
Vreemde is dat als ik de een backup van de site terug zet hij dan weer een dag werkt maar daarna dan ook weer niet.
Ik heb het vermoeden dat het aan een instelling binnen php of apache ligt.
Als ik een exacte kopie draai mijn bv. mijndomein.nl dan blijft hij wel werken.
Ik heb niets aangepast op mijn VPS mbt php of apache.
Mja dat wordt dan debuggen denk ik, is dat jsecurelite een plugin van Joomla zelf? Of iets van een externe partij? En hoe zit het met de rest van je site, zit hier een hoop maatwerk in (templates, modules etc.) of is dit allemaal standaard Joomla spul? Ik denk dat je op een heleboel plaatsen kunt gaan zoeken :/.

Of je mikt je "strict standards" foutmelding in Google, in combinatie met andere sleutelwoorden zoals Joomla en/of je PHP versie - misschien is het een bekend/bestaand issue, en moet je een of andere instelling wijzigen of Joomla mogelijk upgraden.

Ik denk eerlijk gezegd dat deze laatste strategie het beste werkt: gooi de foutmeldingen waar je direct tegenaan loopt (maar niet die headers already sent, dus) bij "normale operatie/configuratie" van je site in Google en kijk wat je tegenkomt. Tenzij je site knettervol maatwerk zit, mogelijk is er dan iets slecht/niet volgens de standaarden van de PHP-versie geprogrammeerd.

Mogelijk zijn er specifieke compatibiliteitsproblemen bekend tussen CentOS en Joomla? Heb je de requirements van Joomla vergeleken met de software waar deze Joomla-site onder opereert? Heb je verlijkbare projecten gedraaid waarbij deze problemen niet optraden? Of is dit de eerste keer dat je deze opzet gebruikt? Ik kan nog een heleboel vragen verzinnen :).
Zelfs als ik een kale Joomla versie installeer dan krijg ik dit probleem.
De Joomla community kan mij niet verder helpen, dit probleem komt nergens voor.
Ik werk al 15 jaar met Joomla maar dit heb ik dan ook nog nooit meegemaakt.
Via Google ben ik ook al dagen aan het zoeken maar zonder resultaat.
Wel kom ik bij php forums uit in het buitenland waar de foutmelding wel voorkomen.
Ik heb al deze solutions al uitgeprobeerd maar dit mocht niet baten.
Mijn laatste strohalm was dit forum.....
Dikke kans dat, wanneer je het geheugenprobleem hebt opgelost, ook het header probleem opgelost is.

De foutmelding betreffende het geheugen zorgt voor het voortijdig versturen van de headers.

Het geheugen probleem zit hem in je server. Er is onvoldoende geheugenruimte beschikbaar om alle benodigde gegevens te laden.
Met een beetje geluk kun je dit oplossen in je php.ini
Opgelost!!!
Deze code was de boosdoener.
Ongeloofelijk, dit zit al jaren in mijn website geintegreerd.
Waarschijnlijk is er bij een recente update van joomla wat aangepast wat BBclone niet kan verdragen.

<?php
define("_BBC_PAGE_NAME", "Zoolie");
define("_BBCLONE_DIR", "bbclone/");
define("COUNTER", _BBCLONE_DIR."mark_page.php");
if (is_readable(COUNTER)) include_once(COUNTER);
?>

Reageren