Надеялся, что никогда мне больше не случится возиться с битриксом, но не пронесло… Достался нам весьма не маленький интернет-магазин www.dinozavrik.ru Пока вопрос переноса на MODX не стоит, а вот вопрос производительности стоял очень даже… Сайт висел на ник.ру на топовом шаред-тарифе 1С-Битрикс. На странице тарифа заявляется “Тариф оптимизирован для использования CMS «1С-Битрикс: Управление сайтом»”. ОК, может все так, и даже очень на это похоже (даже в мониторингах битрикса было включено АРС-кеширование и т.п.), и даже показывает, что php-конфигурация оптимальная. Да вот только показатели производительности не на высоте… А что самое плохое, в какие-то моменты сайт просто переставал работать… Вот это видно на графике: ? Несколько провалов минут по 15 посредь рабочего дня — очень не приятная штука… Я звонил в саппорт и выяснял у нас ли это на сайте проблемы, или где-то по сети перебои. Специалист поддержки подтвердил, что проблемы на самом сайте, что и по графикам их видно, как идет нагрузка, а потом отказ от обслуживания. Собственно, так как данный тариф на ник.ру топовый и нельзя там просто так взять и повысить конфигурацию, а можно только заказать VDS-ку или выделенный физической сервер, я решил сайт перенести на VDS, только не к ним, а на neoserver.ru В пользу выбора данной площадки сыграли 3 фактора:
На сервере крутится nginx или apache? Если nginx, то не мог бы ты показать конфиг NGINX как для Bitrix так и для MODX, интересует тонкая настройка NGINX (распределение его ресурсов) на сервере где много сайтов с различными CMS.
Апач может и с нгинксом работать, но у нас используется nginx + php-fpm Особо тонкой настройки нет. Для битрикса и для модикса практически одинаковые конфиги используются, на одну строчку только отличаются. server { listen 80; server_name domain.name; error_log /var/log/nginx/domain.name.error_log; fastcgi_intercept_errors on; root /var/www/domain.name; index index.php; client_max_body_size 30M;
location /core/ {
deny all;
}
location /.git/ {
deny all;
}
location ~* \.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|js)$ {
access_log off;
expires 30d;
}
location / {
if (!-e $request_filename) {
#rewrite ^/(.*)$ /index.php?q=$1 last; # Этот для MODX
rewrite ^/(.*)$ /bitrix/urlrewrite.php last; # А этот для Bitrix
}
}
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_ignore_client_abort on;
fastcgi_param SERVER_NAME $http_host;
}
location ~ /\.ht {
deny all;
}
}
Все сайты отправляете сюда или для каждого сайта свой порт? fastcgi_pass 127.0.0.1:9000;
Все сюда.
То есть, все сайты работают от одного пользователя? И если, вдруг, один из них взломают, то через общий процесс PHP можно будет порушить и все остальные? Или что-то предусмотрено на этот счёт?
На этот счет предусмотрен open_basedir. Но что-то видимо в процессе доработок оно несколько потерялось. Один из вариантов — fastcgi_param PHP_VALUE open_basedir="/var/www/site_path" (Само собой для каждого сайта в отдельности). Но возможно у Ксении другой механизм используется. Так или иначе, этот момент без внимания не оставляем. Все в процессе.
neoserver.ru впервые используете или нет, можите насчет него что-нибудь сказать, если ли разница с DO?
Нет, уже не первый. Вот буквально как начали с этой новой технологией экспериментировать, так вот тогда и на них наткнулся. С DO, как и с многими другими — ощутимая разница в цене, плюс тарифы в рублях и возможность работать по безналу. Ну и главное для меня — это конструктор конфигураций. Где-то мне не нужен большой по объему диск, но надо больше оперативки (для нагруженного сайта), а где-то процессор и оперативка вообще не нужна, нужен только диск, при чем можно SATA (просто для резервных копий и т.п.). Вот тут можно это все самому настраивать. А почти у всех сейчас так — вот выбирай из готовых планов, где все вместе растет. Но есть один минус (не знаю на сколько временный) — нет круглосуточной поддержки. Это печалька.