Дмитрий Сергеевич (axshavan) wrote,
Дмитрий Сергеевич
axshavan

  • Location:
  • Mood:
  • Music:

Две проблемы

Некоторое время назад по работе и дома я столкнулся с парой довольно странных вещей, с точки зрения примитивной логики виндоёбов необъяснимых и долженствующих вызывать радостные крики "линукс говно народная подделка под операционную систему, сплошь всё слизанное, сноси нафиг и ставь винду".

Странная и совершенно необъяснимая ошибка "cups-insecure-filter".
К счастью, на форумах не все посылают читать мануалы, а некоторые рассказывают, что решается это так:
# cd /usr/lib/
# chown -R root:root cups/
# cd /usr/lib64/
# chown -R root:root cups/

И вот ещё одна странная вещь.
Как-то раз Андрюша обнаружил кое-что из написанного мною кода РосЯмы на govnokod.ru, а именно вот такую конструкцию, которая затыкала все буферы вывода, которые открывал Битрикс для реализации вложенных функций:
ob_end_clean();
ob_end_clean();
ob_end_clean();
ob_end_clean();

Среди насмешек над автором этого кода и над Битриксом я встретил один дельный совет, делать так:
while(ob_get_level()) ob_end_clean();

По-моему, очень элегантное и правильное решение, спасибо человеку, который это предложил. Я исправил код РосЯмы и с тех пор делал именно так. До одного дня, когда заказчик одного Большого Сложного Государственного Проекта Два Ноль пожаловался на то, что что-то сайт подвисает в некоторых местах. "Некоторые места" - это экспорт CSV/XML, в которых я применял те самые конструкции по убиванию буфера Битрикса, чтоб вывести свои хедеры и свой контент. Сначала я грешил на функцию header_remove(), потому что у заказчика на его Большом Государственном Хостинге стоит PHP не самой свежей версии, но потом выяснил, что на самом деле while(ob_get_level()) организовывает вечный цикл. То ли это связано с настройками хостинга (Ubuntu Server, вроде бы прямо из коробки), то ли с тем, что Битрикс переопределяет эти функции на какие-то свои, которые работают не так, как от них ожидается, и это проявилось это только тут.

Но с тех пор я снова пишу пять-шесть раз подряд ob_end_clean().

Оригинал записи http://blog.axshavan.ru/2012/05/two-problems.html
Tags: *nix, web, работа
Subscribe

  • Picture & push

    У нас на работе – ну, я, наверное, уже рассказывал — есть топ-менеджер с не очень чёткой дикцией. Он там такой не один на самом деле. Но один просто…

  • Про отпуск

    Сейчас звонит приятель Мартин и говорит: - А пойдём-ка, Дмитрий, пешком погуляем в окрестностях Драбских Светничек в Чешском Рае? А я ему такой: -…

  • Про вчера

    Вчера был на работе в офисе. Ездить в офис в такое время, когда в республике снова бушует коронавирус, конечно, была не самая лучшая идея. Но раз шеф…

  • Post a new comment

    Error

    Comments allowed for friends only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments