0

我正在建立一个站点目录,但在链接到站点时遇到了一些问题..

该目录当前将站点域存储在一个表中,并通过一个 foreach 循环在页面上列出 25 个单独的域来调用它,但是当我单击链接时,我会受到欢迎

localhost/directory(我的站点根目录)/linkeddomain.com

而不仅仅是显示linkeddomain.com

我把http://www.数组调用放在前面

href='http://www.".$row['siteurl']."

然而,这对于生产来说是没有用的,因为如果有人进入他们的领域http://www.theirdomain.com,它就会出现http://www.http://www.theirdomain.com

有谁知道如何解决这个问题?

提前致谢

卢克

4

2 回答 2

0

确保基本 URL 始终是完整URL,包括方案和子域(如果适用)。

所以:

$base_url = "http://livesite.com";
$base_url = "http://localhost/john/customerX";
$base_url = "https://secure.livesite.com";

如果您的所有链接都以基本 URL 为前缀,那么您应该没问题。

请注意,在所有 URL 中,我都省略了结尾的/. 你可以选择包含它,只要确保你总是以同样的方式做它——有一个清晰的规范化形式。

于 2013-07-25T16:02:07.287 回答
0

您可以检查是否需要将 http 添加到 url。

if(!preg_match("^https?://", $url)){
    $url .= "http://" . $url;
}

只有在需要时才会添加它。

于 2013-07-25T16:07:45.227 回答