2015-08-09 2 views
0

У меня возникла проблема при публикации моего сайта. У меня есть система авторизации, использующая сеанс с помощью codeigniter. Когда он запускается на локальном хосте, он идеально подходит. Но когда я опубликовать на сервере (хостинг GoDaddy), это показывать это сообщение Серьезность: ПредупреждениеОшибка при использовании сеанса codeigniter

Сообщение: session_start(): Не удается отправить куки сессии - заголовки уже посылаемые (выход начался в /дома/cristiandelacruz/public_html/crmappsdc/приложение/Config/config.php: 1)

Имя файла: контроллеры/login.php

ответ

0

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

Вы можете сделать следующие вещи:

1) Проверьте, какой код HTML печати. И удалите его. например. Операторы пространств, эха или печати.

2) если это не сработает, добавьте ob_start(); в начале файла. Он хранит выходные данные в буфере, и происходит перенаправление.

0

Проверьте, нет ли свободного места перед тегом открытия php в указанном файле сообщения. Повторите попытку сохранения этого файла без спецификации (скопируйте содержимое в новый файл и дважды проверьте, что перед запуском файла нет пробела или символов, и сохраните его в кодировке UTF-8 без спецификации). Может быть, помогает.

0

Это происходит потому, что ваша локальная среда не содержит полного сообщения об ошибках, в то время как ваш хостинг обеспечивает. Проблема, скорее всего, всегда там. Причина этой проблемы заключается в том, что вы вызываете класс Codeigniter $this->session-> ..., однако где-то в загрузке вашего приложения PHP уже сталкивался с этим: session_start(). Чтобы исправить это, вам нужно отладить свою программу и узнать, где инициализируется сеанс, так как он настроен в настоящее время, он инициализируется дважды.

0

Причина:

вызвана эта ошибка, если ваши скрипты печати в браузере до отправки заголовков. Общим примером является печать тегов html перед началом сеанса или настройка файла cookie. Ошибка сообщает строчку, которая должна быть изменена (в этом случае она находится на /config.php).

Разрешение:

Для устранения этой ошибки удалите строки из кода PHP, которые при печати в браузер до отправки заголовков.

Другой распространенной причиной этой ошибки является пробел либо в начале, либо в конце файла. Исправление заключается в удалении этого пробела из файла. Внимательно прочитайте сообщение об ошибке. Он говорит, что выход начат с ... а затем имя файла и номер строки. Это файл (и строка), который нужно отредактировать. Игнорируйте второе имя файла - это только файл, содержащий файл с пробелом.Первый файл, который вы должны изменить, а не второй один

Источник из WHAT DO I DO WHEN I RECEIVE A PHP HEADER ERROR MESSAGE? GoDaddy Forum

Codeigniter Seesion class

0

Я попытался выше всех решений. наконец, я изменил output_buffering в php.ini (GoDaddy Server)

output_buffering = on 

В PHP 5.4 версия по умолчанию output_buffering не имеет значения Я обновил PHP версии 5.4 до 5.6 и в 5.6 версии по умолчанию имеет значение 4096 Теперь он работает нормально

Смежные вопросы