Модераторы: ZeeLax, powerfox
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Настройка Apache 
V
    Опции темы
WolfAlone
Дата 7.12.2011, 23:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: нет
Всего: 5



Доброй ночи! Сложилась примерно такая ситуация. Обратился человек, с очень странным вопросом: "почему вместо сайта белый лист"... Посмотрели вместе, действительно, белый экран. В браузер не выдаётся вообще ничего, при этом Google Chrome говорит, что на сервере произошла ошибка 500. Взяли его исходники, загрузили на другой хостинг - всё работает. Загрузили ещё на 4 хоста - всё работает. Стали выяснять, почему не работает у него...

Оказалось, что закачать исходники он пытается на VPS. При этом, разница между "закачкой в другое место" и закачкой на VPS заключалась в том, что файлы передавались по протоколу SFTP, а не просто FTP.

1. Настроил логи апача - в логах пусто. Ошибок нет.
2. Включил отображение ошибок в PHP, везде, где это только было возможно - ошибок нет.
3. Я подумал, что не работает Apache... Загрузил туда файл:
Код

<?php phpinfo(); ?>

всё работает!

4. Выяснил, что из себя представляет его исходник... Оказалось, исходник - это некий проект на CodeIgniter... Взяли "чистую" версию CodeIgniter, закачали на его сервер - всё прекрасно работает.
5. Загрузили его код ещё раз на другой сервер (через FTP) - всё работает отлично.
6. Загружаем к нему на сервер, через SFTP, его код ещё раз - эффект: "белый экран". При этом, загрузка оригинального кода фреймворка всё через тот же SFTP - приносит положительный результат (FTP/SFTP-клиент: FileZilla)

В какой-то момент, я вспомнил, что FTP-сервер, при загрузке файлов, принимает файлы в двух режимах: "бинарный" и "текстовый". При этом, текстовые файлы, проходят некоторую перекодировку (подозреваю, что перекодируются они в какую-то однобайтовую кодировку).

Открываю файлы CodeIgniter, смотрю оригинальную кодировку, редактор показывает: "ANSI".

Открываю его проект, смотрю кодировку правленых файлов: "UTF-8".

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

На такую мысль меня навёл личный опыт (однажды, я загрузил файл .htaccess, [который был написан в кодировке UTF-8] в бинарном режиме и Apache после этого "сломался").

Установить FTP-сервер, по каким-то не ведомым мне причинам - не представляется возможным. "Нужно, что бы всё работало как есть".

Вопрос: подскажите пожалуйста, есть ли какой-нибудь выход из сложившейся ситуации? Возможно, есть какой-то готовый скрипт, который можно запустить (зайдя на сервер по SSH), который бы просканировал указанную директорию и привёл бы все файлы PHP к правильной кодировке? Или дело вообще не в этом?


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
bobik02
Дата 8.12.2011, 00:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 451
Регистрация: 26.11.2007

Репутация: нет
Всего: 14



По поводу перекодировки iconv .




--------------------
Have a nice day
PM   Вверх
1000000dollars
Дата 8.12.2011, 03:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 6.10.2007

Репутация: 1
Всего: 8



Цитата(WolfAlone @  7.12.2011,  23:25 Найти цитируемый пост)
При этом, текстовые файлы, проходят некоторую перекодировку (подозреваю, что перекодируются они в какую-то однобайтовую кодировку)
.
Это не так. В бинарном режиме файлы заливаются байт-в-байт, а в текстовом меняются только коды перевода строк.

Что касается кодировок, то если используется UTF-8, то имеет смысл проверить нет ли в начале BOM (если есть - убрать его).
PM MAIL   Вверх
WolfAlone
Дата 8.12.2011, 03:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: нет
Всего: 5



Цитата(1000000dollars @  8.12.2011,  03:06 Найти цитируемый пост)
проверить нет ли в начале BOM (если есть - убрать его). 

BOM в начале нет, проверил.

Если меняются только коды перевода строк, может ли это привести к тому, что вместо "хотя бы чего-нибудь" мы видим "чистый лист"? То есть, в браузер не выдаётся вообще ничего. При этом, ошибок ни сам PHP, ни Apache тоже не выдаёт (логи и отображение ошибок - включены).

Или... если поставить вопрос по другому: из за чего такое вообще может произойти?


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
1000000dollars
Дата 8.12.2011, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 6.10.2007

Репутация: 1
Всего: 8



В access log апача запросы видны?

Если нет - разбираемся почему запросы не доходят до сервера (резловится не правильно, файерволлы блокируют, нестандартный порт апача, nginx, ещё что-то..).
Если да - то:
1) проводим HTTP сессию через telnet и смотрим что отдаёт (и отдаёт ли вообще) сервер.
2) провеяем соответствие переводов строк на сервере
3) проверяем контрольные суммы файлов (с учётом переводов строк)

Результаты исследования - сюда, будем смотреть.
PM MAIL   Вверх
WolfAlone
Дата 8.12.2011, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


В экстазе
***


Профиль
Группа: Завсегдатай
Сообщений: 1010
Регистрация: 16.9.2008
Где: Рай

Репутация: нет
Всего: 5



Благодарю всех за участие, проблема решилась! Судя по всему, дело было в исходном коде. Прогнал весь код через программу "удаления пробелов", исходник "похудел" в 1,5 раза и стал работать нормально... Потом прогнал ещё раз, для расстановки всех переводов строк, отступов и пр. - получился читабельный, рабочий код.

Один только вопрос мне теперь не даёт покоя. Что же за такой престранный символ, мог залететь в исходник, что "ложился" сервер?

P.S. На наличие "BOM" файлы проверял специально все, его точно нигде не было!


--------------------
И сказал Бог: "Тогда я построю свой мир с блэк-джеком и шлюхами!"

Ф топку Ubuntu, Debian наше фсё!

(с) Евгений Вольф
PM MAIL WWW ICQ Skype   Вверх
1000000dollars
Дата 8.12.2011, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 231
Регистрация: 6.10.2007

Репутация: 1
Всего: 8



Цитата(WolfAlone @  8.12.2011,  14:16 Найти цитируемый пост)
Что же за такой престранный символ

Вот чёрт его знает... Рад, что проблема решилась.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Oбщие вопросы"
nickless
Imple
pythonwin

В этом форуме предпочтительны вопросы на следующие темы:

  • Конкретные вопросы о конкретном ПО. В таких вопросах желательно привести точные данные о программе: версия программы, версия ОС, версия ядра, и проблему в форме: сделал Х, хотел получить Y, а получил Z.
  • Неконкретные вопросы о выборе ПО
  • Обзоры - как дополнение в ветку Обзоры


  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программное обеспечение под *NIX системы | Следующая тема »


 




[ Время генерации скрипта: 0.0702 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.