使用 Isape_Rewrite3 在 IIS 6 上配置反向代理
Configuring a reverse proxy on IIS 6 with Isape_Rewrite3
我在 Windows Server 2003 上 运行 IIS6。
我正在尝试在我的一个网站上设置一个需要反向代理的工具。
据我了解,我需要捕获指向 my.domain.com/toolname/subfolder/javascript.js
的脚本引用以从 library.provider.com/javascript.js
.
中提取文件
工具提供者给出的例子是,
"In Apache2, add this to your <VirtualHost>
entry for the site:"
ProxyPass /subfolder/ http://library.provider.com/
ProxyPassReverse /subfolder/ http://library.provider.com/
"In NGINX, add this to your server
block for the site:"
location /subfolder/ {
proxy_pass http://library.provider.com/;
}
我尝试了在 SO 问题中找到的示例,URL Rewrite of a subdirectory to a different domain using IIS,根据我的情况调整它:
RewriteCond Host: (.*)
RewriteRule ^/subfolder/$|^/subfolder/(.*) http://library.provider.com/ [P]
这似乎没有用... RewriteLog 看起来像这样:
... (2) init rewrite engine with requested uri /subfolder/javascript.js
... (1) Htaccess process request [drive]:[path]\httpd.conf
... (1) Htaccess process request [drive]:[path]\my.domain.com\.htaccess
... (3) applying pattern '^/subfolder/$|^/subfolder/(.*)' to uri 'subfolder/javascript.js'
我注意到最后一个条目中的 'uri' 字符串不包含前导正斜杠,但除此之外我很困惑。
我使用内置的 'RegEx Test' 工具测试了模式匹配,如果我通过了 /subfolder/javascript.js
,我会得到预期的 http://library.provider.com/javascript.js
。
看来我真的很接近答案了,任何帮助将不胜感激。
请在您的 .htaccess 中尝试以下配置:
RewriteBase /
RewriteRule ^subfolder/(.*) http://library.provider.com/ [NC,P]
我在 Windows Server 2003 上 运行 IIS6。
我正在尝试在我的一个网站上设置一个需要反向代理的工具。
据我了解,我需要捕获指向 my.domain.com/toolname/subfolder/javascript.js
的脚本引用以从 library.provider.com/javascript.js
.
工具提供者给出的例子是,
"In Apache2, add this to your <VirtualHost>
entry for the site:"
ProxyPass /subfolder/ http://library.provider.com/
ProxyPassReverse /subfolder/ http://library.provider.com/
"In NGINX, add this to your server
block for the site:"
location /subfolder/ {
proxy_pass http://library.provider.com/;
}
我尝试了在 SO 问题中找到的示例,URL Rewrite of a subdirectory to a different domain using IIS,根据我的情况调整它:
RewriteCond Host: (.*)
RewriteRule ^/subfolder/$|^/subfolder/(.*) http://library.provider.com/ [P]
这似乎没有用... RewriteLog 看起来像这样:
... (2) init rewrite engine with requested uri /subfolder/javascript.js
... (1) Htaccess process request [drive]:[path]\httpd.conf
... (1) Htaccess process request [drive]:[path]\my.domain.com\.htaccess
... (3) applying pattern '^/subfolder/$|^/subfolder/(.*)' to uri 'subfolder/javascript.js'
我注意到最后一个条目中的 'uri' 字符串不包含前导正斜杠,但除此之外我很困惑。
我使用内置的 'RegEx Test' 工具测试了模式匹配,如果我通过了 /subfolder/javascript.js
,我会得到预期的 http://library.provider.com/javascript.js
。
看来我真的很接近答案了,任何帮助将不胜感激。
请在您的 .htaccess 中尝试以下配置:
RewriteBase /
RewriteRule ^subfolder/(.*) http://library.provider.com/ [NC,P]