Плагин «Домен для статики»

Описание

Плагин предназначен для переноса статических файлов на отдельный домен (поддомен).
Обязательным условием является использование одного сервера (общей файловой системы для сайта и для статических файлов).

GitHub: github.com/wasja1982/livestreet_staticdomain

Настройка

Настройка плагина осуществляется редактированием файла "/plugins/staticdomain/config/config.php".

Поддерживаемые директивы:
1) $config['static_web'] — Домен для статических файлов.

2) $config['static_server'] — Путь к каталогу для статических файлов.

3) $config['use_static_cache'] — Привязать JS и CSS к статическому домену. По умолчанию отключено (false).

Установка

1. Скопировать плагин в каталог /plugins/
2. Создать требуемую структуру каталогов.
3. Настроить работу домена для статических файлов.
4. Через панель управления плагинами (/admin/plugins/) запустить активацию плагина.

Пример настройки (отдельный поддомен для статики)

1) Настройка двух виртуальных серверов в Apache
Задаются пути для корневых каталогов основного домена и поддомена для статики:
# Основной домен
<VirtualHost *:8080>
	ServerName site.ru
	ServerAdmin [email protected]
	ServerAlias www.site.ru
	DocumentRoot /var/sites/site.ru/htdocs
</VirtualHost>

## Поддомен для статики (настраивается при отсутствии nginx)
#<VirtualHost *:8080>
#	ServerName img.site.ru
#	ServerAdmin [email protected]
#	ServerAlias img.site.ru
#	DocumentRoot /var/sites/img.site.ru/htdocs
#</VirtualHost>


2) Настройка nginx
Настраивается передача всех запросов на основной сервер и непосредственный доступ к файлам у поддомена для статики:
# Основной домен
server {
        listen   80;
        server_name  site.ru www.site.ru;
        location / {
                proxy_pass http://127.0.0.1:8080;
        }
        location ~ /\.ht {
                deny  all;
        }
}

# Поддомен для статики
server {
        listen   80;
        server_name  img.site.ru;

        location / {
                root /var/sites/img.site.ru/htdocs;
        }
        location ~ /\.ht {
                deny  all;
        }
}


3) Перенос статических файлов шаблона (не обязательно)
Необходимо скопировать все статические файлы (изображения, CSS, JS) из каталога "/var/sites/site.ru/htdocs/templates" в каталог "/var/sites/img.site.ru/htdocs/templates" с обязательным сохранением структуры каталогов.
Задать в файле «config.local.php» LiveStreet значение переменной
$config['path']['static']['root'] = 'http://img.site.ru';


4) Настройка плагина
В файле "/plugins/staticdomain/config/config.php" задать:
— домен для статики;
$config['static_web']='___path.static.root___';

или (если не настраивался пункт 3)
$config['static_web']='http://img.site.ru';

— путь к каталогу для статических файлов
$config['static_server']='/var/sites/img.site.ru/htdocs';

— разрешить привязку JS и CSS к статическому домену
$config['use_static_cache']=true;


5) Активировать плагин

Если не работает, то проверьте, чтобы были выставлены права доступа к каталогу "/var/sites/img.site.ru/htdocs" и для всех вложенных (0x755).

2 комментария

avatar
Хороший плагин.
avatar
Спасибо.

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

Комментировать при помощи:
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.