У меня есть Server-a, который содержит только Nginx и приложение узла в процессе выполнения.
Однако я хочу обслуживать приложение Node с этого сервера, который также обслуживает приложение Angular.
Но когда я перейду к server-a / blog, Я хочу создать обратный прокси-сервер (внутренний прокси) для другого сервера (Server-b), который содержит установку Wordpress, также с Nginx.
Итак, я всегда перехожу к server-a / blog, обслуживает содержание server-b
У меня он частично работает с такой конфигурацией:
proxy_buffering on;
proxy_buffer_size 1k;
proxy_buffers 24 4k;
proxy_busy_buffers_size 8k;
proxy_max_temp_file_size 2048m;
proxy_temp_file_write_size 32k;
location /blog/en/ {
try_files $uri @proxy;
}
location @proxy {
proxy_redirect off;
proxy_set_header X-Forwarded-Host "$host";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://server-b;
}
Но происходит следующее: если я перейду к сервер-а / блог / WP-админ, Я получаю мгновенное перенаправление на сервер-а / WP-админ.
Все относительные ссылки в установке Wordpress должны соответствовать URL-адресу сервера.
Это настройка, которая у меня есть в моей настройке Wordpress DB:
+-----------+-------------+-----------------------+----------+
| option_id | option_name | option_value | autoload |
+-----------+-------------+-----------------------+----------+
| 1 | siteurl | http://server-a/blog/ | yes |
| 2 | home | http://server-a/blog/ | yes |
+-----------+-------------+-----------------------+----------+
Это почти наверняка связано с разными типами относительных URL-адресов.
В соответствии с http://www.webreference.com/html/tutorial2/3.html
Каталог с именем .. (две точки) в относительном URL-адресе указывает на родительский каталог, по существу удаляя все до предыдущей косой черты в базовом URI. Обратите внимание, что это имеет значение только внутри имени пути, поэтому вы не можете использовать эту нотацию, чтобы подняться выше корневого каталога.
Каталог называется. (одна точка) относится к текущему каталогу.
Относительный URL-адрес, который начинается с / (косая черта), всегда заменяет полное имя базового URL-адреса.
Относительный URL-адрес, начинающийся с // (две косые черты), всегда заменяет все, начиная с имени хоста.
Таким образом, относительный URL-адрес с именем "/ wp-admin" заменит всю базу в том виде, в каком вы ее видите. Вы хотите заменить его на "./wp-admin", чтобы он не перезаписывал все это целиком.
Что касается фактического изменения, я не уверен, но подозреваю, что вам нужно будет изменить его на стороне WordPress.