Как отключить cookie сеанса PHP?

Я пишу PHP-код, в котором я хочу сам передать 9X_php-session идентификатор сеанса с помощью POST. Я не 9X_php хочу, чтобы файл cookie сохранял сеанс, поскольку 9X_php он должен потеряться, когда пользователь 9X_php-cgi выйдет из цикла POST.

PHP автоматически устанавливает 9X_php-oop файл cookie, если он доступен. Я узнал, что 9X_php.ini это поведение можно изменить, установив 9X_sessions для session.use_cookies значение 0 в php.ini. К сожалению, у меня 9X_php нет доступа к этому файлу, и я также не 9X_session хотел бы нарушать поведение других скриптов, работающих 9X_php-mail на том же сервере.

Есть ли способ отключить 9X_php-fpm или аннулировать файл cookie сеанса внутри 9X_php-namespaces сценария PHP?

РЕДАКТИРОВАТЬ: Поскольку предлагаемые решения 9X_php.ini не работают для меня, я использовал $ _SESSION 9X_phtml = array() в тех позициях в коде, где я обнаружил, что 9X_php-namespaces сеанс должен быть признан недействительным.

10
0
5
Общее количество ответов: 5

Ответ #1

Ответ на вопрос: Как отключить cookie сеанса PHP?

Используйте ini_set():

ini_set('session.use_cookies', '0');

Или в вашем файле php.ini:

session.use_cookies = 0

9X_php-mail

35
0

Ответ #2

Ответ на вопрос: Как отключить cookie сеанса PHP?

ошибка, можно переопределить настройки вашего 9X_php-fpm хоста по умолчанию, создав свой собственный 9X_php-cli файл .htaccess, и вот отличный учебник, если 9X_php-errors вы еще не коснулись этого http://www.askapache.com/htaccess/apache-htaccess.html

или если вам лень 9X_php-date учиться просто создайте файл ".htaccess" (да, это 9X_php-mail имя файла) в каталоге своих сайтов и поместите 9X_php-fpm следующий код

SetEnv session.use_cookies='0';

8
0

Ответ #3

Ответ на вопрос: Как отключить cookie сеанса PHP?

Вы также можете поместить этот параметр 9X_session в .htaccess, чтобы он применялся ко всем 9X_php скриптам, в противном случае вам нужно убедиться, что 9X_php.ini код вызывается при каждом запросе.

Например.

php_value 9X_php-cgi session.use_cookies 0

2
0

Ответ #4

Ответ на вопрос: Как отключить cookie сеанса PHP?

Если вам просто нужно иметь возможность 9X_php запускать сеанс в определенный момент времени, используйте 9X_php-cgi session_destroy(). Если вы хотите полностью 9X_session завершить сеанс, вот фрагмент, скопированный 9X_php-errors / вставленный прямо из документации:

// Initialize the session.
// If you are using session_name("something"), don't forget it now!
session_start();

// Unset all of the session variables.
$_SESSION = array();

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (isset($_COOKIE[session_name()])) {
    setcookie(session_name(), '', time()-42000, '/');
}

// Finally, destroy the session.
session_destroy();

2
0

Ответ #5

Ответ на вопрос: Как отключить cookie сеанса PHP?

У меня возникли проблемы с документированным 9X_sessions подходом PHP к уничтожению сеанса с файлами 9X_session cookie.

// If it's desired to kill the session, also delete the session cookie.
// Note: This will destroy the session, and not just the session data!
if (ini_get("session.use_cookies")) {
    $params = session_get_cookie_params();
    setcookie(session_name(), '', time() - 42000,
        $params["path"], $params["domain"],
        $params["secure"], $params["httponly"]
    );
}

В результате я увидел, что файл cookie 9X_php-oop установлен дважды:

Set-Cookie: SESSION_NAME=deleted; expires=Sat, 08-Jan-2011 14:09:10 GMT; path=/; secure
Set-Cookie: SESSION_NAME=1_4f09a3871d483; path=/

Как описано в комментариях 9X_php.ini к PHP, установка значения cookie на значение, отличное 9X_php-cgi от пустого (''), избавляет от значения "удалено", но 9X_php-mail второй набор файлов cookie остается.

Чтобы 9X_php-date избавиться от этого, мне пришлось добавить 9X_session код, предложенный выше:

ini_set('session.use_cookies', '0');

Я не просматривал 9X_session источник обработки сеансов, но предполагаю, что 9X_phtml setcookie (...) обходит модуль сеансов, поэтому 9X_php-cgi сеансы не знают, что я его вызвал. Итак, он 9X_php-errors устанавливает файл cookie по умолчанию после 9X_phtml того, как я установил удаленный файл cookie.

Я 9X_php-namespaces тестировал на Mac: PHP 5.3.6 с Suhosin-Patch 9X_php-include (cli) (построено: 8 сентября 2011 г., 19:34:00)

2
0