Я нашел несколько других вопросов, но ни один из них не является тем, что я пытаюсь сделать.
Мне нужно указать www.mywebsite.com/certainfolder/ Блабли /? Foo = бар
Для www.anotherwebsite.com/certainfolder/ Блабли /? Foo = бар
Поэтому, если на моем веб-сайте есть путь к «определенной папке», мне нужно указать на эту папку (со всеми другими сегментами URI и получить параметры) на другой веб-сайт.
Важно то, что URL остается www.mywebsite.com/terminfolder/blabla/?foo=bar
Он просто должен получать контент с www.anotherwebsite.com, но не может изменить URL.
Я попробовал что-то вроде этого, которое не работает:
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/certainfolder
RewriteRule ^/$ http://www.anotherwebsite.com/certainfolder/$1 [P,L]
Я знаю, что могу использовать ProxyPass и ProxyPassReverse в файле конфигурации vhost, но я не могу получить доступ к этому файлу, поэтому мне нужно сделать это в .htaccess
Есть ли специалист по .htaccess, который может мне помочь?
Предполагая, что веб-сайт не перенаправляет себя, это возможно, используя mod_proxy + mod_proxy_http (/ http2)
RewriteEngine on
RewriteRule ^certainfolder/$ http://www.anotherwebsite.com/certainfolder/$1 [P]
mod_proxy позволяет «прокси» запросы от другого ресурса к вашему собственному домену.
mod_proxy требуется только на вашем собственном хосте, а не в удаленной части.
mod_proxy_http — это часть, которая обрабатывает http-запросы для mod_proxy. (поскольку mod_proxy может также обслуживать другие протоколы, кроме http, он сделан модульным). В общей командной строке установки linux введите: a2enmod proxy proxy_http && service apache2 restart
Других решений пока нет …