我目前面临一个有趣的问题,但无法解决。我有一个 Apache2 作为 Tomcat 的代理。代理配置如下:
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /myApp http://localhost:8080/myApp
ProxyPassReverse /myApp http://localhost:8080/myApp
一切正常,问题出在我的应用程序中的 AJAX 上。当我转到 myApp url 时:http://myurl.com/myApp我只能使用相同的 url 访问 ajax。当我使用 www url 前缀 (http://www.myurl.com/myApp) 对于 AJAX,ajax 内容未加载(apache 记录 HTTP 302)。反之亦然。我很确定我可以在 Apache 中更正它,但我不知道怎么做。你有什么建议吗?
谢谢你的帮助,
马特奥
答案1
选择一个主机名作为规范并从另一个主机名重定向到该主机名。
例如(如果我记得 Apache 语法正确的话)
<VirtualHost *:80>
ServerName example.com
Redirect 301 / http://www.example.com/
</VirtualHost>
或者(或另外)。使用根相对 URI(即以/foo
而不是开头的 URI http://example.com/foo
),以便请求保持在同一主机上。
答案2
您是否有一些用于重定向的 .htaccess ?