В общем, настрадались сами, замучали аккаунт на Timeweb-е и соседей, пришло время уезжать на сервер. Взяли hetzner. Опыта - практически ноль. С горем пополам переехали, вроде всё заработало.
Но вот пишет клиент - "при загрузке фоток к новостям выдаёт ошибку error" Тестим сами - всё ок. Пишет снова - мол, ошибка никуда не делась. [spoiler] Предполагаем, что ошибка при масштабировании, т.к. для теста выбирали маленькие фотки. Пробуем загрузить огромную обоину - Internal Server Error 500
Отключаем обрезание в настройках ИБ - без результатов. Отключаем создание картинки анонса - без результатов.
Пробуем загрузить другую картинку поменьше - всё в порядке. Смотрим в настройках на максимальные размеры загружаемого файла - 16мб, при этом большая картинка была не более мегабайта.
Начинаем отладку ) Создаем картинку 300х300 и весом в 50кб, загружаем - всё ок. Увеличиваем картинку на 150% и загружаем - ок. На третий раз ловим Internal Server Error 500. Дело наверняка не в ширине и высоте, но для полной уверенности загружаем белую картинку 2000х2000 весом менее 50кб - всё ок.
Случилось такая проблема, после обновления пхп до 5.2.17 перестали закачиваться файлы больше 150кб, и реально не пойму в чем дело, я не новичок в фрибсд и т.д но решения не могу найти, может кто сталкивался. ... нашел, настройка fcgi
MaxRequestLen 100485760
Немного тыканий и находим нужный файл по адресу /etc/apache2/mods-available/fcgid.conf (у нас Debian) Там добавляем строчку MaxRequestLen 100485760 </суть>
Ошибка исправлена, салют, шампанское =)
Надеюсь ищущим в будущем этот пост поможет быстрее решить проблему.
Рано радовались. Ошибки продолжают сыпаться, очевидно, что настроен сервер не лучшим образом - только вот теперь определить причину ошибок не получается.
Кстати, файл error.log разросся за пару дней до 3гб. К счастью, оказалось что туда сваливалась отладочная инфа eaccelerator-а - в eaccelerator.ini достаточно было дописать
Но теперь в error.log стали появляться следующие строки (нечасто)
eAccelerator: shmmax should be at least 2MBPHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0
Это и есть сообщения на вываливающиеся ошибки Internal Server Error?
Минимальный набор всей фигни ставили не сами, ставил вроде как неплохой админ, найденный по вроде как неплохим рекомендациям)
Нагуглил примерно ту же инфу. В голове каша уже, но попробую резюмировать:
при установке eaccelerator.shm_max="0" еа будет потреблять столько памяти, сколько по дефолту. а по дефолту - это столько, сколько записано в /etc/sysctl.conf ?
/proc/sys/kernel/shmmax а тут сколько? есть вариант, что сисктл поправили, но машину не ребутили. ещё вариант - попробуйте подключить не как расширение зенда, а обычное:
extension=eaccelerator.so
ну и возможно всё-таки собран не под ту версию пхп. сделайте php -v в консоли, посмотрите вывод
Что интересно, в еррор.лог за последние 3 часа свалилось следующее:
eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 536870912 bytes. Lower the amount of memory request or increase the$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 268435456 bytes. Lower the amount of memory request or increase the$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 134217728 bytes. Lower the amount of memory request or increase the$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 67108864 bytes. Lower the amount of memory request or increase the $ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 33554432 bytes. Lower the amount of memory request or increase the $ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 [Thu May 19 21:36:56 2011] [warn] mod_fcgid: cleanup zombie process 3323 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 16777216 bytes. Lower the amount of memory request or increase the $ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 8388608 bytes. Lower the amount of memory request or increase the l$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 4194304 bytes. Lower the amount of memory request or increase the l$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: Could not allocate 1073741824 bytes, the maximum size the kernel allows is 2097152 bytes. Lower the amount of memory request or increase the l$ PHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0 PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0 eAccelerator: shmmax should be at least 2MBPHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0............................... eAccelerator: shmmax should be at least 2MBPHP Warning: [eAccelerator] Can not create shared memory area in Unknown on line 0
..the maximum size the kernel allows is XXXX bytes.. и с каждым разом XXXX пополамился, а потом начались "...shmmax should be at least 2MBPHP.."
Да собран вроде под эту версию, не матерится =) а сколько памяти на серваке вообще? и насколько обосновано такое некислое выделение памяти по ea? попробуйте сделать, как Рыжонин Николай советует. А куда память утекает - непонятно. А как вообще сервер сконфигурирован? Что за связка? Как вариант - вернуть админа, пусть доведёт сервер до стабильного состояния. Ну или всё-таки откажитесь от еа в пользу того-же apc (он есть в репах) и попробуйте поработать с ним.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».