Я вызываю session_start (), скрипт зависает, и ничего не происходит

Я запускаю php5, однако, как только я вызываю session_start (), скрипт зависает, и ничего не происходит. Кто-нибудь еще испытывает эту проблему, или я делаю что-то неправильно?

Я использую session_start () для index.php, и по какой-то причине иногда он терпит неудачу. Никаких предупреждений, ошибок, уведомлений, даже после добавления error_reporting (E_ALL) и ini_set ('display_errors', TRUE) до session_start () я ничего не вижу, это просто умирает.

Для этого есть много причин, вот несколько из них:

A. Файл сеанса можно открыть исключительно. Когда блокировка файла не выпущена должным образом по какой-либо причине, это приводит к тому, что session_start () бесконечно зависает при любых будущих сценариях сценария. Обход проблемы: используйте session_set_save_handler () и убедитесь, что функция write использует fopen ($ file, 'w') вместо fopen ($ file, 'x').

B. Никогда не используйте следующее в файле php.ini (файл entropie для «/ dev / random»), это приведет к зависанию session_start ():

<?php ini_set("session.entropy_file", "/dev/random"); ini_set("session.entropy_length", "512"); ?> 

C. session_start () требует директорию для записи.

Вы можете запустить Apache plus PHP в обычной учетной записи пользователя. Конечно, Apache, конечно, должен слушать другой порт, чем 80 (например, 8080).

Обязательно выполните следующие действия: – создайте временный каталог PREFIX / tmp – поместите php.ini в PREFIX / lib – отредактируйте php.ini и установите session.save_path в только что созданную директорию

В противном случае ваши скрипты будут «зависать» на session_start ().