Comments 35
Панель, которую вы используете, называется ISPmanager и только так, а не ISPManager или ISP Manager )
Честно говоря, хотелось бы видеть больше о работе данного скрипта, то есть не только номера строк, а еще и код в статье, а не просто «запустите», на боевом сервере я бы побоялся так делать.
Честно говоря, хотелось бы видеть больше о работе данного скрипта, то есть не только номера строк, а еще и код в статье, а не просто «запустите», на боевом сервере я бы побоялся так делать.
Панель, которую вы используете, называется ISPmanager и только так, а не ISPManager или ISP Manager )
спасибо, исправил!
Честно говоря, хотелось бы видеть больше о работе данного скрипта, то есть не только номера строк, а еще и код в статье
да, это действительно было-бы здорово, но, основной скрипт «isp_patch_V0.1.sh» неотделим от содержимого архива «patch_filesV0.1.zip» и для полного раскрытия их содержимого формат «статьи» не очень удобен на мой взгляд.
а не просто «запустите», на боевом сервере я бы побоялся так делать.
именно поэтому я и написал почти в самом начале статьи важные предупреждения. Данная разработка не предназначена для разворота на боевых серверах, уже находящихся в эксплуатации. Но я надеюсь, что содержимое скриптов, конфигов и эта статья существенно поможет кому-то в своей оптимизации ISPmanager под проекты на Битриксе. Например, можно развернуть специальный стенд с моим решением и хорошенько в нём поковыряться, опираясь на данную статью и содержимое приложенных файлов.
Я надеюсь, что у меня будет возможность в ближайшем будущем продолжить работу над проектом, допилить тот функционал, которого сейчас нет, оформить это всё дело в виде приложения для ISPmanager и, возможно, развернуть простенькую страничку с wiki, посещённую проекту. Пока что решил начать со статьи, узнать, насколько людям интересна такая разработка.
Если кому-то интересно пообщаться на данную тематику подробнее прямо сейчас, можно связаться со мной через личные сообщения — я буду только рад
1
memory_limit = 512M
Это просто край…
— Мой скрипт отжирает огромное количество памяти и хоумпага падает. Что делать?
— Накинь скрипту побольше памяти!
спасибо за ваше замечание. Я лишь руководствовался официальной рекомендацией 1С-Битрикс, которое звучит как:
В проектах, на которых я работаю, оперативной памяти в избытки и мы можем позволить себе
В том числе, ради дополнительного уровня отказоустойчивости. Но это вовсе не означает, что на проектах не проводится регулярный аудит кода и нет детального мониторинга, в том числе по потреблению оперативной памяти php скриптами
В своей статье я подчеркнул важность изменения некоторых параметров и конфигов «под себя», возможно, в вашем случае, действительно memory_limit стоит установить в меньшее значение.
Фактическое ограничение памяти: Не менее 256 М
В проектах, на которых я работаю, оперативной памяти в избытки и мы можем позволить себе
memory_limit = 512M
В том числе, ради дополнительного уровня отказоустойчивости. Но это вовсе не означает, что на проектах не проводится регулярный аудит кода и нет детального мониторинга, в том числе по потреблению оперативной памяти php скриптами
В своей статье я подчеркнул важность изменения некоторых параметров и конфигов «под себя», возможно, в вашем случае, действительно memory_limit стоит установить в меньшее значение.
Ужасное оформление типографии статьи, очень тяжело воспринимается визуально.
Простите, но зачем это все?
Почему нельзя взать инсталлер Битрикса как любой другой cms и развернуть на хосте в нужном месте будь то корень домена или любой другой каталог?
В моем понимании все эти «готовые виртуальные машины с %systemname%» хороши только в одном случае — для быстрого прототипирования и показа заказчику. Во всех остальных случаях нужно готовить хост согласно привычке/снадартам/лучщим практикам и ставить на него нудные системы. Или вообще использовать докер.
Почему нельзя взать инсталлер Битрикса как любой другой cms и развернуть на хосте в нужном месте будь то корень домена или любой другой каталог?
В моем понимании все эти «готовые виртуальные машины с %systemname%» хороши только в одном случае — для быстрого прототипирования и показа заказчику. Во всех остальных случаях нужно готовить хост согласно привычке/снадартам/лучщим практикам и ставить на него нудные системы. Или вообще использовать докер.
Большое спасибо за ваши вопросы, постараюсь на них ответить
ответ на ваш вопрос
под моим самым первым заголовком
А зачем?
именно это и происходит в статье, смотрите текст сразу после
Осталось только развернуть сайт на свежем домене
Это лишь одно из преимуществ готовых виртуальных машин. Смысл работы, проделанной мной, это использование преимуществ Битрикс-окружения, которое разрабатывается и поддерживается компанией 1С-Битрикс. А именно из преимуществ:
вместе с продуктом ISPmanager, который даёт вам удобный веб-интерфейс для управления проектами, FTP-аккаунтами и серверов в целом.
Для тех, кто не очень ознакомлен с вопросом, сразу вначале статьи я оставил ссылку «1С-Битрикс: Веб-окружение» — Linux
и ссылку на официальный сайт ISPmanager
Абсолютно с вами согласен. Эта статья преследует именно эти цели. Я рассказываю о том, как настроить свой хостинг под стандарты, данные разработчиками 1С-Битрикс, которые основываются на практике использования своих продуктов, но при этом не использовать полностью то окружение, которые они предоставляют.
Если ваш вопрос «зачем это статья», то надеюсь я ответил. Если ваш вопрос — зачем нужные готовые веб-окружения, то эта статья затрагивает данных вопрос лишь частично, поэтому вступать в дискуссию на эту тему в рамках комментариев я не буду.
P.S.
ответ на ваш вопрос
Простите, но зачем это все?
под моим самым первым заголовком
А зачем?
Почему нельзя взать инсталлер Битрикса как любой другой cms и развернуть на хосте в нужном месте будь то корень домена или любой другой каталог?
именно это и происходит в статье, смотрите текст сразу после
Осталось только развернуть сайт на свежем домене
В моем понимании все эти «готовые виртуальные машины с %systemname%» хороши только в одном случае — для быстрого прототипирования и показа заказчику.
Это лишь одно из преимуществ готовых виртуальных машин. Смысл работы, проделанной мной, это использование преимуществ Битрикс-окружения, которое разрабатывается и поддерживается компанией 1С-Битрикс. А именно из преимуществ:
- необходимые параметры и настройка nginx,apache,mysql и других составляющих веб-сервера для корректной работы всех фич битрикса
- установка всех необходимых дополнительных пакетов, необходимых для корректной работы всех фич битрикса
- обеспечение максимальной безопасности веб-проектов
вместе с продуктом ISPmanager, который даёт вам удобный веб-интерфейс для управления проектами, FTP-аккаунтами и серверов в целом.
Для тех, кто не очень ознакомлен с вопросом, сразу вначале статьи я оставил ссылку «1С-Битрикс: Веб-окружение» — Linux
и ссылку на официальный сайт ISPmanager
Во всех остальных случаях нужно готовить хост согласно привычке/снадартам/лучщим практикам и ставить на него нудные системы.
Абсолютно с вами согласен. Эта статья преследует именно эти цели. Я рассказываю о том, как настроить свой хостинг под стандарты, данные разработчиками 1С-Битрикс, которые основываются на практике использования своих продуктов, но при этом не использовать полностью то окружение, которые они предоставляют.
Если ваш вопрос «зачем это статья», то надеюсь я ответил. Если ваш вопрос — зачем нужные готовые веб-окружения, то эта статья затрагивает данных вопрос лишь частично, поэтому вступать в дискуссию на эту тему в рамках комментариев я не буду.
P.S.
Или вообще использовать докер.к сожалению, я не знаю, что такое «докер».
Очень надеялся что будет интеграция с ISPmanager. Жаль что это не описано. Всё, что делает ваш скрипт уже давно вручную настроено.
если вы имеете ввиду интеграцию в виде «Приложения», чтобы автоматически БД создавалась и всё прописовалась в конфиги сгенерированного дистрибутива, то это планируется довольно скоро в следующем обновлении
Или интересует что-то ещё?
Или интересует что-то ещё?
Добрый день. Спасибо за статью. Я пытаюсь перенести сайт на VPS с ISP manager 5 и ничего не выходит. Сначала поставил, но то 502 то 403 ошибки. Решил все удалить, сделать оптимизацию Вашими скриптами и теперь получаю ошибку на начальном этапе: «В режиме Apache MPM-ITK скрипт restore.php выдаёт ошибку, информация по ней в разделе «Важная информация»»
Как ее побороть? Заранее благодарен!
p.s. если убираю строки из конфигов httpd/nginx то этой ошибки нет.
Как ее побороть? Заранее благодарен!
p.s. если убираю строки из конфигов httpd/nginx то этой ошибки нет.
Закоментировал в bx/bx_apache.conf строку "#php_admin_value short_open_tag «On» и все пошло.
Битриксовые сайты всё-таки рекомендуют выставлять short_open_tag в значение On
А почему на начальном этапе ошибка я писал в статье =)
А почему на начальном этапе ошибка я писал в статье =)
Битриксовый скрипт restore.php в режиме Apache MPM-ITK падает с ошибкой short_open_tag parameter must be turned on in php.ini
Происходит это из-за неправильно использования условия if в этом скрипте. Проблема существует, потому что во всех остальных режимах php она не модулируется, но я уже связался с разработчиками 1С-Битрикс и они должны будут исправить проблему (другой вопрос когда они это сделают). Если кого-то интересуют подробности бага — отвечу в комментариях
Пока что, в качестве временного фикса, используем для восстановления сайта дистрибутив из прикреплённого к статье архиву.
в php.ini итак стоит «On», поэтому когда закоментировал строку в конфиге все заработало.
Дистрибутив из архива не годится, ибо я восстанавливаю бекап.
Что то сайт медленно работает…
Дистрибутив из архива не годится, ибо я восстанавливаю бекап.
Что то сайт медленно работает…
в php.ini итак стоит «On», поэтому когда закоментировал строку в конфиге все заработало.
вы уверенны, что в phpinfo(); short_open_tag показывается как включённый?
настройка в bx/bx_apache.conf ничем не должна отличаться от php.ini и вызывать каких-то проблем…
Что то сайт медленно работает…
Штатная битриксовая проверка производительности сайта что показывала при этом?
да абсолютно уверен, проверял через php info и даже вырезал из restore.php проверку на переменную, пока из bx_apache.conf не закомментировал строку, он считал что тег выключен. Причем если делаешь echo ini_set('short_open_tag') то скрипт выводит On, но при проверке через if выдает ошибку. Повторюсь что выключение строки из конфига помогло.
Штатная показывает 1.65сек, мол медленно, в панели производительности все оптимально, xcache стоит.
Штатная показывает 1.65сек, мол медленно, в панели производительности все оптимально, xcache стоит.
по первому пункту большое спасибо за подробное описание
именно xcache, а не opcache?
вот мой тикет в битрикс, где они признали баг
Здравствуйте, у меня Apache работает в режиме MPM-ITK
и скрипт restore.php вываливается с ошибкой
short_open_tag parameter must be turned on in php.ini
несмотря на то, что в php.ini я выставляю
short_open_tag = On (пробовал short_open_tag = 1)
и значение применяется как на Master так и на Local value (видно через phpinfo)
Дело в том, что в скрипте restore.php срабатывает условие вхождения в самый первый if
if (ini_get('short_open_tag') == 0)
для PHP в режимах CLI, CGI и Prefork ini_get('short_open_tag') возвращает строку(string) «1», php приводит значение «1» типа string в числовой тип, сравнивает число 1 с числом 0 и скрипт продолжает своё выполнение нормально, так как if (false)
php.net/manual/ru/function.ini-get.php (string ini_get ( string $varname ))
php.net/manual/ru/language.operators.comparison.php ( == принудительно делает преобразование типов)
но PHP в режиме MPM-ITK ini_get('short_open_tag') возвращает строку On и после приведения типов sting On это int 0
соответственно if (true) и скрипт завершает работу
И так, два вопроса
1) Возможно ли рассмотрения изменения условий проверки этих условий в отделе разработки. Возможно можно было бы сделать так или так
if (ini_get('short_open_tag') === 0)
if (ini_get('short_open_tag') == «0»)
2) Могу ли я как-то обойти эту проверку, чтобы воспользоваться скриптом? Если я меняю скрипт restore.php руками, то он автоматически скачивается снова и мои правки затираются.
и скрипт restore.php вываливается с ошибкой
short_open_tag parameter must be turned on in php.ini
несмотря на то, что в php.ini я выставляю
short_open_tag = On (пробовал short_open_tag = 1)
и значение применяется как на Master так и на Local value (видно через phpinfo)
Дело в том, что в скрипте restore.php срабатывает условие вхождения в самый первый if
if (ini_get('short_open_tag') == 0)
для PHP в режимах CLI, CGI и Prefork ini_get('short_open_tag') возвращает строку(string) «1», php приводит значение «1» типа string в числовой тип, сравнивает число 1 с числом 0 и скрипт продолжает своё выполнение нормально, так как if (false)
php.net/manual/ru/function.ini-get.php (string ini_get ( string $varname ))
php.net/manual/ru/language.operators.comparison.php ( == принудительно делает преобразование типов)
но PHP в режиме MPM-ITK ini_get('short_open_tag') возвращает строку On и после приведения типов sting On это int 0
соответственно if (true) и скрипт завершает работу
И так, два вопроса
1) Возможно ли рассмотрения изменения условий проверки этих условий в отделе разработки. Возможно можно было бы сделать так или так
if (ini_get('short_open_tag') === 0)
if (ini_get('short_open_tag') == «0»)
2) Могу ли я как-то обойти эту проверку, чтобы воспользоваться скриптом? Если я меняю скрипт restore.php руками, то он автоматически скачивается снова и мои правки затираются.
Штатная показывает 1.65сек, мол медленно, в панели производительности все оптимально, xcache стоит.
именно xcache, а не opcache?
именно xcache — s017.radikal.ru/i429/1507/eb/f97b76d727e3.png
на старом хостинге в районе 0.9с показывал, а тут 1.6-1.7с. Явно что то не то настроено
странно, если запускать мои скрипты на чистом centos 6.6 + ispmanager 5 + nginx — то должен вставать opcache, взяться xcache там неоткуда O_O
вот один из довольно «тяжёлых» сайтов на сервере, развёрнутом по этой статье
вот один из довольно «тяжёлых» сайтов на сервере, развёрнутом по этой статье
Скрытый текст





opcache вобще не стоял, xcache ставил из isp manager.
у меня так i056.radikal.ru/1507/c5/28984baef3fd.png
у меня так i056.radikal.ru/1507/c5/28984baef3fd.png
xcache удалил, поставил opcache т.к. php 5.4. Сразу оценка производительности стала 26 вместо 6.0
надеюсь помог =)
ага, спасибо! осталось с базой что то сделать, оптимизировать как-то, а то медленно работает
еще момент:
Это нормально? Или не верно?
/bitrix/.settings.php
'cache' =>
array (
'value' =>
array (
'type' =>
array (
'class_name' => 'CPHPCacheMemcacheCluster',
'extension' => 'memcache',
'required_file' => 'modules/cluster/classes/general/memcache_cache.php',
),
),
'readonly' => false,
),
array (
'value' =>
array (
'type' =>
array (
'class_name' => 'CPHPCacheMemcacheCluster',
'extension' => 'memcache',
'required_file' => 'modules/cluster/classes/general/memcache_cache.php',
),
),
'readonly' => false,
),
Это нормально? Или не верно?
так можно, руки у этого дела растут из штатной фичи в админке «Кластер» которая называется (или как-то так)
я обычно настраивал через файлик .settings_extra.php
я обычно настраивал через файлик .settings_extra.php
развернул сабж на новом сервере. nginx не запускается. Сначала ругался на кучу дублей в конфиге, а потом
service nginx restart
nginx: [emerg] unknown «proxyserver» variable
nginx: configuration file /etc/nginx/nginx.conf test failed
пришлось закоментить строку
#include bx/push.conf;
Почему так?
service nginx restart
nginx: [emerg] unknown «proxyserver» variable
nginx: configuration file /etc/nginx/nginx.conf test failed
пришлось закоментить строку
#include bx/push.conf;
Почему так?
Sign up to leave a comment.
Оптимизация ISPmanager под проекты на Битриксе или как я скрестил ISPmanager и VMBitrix (Битрикс окружение)