Session ID в строке адреса браузера мешает, когда необходимо дать ссылку на определённую тему форума, приходится вручную обрезать URL, удаляя из него запись вида &sid=xxxx, но неопытные пользователи могут этого не сделать, в результате чего опубликовать на другом ресурсе свой SID, что может быть чревато угоном аккаунта.
Для того чтобы cookies корректно работали, необходимо чтобы некоторые директивы файла php.ini были настроены следующим образом:
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0
После чего необходимо внести следующие изменения в php-файл inсludes/funсtions.php скрипта phpBB:
После кода
// Assign sid if session id is not specified
if ($session_id === false)
{
$session_id = $_SID;
}
необходиомо добавить:
global $user;
if ($user->data[‘user_id’] == ANONYMOUS)
{
$session_id = false;
}
После чего &sid=xxx исчезает из строки адреса браузера, что позволяет дать нормальную ссылку на определённую тему.