Catalog cu articole

Această secțiune conține articole detaliate care explică unele dintre problemele comune întâmpinate de utilizatori. Articolele trimise de membrii comunității sunt verificate pentru acuratețe de către echipă. Dacă nu găsiți răspunsul la întrebarea dvs. aici, vă recomandăm să consultați și forumurile, precum și să utilizați funcția de căutare.

Corectarea setărilor cookie incorecte

Descriere: Acest articol conține informații utile pentru a corecta setările cookie.

Categorii: Erori şi probleme

Legătură către acest articol: Selectaţi tot

[ca=https://phpbb3.ro/community/kb/viewarticle?a=2&sid=8390b8e84d76f239ebbc251f06dc7615]Corectarea setărilor cookie incorecte[/ca]

Corectarea setărilor cookie incorecte
Aveți probleme cu deconectarea de pe forumul dumneavoastră?
Acest articol conține informații utile pentru a repara această problemă.

Ce sunt setările cookie?
Există mai multe metode pentru a schimba setările cookie. Dar desigur, înainte de a modifica setările pe care le aveți, trebuie să știți și ce sunt. Mai jos sunt prezentate câteva exemple pentru a vă oferi o idee despre ceea ce sunt setările cookie.

Exemple
Exemplul 1:
Aceasta este adresa URL: http://exemplu.ro/phpBB
Setările cookie ar trebui să fie:

Domeniu cookie: .exemplu.ro (atenție la punctul din față!)
Nume cookie: numecookie_exemplu (puteți pune ce doriți, fiți originali)
Calea cookie: / (atenție: aceasta este mereu slash, indiferent de url-ul forumului)
Securizare cookie: În cele mai multe cazuri, această securizare este Dezactivată. Dacă forumul folosește SSL, o puteți activa. Dacă nu folosește SSL, lăsați Dezactivată.

Exemplul 2:
Aceasta este adresa URL: http://forum.exemplu.ro/
Setările cookie ar trebui să fie:

Domeniu cookie: forum.exemplu.ro
Nume cookie: numecookie_exemplu (puteți pune ce doriți, fiți originali)
Calea cookie: / (atenție: aceasta este mereu slash, indiferent de url-ul forumului)
Securizare cookie: În cele mai multe cazuri, această securizare este Dezactivată. Dacă forumul folosește SSL, o puteți activa. Dacă nu folosește SSL, lăsați Dezactivată.

Exemplul 3:
Aceasta este adresa URL: http://exemplu.ro/
Setările cookie ar trebui să fie:

Domeniu cookie: exemplu.ro
Nume cookie: numecookie_exemplu (puteți pune ce doriți, fiți originali)
Calea cookie: / (atenție: aceasta este mereu slash, indiferent de url-ul forumului)
Securizare cookie: În cele mai multe cazuri, această securizare este Dezactivată. Dacă forumul folosește SSL, o puteți activa. Dacă nu folosește SSL, lăsați Dezactivată.

Așadar, sper că ați înțeles cum ar trebui să arate setările cookie. Dacă aveți nelămuriri, nu ezitați să ne scrieți în forumul Funcționare.

Metode de schimbare
Acum trebuie să editați setările. Acest lucru este posibil prin mai multe metode. Le vom explica aici.

1. Panoul Administratorului
phpBB are o metodă manuală de a schimba aceste setări direct din Panoul Administratorului.

O puteți găsi aici: Panoul Administrator ==> General ==> Configurare server ==> Setări cookie
Aici puteți modifica setările cookie. Foarte simplu.

2. Folosind un fișier special
Este, de asemenea, posibil ca, atunci când setările cookie să fie greșite, să nu mai puteți accesa forumul. De aceea, am creat o altă soluție: un fișier special care permite actualizarea setărilor cookie. Această soluție este oferită cu mulțumiri către ktuk.net, iar îmbunătățirile au fost realizate cu sprijinul lui Oyabun1.

În primul rând, copiați codul de mai jos și denumiți fișierul cookie.php, apoi încărcați-l în rădăcina forumului, acolo unde se află și fișierul config.php al forumului.

Cod: Selectaţi tot

<?php
/**
*
* @package Cookie and server settings tool
* @copyright (c) 2008 ktuk.net
* @copyright (c) 2011 phpbb.com
* @license GPL
*
*/

// Standard definitions/includes
$page_title = 'phpBB3 Cookies';
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

$script_name = (isset($request) && ($request instanceof \phpbb\request\request_interface)) ? $request->server('SCRIPT_NAME', '') : $_SERVER['SCRIPT_NAME'];

$cookie_data = array();
$server_data = array();
$sent = request_var('sent', '');

// Gather cookie settings from config array
$cookie_data[] = $config['cookie_domain'];
$cookie_data[] = $config['cookie_name'];
$cookie_data[] = $config['cookie_path'];
$cookie_data[] = $config['cookie_secure'];

$server_data[] = $config['force_server_vars'];
$server_data[] = $config['script_path'];
$server_data[] = $config['server_name'];
$server_data[] = $config['server_port'];
$server_data[] = $config['server_protocol'];

$cookie_checked = ($cookie_data[3]) ? "checked = \"checked\"" : '';
$force_checked = ($server_data[0]) ? "checked = \"checked\"" : '';


if (!$sent)
{
   print "<html>
   <head><title>$page_title</title></head>
   <body>
   
   <form action=\"" . $script_name . "\" method=\"post\"
   <fieldset>
   <table>
      <tr><h2>Cookie Settings</h2></tr>
      <tr><td>Cookie Domain:</td><td><input type=\"text\" name=\"cookie_domain\" value=\"" . $cookie_data[0] . "\"></td></tr>
      <tr><td>Cookie Name:</td><td><input type=\"text\" name=\"cookie_name\" value=\"" . $cookie_data[1] . "\"></td></tr>
      <tr><td>Cookie Path:</td><td><input type=\"text\" name=\"cookie_path\" value=\"" . $cookie_data[2] . "\"></td></tr>
      <tr><td>Cookie Secure:</td><td><input type=\"checkbox\" name=\"cookie_secure\" value=\"1\" $cookie_checked ></td></tr>
   </table>

   <table>
      <tr><h2>Server Settings</h2></tr>
      <tr><td>Force Server Vars:</td><td><input type=\"checkbox\" name=\"force_server_vars\" value=\"1\"  $force_checked ></td></tr>
      <tr><td>Script Path:</td><td><input type=\"text\" name=\"script_path\" value=\"" . $server_data[1] . "\"></td></tr>
      <tr><td>Server Name:</td><td><input type=\"text\" name=\"server_name\" value=\"" . $server_data[2] . "\"></td></tr>
      <tr><td>Server Port:</td><td><input type=\"text\" name=\"server_port\" value=\"" . $server_data[3] . "\"></td></tr>
      <tr><td>Server Protocol:</td><td><input type=\"text\" name=\"server_protocol\" value=\"" . $server_data[4] . "\"></td></tr>
      <tr><td>Submit:</td><td><input type=\"submit\" name=\"sent\" value=\"submit\"></td></tr>
   </table>
   </fieldset>
   </body>
   <html>
   ";
}

if ($sent)
{
   $cookie_domain      = request_var('cookie_domain', '');
   $cookie_name      = request_var('cookie_name', '');
   $cookie_path      = request_var('cookie_path', '');
   $cookie_secure      = request_var('cookie_secure', 0);
   $force_server_vars   = request_var('force_server_vars', 0);
   $script_path      = request_var('script_path', '');
   $server_name      = request_var('server_name', '');
   $server_port      = request_var('server_port', 80);
   $server_protocol   = request_var('server_protocol', 'http://');

   $sql_ary = array(
       'cookie_domain'      => $cookie_domain,
       'cookie_name'      => $cookie_name,
       'cookie_path'      => $cookie_path,
       'cookie_secure'      => $cookie_secure,
       'force_server_vars'   => $force_server_vars,
       'script_path'      => $script_path,
       'server_name'      => $server_name,
       'server_port'      => $server_port,
       'server_protocol'   => $server_protocol
   );

   foreach ($sql_ary as $config_name => $config_value)
   {
      set_config($config_name, $config_value);
   }

   print "Settings are updated!";
   print "<meta http-equiv=\"refresh\" content=\"4;./cookie.php\">";
}
Accesați scriptul în browserul dvs. la adresa URL corespunzătoare, de exemplu, http://www.exemplu.ro/forum/cookie.php. Scriptul va încărca un formular care afișează detaliile actuale ale serverului și ale cookie-urilor, pe care le puteți modifica cu setările corecte.

După ce ați editat corect setările, faceți clic pe butonul de trimitere. Când ați terminat, nu uitați să ștergeți scriptul de pe server. Altfel, oricine ar putea să vă modifice setările.

3. Din phpMyAdmin
Altă metodă este de a rula un query pentru a schimba setările cookie din phpMyAdmin (baza de date). Mergeți în phpMyAdmin, selectați baza de date a forumului, apoi rulați query-ul următor:

Cod: Selectaţi tot

UPDATE phpbb_config SET config_value = 'DOMENIUL COOKIE AICI' WHERE config_name = 'cookie_domain';
UPDATE phpbb_config SET config_value = 'NUMELE COOKIE AICI' WHERE config_name = 'cookie_name';
UPDATE phpbb_config SET config_value = 'CALEA AICI' WHERE config_name = 'cookie_path';
UPDATE phpbb_config SET config_value = '0' WHERE config_name = 'cookie_secure';
Vă rugăm să rețineți că trebuie să înlocuiți primele 3 cu setările dvs., iar pentru ultimul, editați doar zero-ul atunci când aveți activat Cookie Secure; altfel, nu modificați nimic. De asemenea, rețineți că dacă prefixul tabelului dvs. nu este phpbb_, trebuie să-l editați cu prefixul corect al tabelului din baza de date. La final să nu uitați să curățați cache-ul, eliminând toate fișierele din folderul cache, cu excepția index.htm și .htaccess. :)

Sper că setările cookie-urilor sunt corecte acum și că puteți folosi opțiunea „Autentificare automată la fiecare vizită”!