Задача: настроить nginx так, чтобы при определенном запросе работал сайт на базе livestreet, установленный в подкаталог относительно корневого, а при другом запросе работал ресурс на базе laravel.
Есть сервис laravel.ru, файлы которого расположены в каталоге /var/www/laravel. Есть livestreet, который установлен в /var/www/laravel/domains/число/. Нужно чтобы при запросе laravel.ru работал сервис, а при запроса laravel.ru/domains/число работал работал livestreet.
Начальные условия
- nginx 1.4.x
- php-fpm
- Laravel 4
- LivestreetCMS 1.0.3
Конфигурация nginx
Ниже я предоставляю конфигурацию и дам пояснения.
[plain]
server {
server_name laravel.ru;
root /var/www/hobby-work.ru/public;
index index.php;
#livestreet
location ~ ^/domains/([0-9]+) { # рег. выражение. для работы с livestreet
в скобках выделение, которое дальше используем как $1
root /var/www/hobby-work.ru;
try_files $uri $uri/ /domains/$1/index.php$is_args$args; # проверка наличия файлов, каталогов
$is_args = ? если есть аргументы и "" если нет, $args - аргументы
# обработка php файлов при работе с livestreet
location ~ \.php$ {
internal; # обрабатывать только внутренние редиректы
include /etc/nginx/fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
}
#laravel
location / {
try_files $uri $uri/ /index.php$is_args$args;
index index.php;
}
location ~ \.php$ {
internal;
try_files $uri /index.php =404;
include /etc/nginx/fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
}
[/plain]
Вне темы
Для корректной работы Livestreet придется в /domains/число/config/config.local.php задать параметр path.offset_request_url равный 2;
Прошлые записи
- Комната призвания
- Разбираемся с Coroutine в Kotlin - часть четвертая
- Разбираемся с Coroutine в Kotlin - часть третья
- Разбираемся с Coroutine в Kotlin - часть вторая
- Разбираемся с Coroutine в Kotlin - часть первая
- Отпуск длинною в год
- Подходит ли data class для JPA Entity?
- События как источник правды или как я в стартапе участвовал
- Код 2015 против 2023
- Jvm Internals - Перевод
- Мозг против живота или насколько трудно управлять своей жизнью