Joomla (sistemski?) cookie
 
nene 28. maj 2013 10:07:33 Pridružen od:
10. jan 2008
190 objav
67 7 1
#1

Joomla mi naloži en cookie, servira se v 2.5, tudi v 1.5 sem pogledal. Ime je skupek 32 znakov (črk in številk), value prav tako, le da ima 26 znakov. Poteče ob koncu seje.



Torej nikakor ne morem razbrati za kakšen cookie gre, sem pa 99% prepričan, da ga postreže Joomla.



No, tole sem še našel na Joomla forumu, ampak mi ne pove prav veliko:




'd58ba4091c622661a0d46f03b412ac8b'

This is the joomla cookie store joomla user session id.




Rad bi dognal, kaj ta cookie je in zakaj se uporablja, da lahko obiskovalcem to razložim (nov cookie zakon). Ve kdo?


všeč(0) ni všeč(0) spam(0)
 
esedic 28. maj 2013 10:55:53 Pridružen od:
28. nov 2007
368 objav
184 13 4
#2

Verjetno gre za session cookie.

Če pogledaš v bazo v tabelo _session bi moral v stolpcu sessionid videti enako vrednost.



Gre za non-persistent cookie, ki se uniči, ko uporabnik zapre brskalnik.


všeč(1) ni všeč(0) spam(0)
 
Matjaž 28. maj 2013 14:06:18 Pridružen od:
21. sep 2007
3505 objav
2603 308 45
#3

Joomla ti servira ta piškotek če:

-imaš vklopljeno statistiko

-imaš modul za izbiro templata

-imaš nameščen kak modul ali komponento, ki počneta podobno (kak formular...)



Override za to je pri 1.5:

libraries/joomla/session/session.php

sessionstart(); spremeniš v nekaj takega

if (substr($
SERVER['SCRIPTNAME'] , 0 , 14) == "/administrator"){sessionstart();}

Zadeva deluje ok, če ne rabiš front prijave.



ali



/includes/joomla.php

// setcookie( $sessionCookieName, '-', false, '/' );



za 2.5:

[joomla-root]\index.php

// Instantiate the application.

$app = JFactory::getApplication('site',array('session'=>false));



[joomla-root]\libraries\joomla\session\session.php

protected function start()

{

//check back-end url

$url = $
SERVER["REQUEST_URI"];

$pieces = explode("/", $url);



if(in_array ('administrator',$pieces) == true ){



// Start session if not started

if ($this->state == 'restart') {

session
id($this->createId());

} else {

$session
name = sessionname();

if (!JRequest::getVar($session
name, false, 'COOKIE')) {

if (JRequest::getVar($sessionname)) {

session
id(JRequest::getVar($sessionname));

setcookie($session
name, '', time() - 3600);

}

}

}



sessioncachelimiter('none');

session_start();

}

return true;

}



\components\com_content\models\article.php

public function hit($pk = 0)

{

/* $hitcount = JRequest::getInt('hitcount', 1);


        if ($hitcount)
{
// Initialise variables.
$pk = (!empty($pk)) ? $pk : (int) $this->getState('article.id');
$db = $this->getDbo();

$db->setQuery(
'UPDATE #__content' .
' SET hits = hits + 1' .
' WHERE id = '.(int) $pk
);

if (!$db->query()) {
$this->setError($db->getErrorMsg());
return false;
}
} */

return true;

}


všeč(1) ni všeč(0) spam(0)
 
nene 28. maj 2013 15:43:23 Pridružen od:
10. jan 2008
190 objav
67 7 1
#4

Super, hvala obema. Glede na to, da uporabljam različne template-e in tudi formularje cookie-a ne bom overridal. Itak je 1st party, tako da ga lahko postrežem na začetku kot predjed. :) Sem pa dobil dovolj informacij, da bom spesnil nekaj lepega skupaj za obvestilo.


všeč(0) ni všeč(0) spam(0)
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se