Могут ли ProxyPass и ProxyPassReverse работать в htaccess?

Мы никогда не настраивали прокси. Я'Я использую виртуальный хостинг, поэтому для установки директив Apache мне нужно использовать .htaccess. Могу ли я использовать .htaccess, чтобы сделать что-то вроде ниже? Какие-нибудь ограничения?

ProxyRequests Off
ProxyPass /img/ http://internal.example.com/img/
ProxyPass /app/ http://internal.example.com/app/

ProxyPassReverse / http://internal.example.com/

Ответы на вопрос(1)

Решение Вопроса

Вы не можете использоватьProxyPass в файле htaccess, Документация говорит, что это применимо только в контексте:

Контекст: конфигурация сервера, виртуальный хост, каталог

который исключает htaccess (вы можете 'не иметь блок в htaccess). Тем не менее, выМожно использоватьProxyPassReverse внутренне переписать поле Location прокси-запросов, которые вызывают перенаправление. Вы'просто нужно использовать mod_rewriteP флаг для прокси вместоProxyPass, Так что-то вроде:

RewriteEngine On
RewriteRule ^/?img/(.*)$ http://internal.example.com/img/$1 [L,P]
RewriteRule ^/?app/(.*)$ http://internal.example.com/app/$1 [L,P]

ProxyPassReverse / http://internal.example.com/

Просто чтобы быть ясно, вы не можете использоватьProxyPass или же ProxyPassReverse в файле htaccess, но выМожно использованиеProxyPassReverse с правилами mod_rewrite, которые используютP флаг.

 CR4717 апр. 2014 г., 16:27
м на OSX 10.9 и яЯ также не могу получить ProxyPassReverse.
 Jon Lin22 июл. 2017 г., 17:54
@ Райан Я пытался указать на эту часть документации:Note that this ProxyPassReverse directive can also be used in conjunction with the proxy feature (RewriteRule ... [P]) from mod_rewrite because it doesn't depend on a corresponding ProxyPass directive. гдеProxyPassReverse может использоваться вместе сP флаг в правиле перезаписи, но все еще не в файле htaccess
 Kevin Nagurski09 мая 2018 г., 13:20
Я застрял, пытаясь заставить прокси работать несколько дней, но это действительно помогло. Didn»не нужноProxyPassReverse / http://internal.example.com/ часть в конце
 sigi09 янв. 2017 г., 14:01
В документации говорится, что L Flag неявно установлен, и предупреждает, что использование P является очень плохой идеей производительности.
 Joe Fletcher10 окт. 2012 г., 17:59
Brilliant! Это действительно помогло мне понять это. Спасибо!
 Paul Draper06 окт. 2013 г., 05:38
Вы не можете использоватьProxyPassReverse в htaccess тоже нет (httpd.apache.org/docs/current/mod/...)
 Michael02 янв. 2014 г., 22:50
Это работает, но когда я делаю изменения на одной из внутренних страниц и перезагружаюсь, я неЯ даже не вижу, как он попадает на внутренний сервер, даже после очистки кеша в браузере. Это говорит о том, что что-то кэшируется на сервере, но как это изменить?
 Nux03 мар. 2015 г., 15:45
Обратите внимание, что вы не можете использовать это "прокси» с сервером изображений SSL. Чтобы иметь возможность использовать SSL, вам нужно добавитьSSLProxyEngine On в httpd.conf (или в файле конфигурации VirtualHost).
 Gary Rudolph04 апр. 2014 г., 05:44
Когда я использую ProxyPassReverse в htaccess на OSX Server 3.1.1, я получаю следующее "ProxyPassReverse не допускается здесь "Я"
 Gianluca P.25 февр. 2015 г., 13:03
Я использую это в .htaccess, чтобы исправить перенаправления:Header edit Location ^http://internal\.example\.com/(.*) http://example.com/$1
 andig14 янв. 2016 г., 13:17
Apache 2.4 не работаетt разрешить ProxyPass в <каталог>
 Ryan19 июл. 2017 г., 19:11
Я до сих пор нене понимаю ваш пост (и конкретно нене понимаю вашу последнюю строку, начиная с "Просто быть чистым"). Как и другие комментаторы здесь, мой сервер выдает ошибку о том, чтоProxyPassReverse здесь не разрешено (в.htaccess файл, предположительно, так какs, что говорят документы).

Ваш ответ на вопрос