0

我有一个通用的 header.php,几乎包含在网站的每个页面中。我在 header.php 文件中有指向不同资源的相对链接。一旦我将它包含在位于根文件夹下不同子文件夹中的其他页面中,一些链接就会断开。我可以将 header.php 中的所有链接设为绝对链接。现在又出现了另一个问题:如果您将应用程序移动到另一个域并将其放在 wwwroot 下的某个位置,那么绝对链接将不起作用。我无法在 PHP 中找到一种方法来提取作为此应用程序根的 URL 部分。我最终为应用程序根定义了一个变量,并在 header.php 中的每个链接前面加上这个变量。这样,当这个应用程序从一个地方移动到另一个地方时,我只需要更改一个变量。

我想知道是否有其他更好的方法来处理这种情况。

您的反馈将不胜感激。

编辑:希望收到更多反馈。

4

1 回答 1

0

你把它写成一个普通的 header.php 文件,就像使用中心变量一样,你可以使用<base>HTML 元素——但这仅限于 HTML。

您可以自己创建一个映射函数,该函数能够将绝对 URLS 解析为请求 URI,或者能够将相对 URLS 解析为它们所产生的上下文,以便它们可以再次绝对相对于请求 URI 映射。

然后你可以实现一个输出过滤器,它自己处理 URI,你可以为特殊处理做一些特殊的前缀。

于 2012-04-17T19:45:52.947 回答