Я хочу сделать WordPress безголовым (используя API wpgraphql по адресу /graphql uri), где интерфейсом будет next.js. И я хочу, чтобы и интерфейс (Next.js), и сервер (WordPress. администратор, контент и API) находились в тот же домен.
С этой целью я хочу, чтобы все запросы были только для /вп-админ/*
и /wp-контент/*
и /графкл
для направления на WordPress. А все остальные uri будут перенаправлены на сервер next.js в localhost:3000 через обратный прокси.
Ниже приведен файл конфигурации nginx.
сервер {
слушать 80;
слушать [::]:80;
корень /var/www/wordpress;
индекс index.php index.html index.htm;
имя_сервера локальный хост;
client_max_body_size 100M;
автоиндекс выключен;
# Вордпресс
место расположения / {
try_files $uri $uri/ /index.php?$args;
}
расположение ~ \.php$ {
включить фрагменты/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
включить fastcgi_params;
}
# Next.js
место расположения # ... {
proxy_pass http://localhost:3000;
прокси_http_версия 1.1;
proxy_set_header Обновить $http_upgrade;
proxy_set_header Соединение "обновление";
proxy_set_header Хост $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $ схема;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port $server_port;
}
}
Любая помощь приветствуется, спасибо