Пользовательский HTTP-сервер. Предоставьте государственный механизм на моем веб-сайте [дубликат]

Лучшее для повторного использования существующего кода, возьмите класс Maven ComparableVersion

:

  • Apache License, Version 2.0,
  • ,
  • используется (копируется) в нескольких проектах, таких как spring-security-core, jboss и т. д.
  • multiple features
  • ] это уже java.lang.Comparable
  • просто копировать-вставить, что один класс, никаких сторонних зависимостей

Не включать зависимость от maven-артефакта как который будет вытягивать различные транзитивные зависимости

35
задан Madara Uchiha 27 August 2014 в 11:17
поделиться

1 ответ

Давайте рассмотрим это:

Cookies и сеансы - оба способа сохранить состояние приложения между различными запросами, которые делает браузер. Благодаря им, например, вам не нужно входить в систему каждый раз, когда вы запрашиваете страницу на StackOverflow .

Cookies

Файлы cookie небольшие биты данных (максимум 4 КБ), которые хранят данные в парах ключ = значение:

name=value; name2=value2

Они устанавливаются либо JavaScript , либо через сервер используя HTTP-заголовок .

Cookies имеют установленное время истечения срока годности, например, с использованием HTTP-заголовков:

Set-Cookie: name2=value2; Expires=Wed, 19 Jun 2021 10:18:14 GMT

Что может заставить браузер установить cookie с именем name2 со значением value2, срок действия которого истекает примерно через 9 лет.

Cookies считаются крайне неустойчивыми, поскольку пользователь может легко манипулировать своим контентом. Вот почему вы всегда должны проверять данные cookie. Не предполагайте, что вы получаете из файла cookie, обязательно, что вы ожидаете.

Файлы cookie обычно используются для сохранения состояния входа, где имя пользователя и специальный хэш отправляются из браузера, а сервер проверяет их против базы данных для утверждения доступа.

Файлы cookie также часто используются при создании сеансов.

Сеансы

Сессии немного отличаются. Каждый пользователь получает идентификатор сеанса, который отправляется обратно на сервер для проверки либо с помощью cookie, либо с помощью переменной GET.

Сеансы обычно недолговечны, что делает их идеальными для сохранения временного состояния между приложениями. Сеансы также заканчиваются после закрытия пользователем браузера.

Сессии считаются более безопасными, чем файлы cookie, поскольку сами переменные хранятся на сервере. Вот как это работает:

  1. Сервер открывает сеанс (устанавливает cookie через HTTP-заголовок)
  2. Сервер устанавливает переменную сеанса.
  3. Страница изменений клиента
  4. Клиент отправляет все файлы cookie вместе с идентификатором сеанса с шага 1.
  5. Сервер считывает идентификатор сеанса из файла cookie.
  6. Сервер соответствует идентификатору сеанса из списка в
  7. Сервер находит совпадение, считывает переменные, которые теперь доступны в $_SESSION superglobal.

Если PHP не находит совпадения, он запустит новый сеанс и повторит шаги с 1-7.

Вы можете хранить конфиденциальную информацию в сеансе, потому что она хранится на сервере, но имейте в виду, что идентификатор сеанса по-прежнему может быть украден, если пользователь, допустим, войдет в систему через небезопасный WiFi. (Злоумышленник может обнюхать файлы cookie и установить его как собственный, он не увидит самих переменных, но сервер идентифицирует злоумышленника как пользователя).


Это суть Это. Вы можете узнать больше о руководстве по PHP по обоим предметам.

94
ответ дан HamZa 16 August 2018 в 04:47
поделиться
  • 1
    Большое вам спасибо, что я читаю сейчас. – Blanktext 21 June 2012 в 18:12
  • 2
    @Edmund: В большинстве случаев да. Тем не менее, вы можете установить его так, чтобы идентификаторы сеанса передавались через переменную GET (что означало бы, что session_id необходимо будет добавить к каждой странице (hello.php?sid=cbe709ac7bed98f7ecb89713) – Madara Uchiha♦ 22 July 2013 в 20:51
  • 3
    Хорошее объяснение. как только пользователь закрыл ее просмотр , мне просто интересно, почему она? – Mohammed Noureldin 7 December 2017 в 23:27
  • 4
    @SurajJain Это было бы, если бы не «помни меня». cookies, которые сохраняются дольше. – Madara Uchiha♦ 28 December 2017 в 09:48
  • 5
    @MohammedNoureldin ее показывает гендерное равенство, будучи справедливым, а не использует его все время. – CP3O 24 May 2018 в 07:50
Другие вопросы по тегам:

Похожие вопросы: