Общие Вопросы По Настройке Серверов

Здравствуйте! Топик для вопросов пользователей по серверам и их администрированию, применительно к CS-Cart и Multi-Vendor. Вы спрашиваете вопросы, а специалисты отвечают.

Рекомендую!



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



После рассказал все нюансы в случаи необходимости добавить еще витрины или сайты. Так же выдал рекомендации по оптимизации в будущем в случаи увеличения базы.



Так, что вы реально можете сделать свою жизнь и настройку сервера проще, так как время которое вы потратите сами на настройку и оптимизацию в разы превышает цену, за услуги Глеба.

От себя скажу, что разрабтчики пообещали сделать на эту тему материал. Пока мне посоветовали только это (хотя и это уже не тянет на звание “CMS проста в установке и использовании”):



[color=#000000]1. Желательно использовать PHP версии [/color]5.6[color=#000000] (это самая быстрая версия);[/color]



[color=#000000]2. Нужно использовать [/color]OPcache[color=#000000] (кеширует сгенерированный код PHP в память);[/color]



[color=#000000]3. На сервере должен быть установлен [/color]mod_deflate[color=#000000] (модуль Apache, который сжимает данные при передаче по сети);[/color]



[color=#000000]4. Также стоит установить [/color]Imagick[color=#000000] - это библиотека PHP, аналог GD для картинок (таким образом картинки будут меньшего размера). [/color]

[color=#000000]Нужно в [/color]config.local.php[color=#000000] поменять используемую библиотеку:[/color]

[color=#000000]‘image_resize_lib’ заменить на ‘imagick’[/color]



[color=#000000]5. Для кеша рекомендуется использовать [/color]APC[color=#000000], а для сессий [/color]Redis[color=#000000] т.е. строки в [/color]config.local.php[color=#000000] должны выглядеть так:[/color]

$config[‘cache_backend’] = ‘apc’;

$config[‘session_backend’] = ‘redis’;

[quote name=‘kaavain’ timestamp=‘1431089190’ post=‘213782’]

От себя скажу, что разрабтчики пообещали сделать на эту тему материал. Пока мне посоветовали только это (хотя и это уже не тянет на звание “CMS проста в установке и использовании”)

[/quote]



Wordpress тоже прост и лёгок в использовании, тем не менее для его эффективной работы тоже потребуется настраивать серверную часть. Продублирую свои рекомендации из соседней темы. [list]

[]Используйте NGINX с FastCGI SAPI (PHP-FPM).

[
]Если нет возможности избавиться от Apache, то установите NGINX фронендом перед ним, чтобы раздавать статические файлы.

[]Если нет возможности ничего устанавливать, то перенесите конфигурации .htaccess в виртуальный хост и выключите AllowOverride.

[
]Если на сервере достаточно памяти, но нет возможности установить Redis/APCu, то храните кеш в базе данных. В некоторых случаях это будет эффективно.

[*]Попробуйте HHVM. Экспериментальная поддержка есть в CS-Cart 4.3.1.

[/list]

Наверное дурацкий вопрос…



Я выяснил ,что у меня NGINX (по ответу сервера и запущенной службе).

Обновился (дяди помогли добрые) до PHP 5.6.7

Далее включил сжатие через /etc/nginx/nginx.conf :


<br /> gzip on;<br /> gzip_disable "msie6";<br /> gzip_vary on;<br /> gzip_proxied any;<br /> gzip_comp_level 6;<br /> gzip_buffers 16 8k;<br /> gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;



Гугль при этом поднял оценку на 5 или 6 пунктов, но при этом все равно говорит "включите сжатие:

[list]

[]Сжатие страницы http://www.stencil-library.ru/…9e3307746004be00b1431097176.js?ver=4.2.4 уменьшит ее размер на 448,8 КБ (74 %).

[
]Сжатие страницы http://www.stencil-library.ru/js/lib/jcarousel/jquery.jcarousel.js уменьшит ее размер на 27,7 КБ (79 %).

[]Сжатие страницы http://www.stencil-library.ru/…/tygh/product_image_gallery.js?ver=4.2.4 уменьшит ее размер на 6,7 КБ (77 %).

[
]Сжатие страницы http://www.stencil-library.ru/js/tygh/exceptions.js?ver=4.2.4 уменьшит ее размер на 5,5 КБ (76 %).

[/list]

ЧЯДНТ блин?



Сайт соответственно www.stencil-library.ru

[quote name='kaavain' timestamp='1431365195' post='214001']

Наверное дурацкий вопрос…



Я выяснил ,что у меня NGINX (по ответу сервера и запущенной службе).

Обновился (дяди помогли добрые) до PHP 5.6.7

Далее включил сжатие через /etc/nginx/nginx.conf :


<br /> gzip on;<br /> gzip_disable "msie6";<br /> gzip_vary on;<br /> gzip_proxied any;<br /> gzip_comp_level 6;<br /> gzip_buffers 16 8k;<br /> gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;



Гугль при этом поднял оценку на 5 или 6 пунктов, но при этом все равно говорит "включите сжатие:[list]

[]Сжатие страницы http://www.stencil-l…76.js?ver=4.2.4 уменьшит ее размер на 448,8 КБ (74 %).

[
]Сжатие страницы http://www.stencil-l…ry.jcarousel.js уменьшит ее размер на 27,7 КБ (79 %).

[]Сжатие страницы http://www.stencil-l…ry.js?ver=4.2.4 уменьшит ее размер на 6,7 КБ (77 %).

[
]Сжатие страницы http://www.stencil-l…ns.js?ver=4.2.4 уменьшит ее размер на 5,5 КБ (76 %).

[/list]

ЧЯДНТ блин?



Сайт соответственно www.stencil-library.ru



[/quote]



Вот держи полный набор у тебя нет text/js


<br /> gzip_types text/plain application/xml<br /> application/javascript<br /> text/css<br /> text/js<br /> text/xml<br /> application/x-javascript<br /> text/javascript<br /> application/json<br /> application/xml+rss<br /> application/x-font-ttf<br /> application/x-font-otf<br /> application/x-font-woff<br /> application/font-woff<br /> image/x-icon ico<br /> font/opentype;<br />



Можешь еще проверится через http://www.webpagetest.org/

[quote name='z3r0' timestamp='1431367252' post='214004']

Вот держи полный набор у тебя нет text/js



[/quote]



Вах, спасибо… Арбайтн.

Мда, товарищи, рекомендации выполнены еще не все, и обновления на 4.3 еще нет - но сайт взлетел… Индексы Гугля ПагеСпидИнсайт поднялись чуть не вдвое, и визуально ускорение огромное…



Так что рекомендую кто может сам - озаботиться срочно, кто не может - заплатить денег…

Пипец, убил мне саппорт ihor-а сайты и никак не починит... Убил после следующей просьбы:



"APC достаточно старый продукт и больше не поддерживается, плюс работает не очень стабильно на последних версиях php, рекомендую opcache, быстрый и стабильный продукт, можем установить его." - да, пожалуйста, пусть будет opcache.

"Также стоит установить Imagick - этого пока не понял." Обработчик графических изображений на уровне php, устанавливать?" - да, пожалуйста.



Теперь пишут что "сайт не совместим с 5.6", хотя на 5.6 перевели ВЧЕРА и все отлично работало... А теперь - уже третий час оба сата странно лежат: выдают ошибку 500, но при этом ЛОГИ чистые самих сайтов...

Блин… Вот что значит человеческий фактор… Саппорт Ihor вогнал меня в тоску…



ВЧЕРА: стаявт РНР 5.6, все отлично работает.

СЕГОДНЯ: ставят opcache и imagick ,сайт ложится и лежит три часа.

ТОЛЬКО ЧТО: сайт восстанавливают, но смотрю на версию РНР = 5.3.3



Как же я обожаю свой старый движок, запущенный 10 лет назад, корявый, неудобный, некрасивый… Но 10 лет блин работает и летает на шаринг-хостинге без настроек и очистки кеша… Эх…

[quote name='kaavain' timestamp='1431434267' post='214089']APC достаточно старый продукт и больше не поддерживается, плюс работает не очень стабильно на последних версиях php, рекомендую opcache, быстрый и стабильный продукт

[/quote]



Саппорт прав наполовину. APC действительно скорее мёртв, чем жив, поэтому вполне справедливо желание заменить его на ZendOpcache. Однако вам нужно расширение APCu — только для пользовательского кеша, оно актуально и прекрасно поддерживается.



CS-Cart прекрасно совместим в PHP 5.6, это доказывает demo.cs-cart.com или demo.cs-cart.ru, например. С радостью установлю для вас все компоненты безболезненно.

Фуф… Вернули мне взад 5.6, теперь остается вопрос - как проверить наличие [color=#282828][font=arial, verdana, tahoma, sans-serif]Imagick и [/font][/color][color=#282828][font=arial, verdana, tahoma, sans-serif]opcache?[/font][/color]

[quote name='goncharov' timestamp='1431436600' post='214096'] С радостью установлю для вас все компоненты безболезненно. [/quote]



Ну, кстати, да, так и надо. Вопрос - сколько, и тогда после обновления 4.3 надо сделать.

Мда… Короче не работает в итоге толком. Сайт №1 www.diapaint.ru при покладании в корзину и переходе в корзину пишет:


Ошибка Ой, произошла ошибка (SyntaxError: Синтаксическая ошибка). Пожалуйста, попробуйте еще раз



Но при этом ВРОДЕ все работает. Лог ошибок чист.



Сайт №2, www.stencil-library.ru снаяала при покладании в корзину сначала писал


Ошибка Ой, произошла ошибка (Internal Server Error). Пожалуйста, попробуйте еще раз.



При этом писал в лог


[Tue May 12 19:26:28 2015] [error] [client 109.252.53.65] PHP Fatal error: Call to undefined function imagecreatefromgif() in /var/www/5diy/data/www/stencil-library.ru/app/addons/watermarks/func.php on line 561, referer: http://www.stencil-library.ru/



После брутального опорожнения кеша это сообщение пропало, но В ИЕ (в Хроме вроде все ОК) в КОРЗИНЕ нет картинки товара… Беда какая-то, не надо было лезть, наверное…



Где копнуть?

ААА!!! Ваще все картинки пропали… На обоих сайтах… Судя по всему дело в том что:



[color=#000000]Также стоит установить [/color]Imagick[color=#000000] - это библиотека PHP, аналог GD для картинок (таким образом картинки будут меньшего размера). [/color]



Это писал саппорт ЦС-Карта, при этом он еще писал:



[color=#000000]Нужно в [/color]config.local.php[color=#000000] поменять используемую библиотеку:[/color]

[color=#000000]'image_resize_lib' заменить на 'imagick'[/color]



Но я не нашел этих строчек в конфиге! И не знаю в итоге какая библиотека у меня стоит…



Ктонибудь, спаситепамагите!

[quote name='kaavain' timestamp='1431448932' post='214132']

Ктонибудь, спаситепамагите!

[/quote]


  1. Проверьте, установлено ли расширение imagick или gd: php -m | grep -E '(imagick|gd)'. Если ничего нет, то вам нужно установить пакет php-gd или php-imagick.


  2. Перезапустите httpd или php-fpm (на всякий случай).


  3. Найдите строку с image_resize_lib в local_conf.php или config.local.php, убедитесь, то там стоит либо gd, либо imagick в зависимости от установленного расширения.



    Если сомневаетесь, напишите мне в Скайп (в профиле). Буду онлайн до полуночи.

Большое спасибо! По пунктам:


  1. php -m дает


root# php -m<br /> PHP Warning: PHP Startup: Unable to load dynamic library &#39;/usr/lib64/php/modules/apc.so&#39; - /usr/lib64/php/modules/apc.so: undefined symbol: zend_unmangle_property_name in Unknown on line 0<br /> PHP Warning: PHP Startup: Unable to load dynamic library &#39;/usr/lib64/php/modules/imagick.so&#39; - /usr/lib64/php/modules/imagick.so: undefined symbol: php_checkuid_ex in Unknown on line 0<br /> [PHP Modules]<br /> bz2<br /> calendar<br /> Core<br /> ctype<br /> curl<br /> date<br /> ereg<br /> exif<br /> fileinfo<br /> filter<br /> ftp<br /> gettext<br /> gmp<br /> hash<br /> iconv<br /> json<br /> libxml<br /> mhash<br /> mysql<br /> mysqli<br /> openssl<br /> pcntl<br /> pcre<br /> PDO<br /> pdo_mysql<br /> pdo_sqlite<br /> Phar<br /> readline<br /> Reflection<br /> session<br /> shmop<br /> SimpleXML<br /> sockets<br /> SPL<br /> sqlite3<br /> standard<br /> tokenizer<br /> xml<br /> xmlrpc<br /> zip<br /> zlib<br /> <br /> [Zend Modules]



2. Это точно перезапускалось так как переустанавливали все подряд, но сделаю, см.п. 3



3. Есть подозрение, что 4.2 версия не знает про imagick. Так как а) нет строчки в конфиге [color=#282828][font=arial, verdana, tahoma, sans-serif]image_resize_lib. Я нашел массив, в котором она ДОЛЖНА быть, но там нет ее. И в английском описании я нашел что в 4.3 “ДОБАВЛЕНА поддержка imagick”



[/font][/color]Если я прав в п.3 то все напарсно…

[quote name='kaavain' timestamp='1431454006' post='214144']Большое спасибо![/quote]



imagick не может подгрузиться (Unable to load dynamic library /usr/lib64/php/modules/imagick.so), а поддержка gd отсутствует (нет в списке). Установите пакет php-gd (в Ubuntu/Debian php5-gd) и перезапустите сервис.

[quote name='goncharov' timestamp='1431454521' post='214147']

imagick не может подгрузиться (Unable to load dynamic library /usr/lib64/php/modules/imagick.so), а поддержка gd отсутствует (нет в списке). Установите пакет php-gd (в Ubuntu/Debian php5-gd) и перезапустите сервис.

[/quote]



Я так и думал… Последние вопросы:


  • GD и imagick могут одновременно существовать? Ну чтобы сейчас мне установили все, а потом я только переключил когда 4.3 будет? Ибо как я все-таки думаю, у 4.2 нет поддержки imagick…


  • у меня Apache MPM-ITK 2.2.15-39.el6.centos , Apache PHP module 5.3.3-40.el6_6 , awstats 7.0-3.el6 , logrotate 3.7.8-17.el6 , nginx 1.6.2-1.el6.ngx , установить пакет сложно?



    В принципе, если п.1 ответ “да”, то я дерну саппорт хостинга, они мне все поломали-то, меняя на 5.6

[quote name='kaavain' timestamp='1431454850' post='214149']

Я так и думал… Последние вопросы:


  • GD и imagick могут одновременно существовать? Ну чтобы сейчас мне установили все, а потом я только переключил когда 4.3 будет? Ибо как я все-таки думаю, у 4.2 нет поддержки imagick…


  • у меня Apache MPM-ITK 2.2.15-39.el6.centos , Apache PHP module 5.3.3-40.el6_6 , awstats 7.0-3.el6 , logrotate 3.7.8-17.el6 , nginx 1.6.2-1.el6.ngx , установить пакет сложно?



    В принципе, если п.1 ответ “да”, то я дерну саппорт хостинга, они мне все поломали-то, меняя на 5.6

    [/quote]

    gd и imagick не конфликтуют друг с другом и могут существовать одновременно. Судя по всему у вас CentOS, установить пакет достаточно командой sudo yum install php-gd, а затем перезапустить Apache: sudo service httpd restart.