Я хочу переписать, что под URL-адресом www.example.com будет сайт example2.com/www, но я хочу, чтобы он не менял URL-адрес в браузере на example2.com/www/.
Итак, после входа в браузер http://www.example.com Я увижу сайт под http://example2.com/www но в браузере это все равно будет http://www.example.com
Я пробовал что-то вроде:
RewriteRule (.*) http://example.com/www [L]
Я поместил это в конфигурацию виртуального хоста www.example.com, он работает, но с изменением URL-адреса.
Есть ли другой способ переписать http и https таким образом?
РЕДАКТИРОВАТЬ ... Я использую LiteSpeedBalancer, а www.example.com - это виртуальный хост только для отображения example.com/www (так что конкурс не проводится под www.example.com, этот домен только для перезаписи на example.com/www)
Это сложно, и сначала я привел пример с www.example.com, переписав его на example2.com/www, чтобы указать, что это разные виртуальные хосты.
С помощью mod_proxy можно достичь того, что вы описываете, но, как отмечали другие, вам нужно спросить себя: «Почему?». Это было бы намного проще для виртуального хоста на example2.com
В любом случае вам понадобится mod_proxy mod_proxy_http и возможно mod_proxy_html модули загружены
Тогда что-то вроде этого в вашей конфигурации Apache
# turn the general proxy off
ProxyRequests Off
# pass requests for / to the backend /www
ProxyPass / http://example2.com/www
# fix and redirect headers from the back end
ProxyPassReverse / http://example2.com/www
# fix any domains in cookies from the backend to the frontend.
ProxyPassReverseCookieDomain example2.com example.com
# fix any cookie paths form /www to the front end /
ProxyPassReverseCookiePath / /www
Затем, если html на внутреннем сайте все еще удается вернуть / www, вы можете открыть банку с червями, загрузить mod_proxy_html и попробовать:
ProxyHTMLEnable On
ProxyHTMLURLMap /www /
С помощью mod_proxy_html вы можете сделать гораздо больше в руководство по настройке
Обходной путь - использовать переадресацию кадров в панели управления.