Я знаю, что этот вопрос был спросил раньше на SO но у меня проблемы с репликацией на моем сервере.
Я пытаюсь сделать, когда пользователь переходит на medicine.example.com
, субдомен должен быть сопоставлен с example.com/sites/medicine
. Таким образом, URL-адрес, который видит пользователь, medicine.example.com
. index.php удаляется через php.
В идеале решение должно быть основано на подстановочных знаках / регулярных выражениях, так что больше, чем просто medicine.example.com
может быть сопоставлен с URL-адресом.
Приведенный ниже код дает мне 502 bad gateway
ошибка.
server {
listen 80;
listen 443 ssl;
server_name medicine.example.com;
location / {
rewrite ^([^.]*[^/])$ $1/ permanent;
proxy_pass_header Set-Cookie;
proxy_pass https://example.com/sites$request_uri;
}
}
Вы действительно не хотите отправлять запросы к одному и тому же веб-серверу, это требует дополнительных накладных расходов. Я бы настроил один виртуальный хост для обоих доменов и использовал if
оператор только для перезаписи запросов для поддомена.
server {
server_name example.com medicine.example.com;
if ($host = "medicine.example.com") {
rewrite . /sites/medicine$request_uri;
}
...
}