正如this question中讨论的那样,我使用带有条件流控制语句的Apache mod_include来根据父页面的URL改变包含的shtml文件的行为。我遇到的问题是,网站上的一些页面是PHP页面,这似乎意味着mod_include指令被忽略(而不是作为标准html注释处理)。在PHP中使用Apache服务器端流量控制?
有什么办法让PHP页面正确处理这些mod_include指令吗?
具体而言,这里是我想有处理:
<!--#if expr='"$DOCUMENT_NAME" = /(podcasts\.php)|(series\.php)/' -->
<li id="features" class="current">
<!--#else -->
<li id="features">
<!--#endif -->
类似的线块,网站上的文件的.shtml工作,但对于PHP页面,所有的上述最终输出到客户端。
编辑:我最近想到的解决方案是模仿PHP文件中包含的shtml文件的功能。我不喜欢这个解决方案,因为这意味着将来添加链接需要将它们添加到多个位置。
你有'问题<! - #包括虚拟= “foo.php” - >'不是没有被mod_include负责处理执行或.php文件?前者是 – VolkerK 2010-08-30 01:03:07
。在这种情况下,不是专门用'<! - #include - >',而是用'<! - #if expr ='“$ DOCUMENT_NAME”= /(mypage\.php)/ - >' – 2010-08-30 02:01:38
编辑的问题提供更多细节。 – 2010-08-30 02:04:40