漂亮的URL与Apache代理

我在我的业务networking上运行一些networking摄像头(带embedded式服务器),这些networking摄像头可以通过networking访问,我想制作Apache可以路由到他们运行的端口的“漂亮”的URL,所以我的妻子不需要记住端口号码。

例如,其中一台摄像机是本地IP 192.168.0.200,而摄像头服务器(我正在使用安卓手机上的IP摄像头 )正在端口7890上运行。我将端口转发给我的路由器,我可以通过networking访问它mydomain.com:7890。 我想要做的就是给它一个像mydomain.com/cam/1一个不错的URL,并有Apache路由到正确的LAN IP /端口。 这在我的httpd.conf也可以正常工作:

 ProxyPass /cams/1 http://192.168.0.200:7890 ProxyPassReverse /cams/1 http://192.168.0.200:7890 

我可以在浏览器中键入mydomain.com/cam/1并获取它提供的html页面。

问题是,它最初服务的页面只是一堆链接,即以下内容:

在这里输入图像说明

每个链接都是相对于页面的根。 例如,我通常使用第三个链接,“使用Java浏览器插件”。 这个链接的URL是/java.html 。 如果我使用“绝对”urlmydomain.com:7890/java.htmlmydomain.com:7890/java.html预期工作。 但是启用Proxying后,生成的链接是mydomin.com/java.html ,我的根文件夹中没有java.html(即使是我做的,它将是与networking摄像头不同的文件)。

所以我的问题是,如何继续拥有这些漂亮的url,但是在被网页内部的url(或任意的子url)仍然遵守/cams/1偏移量,这样它们都能正常工作?

您正在查看的页面的HTML由networking摄像头服务器生成,而不是由Apache生成。 这就是您需要修复configuration的地方。