Recipe nginx umi-cache

Материал из DiPHOST.Ru wiki system

Перейти к: навигация, поиск
       server {
               listen 192.168.0.1:80;               # IP-адрес сервера
               proxy_buffer_size         8k;       # параметр изменяется в панели управления
               client_max_body_size   16m;    # параметр изменяется в панели управления
               client_body_buffer_size 512k;
               # кэш имён файлов для disable_symlinks
               open_file_cache          max=1000 inactive=20s; 
               open_file_cache_valid    30s;
               open_file_cache_min_uses 2;
               open_file_cache_errors   on;
               # имена сайта
               server_name example.com;
               server_name www.example.com
               # отключение лишних журналов
               access_log  off;
               log_not_found off;
               # корневая папка для статических файлов
               root /home/username/www/site1/public_html;
               index index.html;
               # запрет симлинков на чужие файлы, нельзя будет скачать файл другого пользователя
               # путь до корня сайта проверяться на симлинки не будет, если файл эту часть пути содержит
               disable_symlinks if_not_owner from=/home/username/www/site1/public_html;
               location / {
                       access_log /home/username/www/site1/logs/nginx-access.log;
                       # кодировка прописана во избежании ситуаций, когда отдаваемые nginx файлы .html интерпретируется 
                       # браузером в соответствии с его настройкой
                       charset utf-8;
                       source_charset utf-8;
                       # не смотреть в кэше, если метод запроса POST или есть аргументы, или пользователь залогинен
                       error_page 412 = @apache;
                       if ($request_method = 'POST') { return 412; }
                       if ($is_args = '?') { return 412; }
                       if ($cookie_umicms_session) { return 412; }
                       # смотреть в кэш
                       root /home/username/www/site1/public_html/sys-temp/static-cache/$host/;
                       try_files $uri/index.html @apache;
               }
               # запретить доступ к файлам репозиториев, если они случайно оказались в публичном месте
               location ~ /\.svn {
                       deny all;
               }
               location ~ /\.git {
                       deny all;
               }
               location ~ /\.hg {
                       deny all;
               }
               # запретить доступ к файлам .htaccess и .htpasswd
               location ~ /\.ht {
                       deny all;
               }
               # обрабатывать запросы к админке веб-сервером apache
               location ~* ^/admin {
                      error_page 412 = @apache;
                      return 412;
               }
               # обрабатывать php-файлы веб-сервером apache
               location ~* \.php$ {
                      error_page 412 = @apache;
                      return 412;
               }
               # попытаться отдать файл с одним из расширений напрямую минуя apache
               location ~* \.(swf|zip|rar|arj|cab|exe|dll|ico|jpg|jpeg|gif|\
                                  bmp|png|mp3|avi|mov|mpg|mpeg|\
                                  amr|mmf|wml|wbmp|mid|midi|3gp|css|js|html|htm|txt)$ {
                       access_log /home/username/www/site1/logs/nginx-access.log;
                       charset utf-8;
                       source_charset utf-8;
                       try_files $uri @apache;
               }
               # передать запрос к apache
               location @apache {
                       proxy_pass  http://127.0.0.1:%%port%%;
               }                
       }
Личные инструменты
© 2006 — ООО «Дремучий лес»
Служба техподдержки: [email protected]
Тексты этого сайта являются полностью оригинальными
или оригинальными компиляциями ООО «Дремучий Лес».
Распространяются по лицензии WTFPL
Отзывы о хостинге diphost.ru Отзывы на hostobzor.ru