我想这个问题已经被问过很多次了,但我真的不确定我应该搜索什么。
基本上,我正在托管一个运行在PHP上的网站
如果我在该网站上添加了一个页面,假设该页面为http://example.com/directory/page.php
,
然后我为该页面添加了一个锚点,链接默认为http://example.com/#anchor
。
例如
<!-- http://example.com/directory/page.php -->
<a href="#anchor">Anchor</a>
而不是链接到:http://example.com/directory/page.php#anchor
,
它链接到http://example.com#anchor
。
我不想每次添加非外部链接时都必须回显当前页面的URL,那么我需要添加什么来在PHP中设置当前页面以防止这种情况发生呢?
那么我需要添加什么来在PHP中设置当前页面以防止这种情况发生
什么都没有。您需要(几乎可以肯定)删除<base>
标记。
尝试使用<a href="<?php echo $_SERVER['PHP_SELF'];?>#anchor">Anchor</a>
您可以尝试使用base
标记,看看它是否能解决您的问题。
http://www.w3schools.com/tags/tag_base.asp