Уважаемые пользователи, по техническим причинам загрузка файлов временно недоступна. Приносим извинения за временные неудобства.

Конфиг NGINX для WordPress (в корне домена) и phpBB (в папке /forum)

Темы из форумов поддержки phpBB 3.2.x (доступны только для чтения)
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB 3.1.x/3.2.x | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Alex42
phpBB 1.0.0
Сообщения: 2
Стаж: 7 лет 10 месяцев
Благодарил (а): 1 раз

Конфиг NGINX для WordPress (в корне домена) и phpBB (в папке /forum)

Сообщение Alex42 »

Всем привет! Пытаюсь настроить связку из шапки. Не получается установить форум из-за rewrite правил в nginx для Вордпресса.

На сервере установлен nginx+phpfpm. Конфиг настроен для работу пермалинков WordPress с кэширующим плагином WP Super Cache. Хочу вынести правила для форума в отдельную локацию, но не знаю, как это сделать.

В документации форума нашел образец конфига для phpBB, но как поженить его с уже настроенным конфигом для WordPress и ничего не сломать – не знаю.

Подскажите, как переделать примерный nginx из /doc только для обработки файлов во вложенной папке /forum?

Поделитесь знаниями, у кого уже настроена такая связка — я совсем запутался в языке выражений nginx в конфиге.

Спасибо!
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 10 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Конфиг NGINX для WordPress (в корне домена) и phpBB (в папке /forum)

Сообщение nissin »

Делаете отдельный location для форума.

Код: Выделить всё

        location / {
            # Здесь пишите конфигурацию для WordPress
        }

        location /forum {
                # phpBB uses index.htm
                index index.php index.html index.htm;
                try_files $uri $uri/ @rewriteapp;

                # Deny access to internal phpbb files.
                location ~ /forum/(config\.php|common\.php|cache|files|images/avatars/upload|includes|(?<!ext/)phpbb|store|vendor) {
                    deny all;
                    # deny was ignored before 0.8.40 for connections over IPv6.
                    # Use internal directive to prohibit access on older versions.
                    internal;
                }

                # Pass the php scripts to fastcgi server specified in upstream declaration.
                location ~ \.php(/|$) {
                    # Unmodified fastcgi_params from nginx distribution.
                    include fastcgi_params;
                    # Necessary for php.
                    fastcgi_split_path_info ^(.+\.php)(/.*)$;
                    fastcgi_param PATH_INFO $fastcgi_path_info;
                    fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
                    fastcgi_param DOCUMENT_ROOT $realpath_root;
                    try_files $uri $uri/ /forum/app.php$is_args$args;
                    fastcgi_pass unix:/tmp/php.sock;
                }
        }

        location @rewriteapp {
            rewrite ^(.*)$ /forum/app.php/$1 last;
        }

        # Correctly pass scripts for installer
        location /forum/install/ {
            # phpBB uses index.htm
            try_files $uri $uri/ @rewrite_installapp;

            # Pass the php scripts to fastcgi server specified in upstream declaration.
            location ~ \.php(/|$) {
                # Unmodified fastcgi_params from nginx distribution.
                include fastcgi_params;
                # Necessary for php.
                fastcgi_split_path_info ^(.+\.php)(/.*)$;
                fastcgi_param PATH_INFO $fastcgi_path_info;
                fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
                fastcgi_param DOCUMENT_ROOT $realpath_root;
                try_files $uri $uri/ /forum/install/app.php$is_args$args;
                fastcgi_pass unix:/tmp/php.sock;
            }
        }

        location @rewrite_installapp {
            rewrite ^(.*)$ /forum/install/app.php/$1 last;
        }

Alex42
phpBB 1.0.0
Сообщения: 2
Стаж: 7 лет 10 месяцев
Благодарил (а): 1 раз

Re: Конфиг NGINX для WordPress (в корне домена) и phpBB (в папке /forum)

Сообщение Alex42 »

nissin писал(а): 10.12.2018 18:18 Делаете отдельный location для форума.
Большое спасибо! Все заработало, только пришлось исправить адрес сокета php для моего сервера! Надеюсь топик будет полезен и другим блогерам! :)

Вернуться в «phpBB 3.2.x (архив)»