我有一个产生,我想合并成一个网页数据的两个网站。网站之一(“主”网站)产生大部分的网页,以及站点中的两个包含我想包括在该网页上的其他数据。我想最好的办法是使用SSI从现场两个数据包括成一个网站制作的网页。 Apache的网站上的人似乎联系站点中的两个正常,但站点中的两个回报404。如果我接触部位两个直接用浏览器,使用该网站一个使用完全相同的网址,我得到正确的数据。为什么不Apache的网站上得到一个相同的数据?
我试过两种方法可以包括从站点中的两个数据,一个直接和一个使用反向代理,但既不工程。其他(本地)的SSI和反向代理此页面上正常工作。这是两个包括行:
<!--#include virtual="/servertwodata" -->
<!--#include virtual="http://www.servertwo.com/execs/somescript.sh?task=overview" -->
我在Apache的错误日志中得到的错误是:
unable to include "http://www.servertwo.com/execs/somescript.sh?task=overview" in parsed file /var/www/html/index.html, subrequest returned 404, referer: http://www.serverone.com/index.html
有没有人有一个通用的浏览器中的线索,为什么Apache的网站上人们从现场二送404,但完全相同的网址将获得的数据好?
该值是一个(%编码)URL的路径。该URL不能包含一个方案或主机名,只有一个路径和一个可选的查询字符串。如果它不以斜线(/),然后开始它被取为相对于当前文档。
总之:它不支持外部URL。
事实证明,反向代理确实丢弃被包括作为ProxyPass伪配置参数的一部分的任何查询字符串。我删除从参数的ProxyPass查询字符串,并将其移动到SSI包括虚拟标签,它不再从站点中的两个得到404。那就是把网页上的回应是经过加密的象形文字,但什么是造成这是一个不同的问题。