понедельник, 9 сентября 2013 г.

Ускоряем работу umi.cms

Есть такая CMS от UMI, отличается даже большей тормознутостью чем битрикс и в целом несколько сложной разработкой.

Есть сервер, на базе core i7, не загруженный, но со временем открытия страниц порядка 7с. Попробуем несколько ускорить.



1) ставим nginx, и конфиг приводим к такому (http://wiki.umisoft.ru/Кэширование_через_nginx)
server {
  listen  192.168.7.127:80; # (1) IP и порт, на котором висит этот сервер
  server_name   192.168.7.127; # (2) К каким доменным именам применяются инструкции
 
  location / {
    error_page 412 = @dynamic;
 
    if ($request_method = 'POST') { return 412; }
 
    if ($is_args = '?') { return 412; }
 
    if ($cookie_umicms_session) { return 412; }
 
    try_files $uri/index.html @dynamic;
   root /usr/local/apache2/htdocs/cache/$host; # (3) Путь до каталога закэшированных файлов
    index index.php;
  }
 
 location @dynamic {
    proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
 
   proxy_pass http://192.168.7.127:81; # (4) Адрес и порт, на котором установлен бэкэнд (Apache)
  }
 
  location ~* ^/admin {
   error_page 412 = @dynamic;
    return 412;
  }
 
 location ~* \.php$ {
    error_page 412 = @dynamic;
    return 412;
  } 
 
  location ~* (config\.ini|install\.ini|install\.log|umi\.nginx\.conf|dbview\.php|umibackup) {
   rewrite ^(.*)$ / permanent;
location ~* \.(jpg|jpeg|gif|bmp|png)$ { root /usr/local/apache2/htdocs; # (5) Путь к корневому каталогу сайта # (рекомендуется, чтобы изображения отдавались nginx-ом) access_log off; } }

и сразу проверяем путь к кэшу, в свежих версиях в конфиге вписан путь
~/sys-temp/static-cache/
его и укажем в конфиге для nginx

Включим в опциях сайта
[includes]
system.static-cache = "~/sys-temp/static-cache/"

[cache]
static.enabled = "1"
static.mode = "nginx"

2) не забываем оптимизировать БД, для этого проходимся mysqltuner и включаем slow_log

Комментариев нет:

Отправить комментарий