使用代理而不是使用htaccess rewriteRuleredirect

我正在开发一个webapp和静态文件,我简单地在localhost使用Apache,而后端是在localhost上运行的couchdb实例localhost:5984

webapp始终与后端的文件进行交互。 所以当试图在apache上testing所有文件请求到localhost:5984时发生了什么事情,因为跨域策略而被阻止,所以唯一的办法就是启动浏览器,通过设置标志来忽略它。

但是,当我试图在手机上testing应用程序时,例如ipad或iphone,我又陷入了困境。

目前我在我的.htaccess文件中有这个。

 RewriteEngine on # these are 302 http redirections instead of serving as a proxy RewriteRule auth http://localhost:5984/auth [L] RewriteRule db/([\s\S]+) http://localhost:5984/db/$1 [L] RewriteRule send/([\s\S]+) http://localhost:5984/send/$1 [L] # these are just redirections to static files and work great RewriteRule ^([az/.]+) _attachments/$1 [L] RewriteRule ^$ _attachments/ [L] 

正如你所看到的,我不知道如何处理Apacheconfiguration不幸的。 但是现在发生的事情是,对于这些规则中的一些,apache只是简单地redirect页面,而不是将其作为代理服务器提供,从而导致跨域问题。

同样,在第一个auth规则中,我发送POST和DELETE请求作为redirect而不是代理,它不会传递通过POST的数据。

所以我想实现的是激活某种特性(如果存在的话),这将使apache简单地渲染页面,而不是redirect到本地域。 (我把它命名为代理,但也许这不是正确的术语,对于术语错误感到抱歉)。

是否有可能实现这样的行动? 提前致谢

看看这些链接/选项:

  1. [P]标志:

  2. mod_proxy可能 – 但我认为#1应该是足够的,如果它在同一台服务器上):