2012-01-06 96 views
1

我想在代理主机上使用子目录uri来执行sintra应用程序的mod_proxy实现。这里是我的Apache代理配置区域:使用带有子域的apache做反向代理问题

ProxyRequests Off 
ProxyPass /api/ http://127.0.0.1:9292/ 
ProxyPassReverse /api/ http://127.0.0.1:9292/ 
ProxyPreserveHost on 

我遇到的问题是,是,西纳特拉呈现的页面中的链接不会造成/ API前缀上的链接...例如,当我ERB模板内做to('/some_page'),它给了我

http://www.externalhost.com/some_page

,而不是

http://www.externalhost.com/api/some_page

有谁知道如何正确地做到这一点,其中子目录将生成的URL兑现?要运行的后端服务器,我只是使用默认为:rackup config.ru在我的配置是:不必有

require 'rubygems' 
load File.join(File.dirname(__FILE__), 'app.rb') 
run App 

回答

1
ProxyRequests Off 
ProxyPass /api/ http://127.0.0.1:9292/api/ 
ProxyPassReverse /api/ http://127.0.0.1:9292/api/ 
ProxyPreserveHost on 
+0

我试图做到这一点/ API /目的地,但是这样做是正确的。谢谢! – ejlevin1 2012-01-09 23:07:48