У меня есть несколько серверов, работающих на виртуальных машинах.И у меня есть один запущенный nginx для передачи запросов на эти серверы.Например, http://mydomain.com/wiki при запросе прокси на http://192.168.122.3. 192.168.122.3 запускает apache с DocumentRoot = / var / www / wiki.Все работает нормально, но при загрузке страницы все пути там указывают на / вместо / wiki (например, <img src="/bla-bla-bla"/>, not /wiki/bla-bla-bla"
).Кажется, это нормально для apache, но не для браузера - он не может загружать изображения и т. Д. Изменение DocumentRoot в apache на / var / www и передача / wiki из nginx не помогают - mediawiki начинает перенаправление в / wiki, перенаправляет nginxвернемся к apache и т. д., прежде чем он скажет о зацикленных перенаправлениях.Другие проекты, работающие на виртуальных машинах, такие как Redmine (ruby on rails), действуют так же.
Есть ли способ решить эту проблему?Есть ли правильный способ для прокси URL-адресов, таких как / subdir, на другие серверы?
Это раздел сервера nginx:
server {
listen 192.168.122.7:80;
server_name mydomain.com;
access_log /var/log/nginx/localhost.access.log;
location / {
}
location /wiki/ {
proxy_pass http://192.168.122.3/;
}
}