phpBB в подпапке за nginx
Я пытаюсь развернуть форум phpBB за балансировщиком нагрузки, который будет распределять трафик:
- Если
https://example.com/forum/*
, перенаправить на экземпляр A (phpbb + nginx) - Любой другой путь на
https://example.com/
, перенаправить на экземпляр B (прочее)
Поэтому я хочу, чтобы phpBB был установлен на экземпляре A и доступен в https://example.com/forum/
,
На экземпляре A я запускаю nginx. Вот мой nginx.config (только с важными вещами):
http {
server {
listen [::]:443 http2 ssl default_server;
listen 443 http2 ssl default_server;
server_name example.com;
# PHP BB
root /var/www/mysite/forum/src;
# fastcgi
include /etc/nginx/conf.d/fastcgi-php.conf;
location /forum {
index index.php index.html index.htm;
rewrite ^/forum/(.*) /$1 break;
try_files $uri $uri/ @rewrite_app;
}
location ~ \.php(/|$) {
try_files $uri $uri/ /app.php$is_args$args;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
}
location @rewrite_app {
rewrite ^(.*)$ /app.php/$1 last;
}
}
}
Вот мои проблемы:
- Когда я посещаю
https://example.com/forum/
форум загружается но все внутренние ссылки пишутся без/forum/
путь, перенаправляющий балансировщик нагрузки на экземпляр B. - Когда я посещаю
https://example.com/forum/index.php
, внутренние ссылки написаны правильно с/forum/
путь, но я получаю приложение phpBB 404The page is not found
,
Что я делаю неправильно?