Apache的重写条件是-U,它假设检查URL是否可用。 在我的环境中,我在不同服务器上有不同的资源。所以我想检查服务器A上是否有资源,如果没有使用服务器B.本地我没有问题,因为-f正在执行该技巧并检查该文件是否存在于本地主机上。
所以问题是:任何人都可以确认-U是(不)工作并给我一个例子吗?
这不起作用......
RewriteCond http://123.123.123.123:8080/resources/Php%{REQUEST_URI} -U
RewriteRule ^/(.*) http://123.123.123.123:8080/resources/Php/$1 [R,L]
提前感谢您的帮助!
答案 0 :(得分:1)
-U
仅在apache进程内部起作用。您无法使用此规则检查某个远程URL是否有效...您需要找到其他方式来查找正确的服务器。
无论如何,您应该知道资源/ URI的位置,并编写规则来路由请求或使用RewriteMap编写静态映射。