CodeIgniter Project Giving 303 / Ошибка сжатия - PullRequest
7 голосов
/ 13 марта 2010

Пытаясь настроить проект на основе CodeIgniter для локальной разработки (стек LAMP), и как только все файлы конфигурации были обновлены (что означает, что у меня успешно возникли значимые ошибки начальной загрузки для CodeIgniter), я получаю эту ошибку в своих браузерах:

  • Chrome
    Ошибка 330 (net :: ERR_CONTENT_DECODING_FAILED): неизвестная ошибка.
  • Firefox
    Ошибка кодировки содержимого. Невозможно отобразить страницу, которую вы пытаетесь просмотреть, поскольку она использует недопустимую или неподдерживаемую форму сжатия.

Просто использование wget для извлечения файла работает нормально, без ошибок, и я получаю ожидаемый контент. Не уверен, что это что-то с CI и сервером, или просто что-то странное с проектом. Кто-нибудь видел это раньше?

Ответы [ 4 ]

10 голосов
/ 13 марта 2010

CodeIgniter, похоже, имеет свой собственный способ сжатия своего вывода (почему, я не знаю, но я не очень знаком с CI.)

Согласно этой записи на форуме такая ошибка может возникать, когда сообщения об ошибках PHP портят сжатый контент. Настройка error_reporting на E_ALL ^ E_NOTICE добилась цели.

Обновление: Кажется, также есть настройка CI:

$config['compress_output'] = FALSE;
5 голосов
/ 11 января 2013

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

Для моего проекта я активировал GZIP в моем файле конфигурации CI:

$config['compress_output'] = TRUE;

В конфигурационном файле хорошо сказано, что:

| Enables Gzip output compression for faster page loads.  When enabled,
| the output class will test whether your server supports Gzip.
| Even if it does, however, not all browsers support compression
| so enable only if you are reasonably sure your visitors can handle it.
|
| VERY IMPORTANT:  If you are getting a blank page when compression is enabled it
| means you are prematurely outputting something to your browser. It could
| even be a line of whitespace at the end of one of your scripts.  For
| compression to work, nothing can be sent before the output buffer is called
| by the output class.  Do not 'echo' any values with compression enabled.
|
*/

«Не отображать никакие значения при включенном сжатии». здесь очень важно.

Тем не менее, моя функция должна отображать кодированный в json массив для моего вызова Ajax.

Чтобы исправить это, я добавил функцию «выход» после моего «эха» в функцию.

    echo json_encode($arr_ajaxResults);
    exit();

Теперь, с этим вводом, я больше не сталкиваюсь с ошибкой «Content Encoding».

Надеюсь, это поможет парням, у которых такая же проблема.

0 голосов
/ 30 апреля 2013

Мое решение:

текстовые редакторы обычно используют ascii кодификации, я открываю файл с помощью notepad ++ и изменяю кодировку страницы на: utf-8 without BOM. И страница теперь работает хорошо.

0 голосов
/ 18 июня 2012

Для пользователей IIS было бы полезно проверить ошибки в журнале PHP Manager.

Для меня ошибкой было отказано в разрешении на запись в файл.Пришлось предоставить необходимые разрешения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...