如何在HTML中引用相对子域?

如何在HTML中引用相对子域?,html,hyperlink,subdomain,Html,Hyperlink,Subdomain,比如说,我有一个可以被多个域访问的网站,例如domain1.com和domain2.com 如果我有一个相对链接,例如href=“/wiki”,那么无论我使用哪个域名访问网站,该链接都会将我带到正确的位置 换言之,我想使用wiki.domain1.com和wiki.domain2.com,有什么方法可以链接到这个域名吗 如果没有,当多个域指向同一服务器时,是否有一种优雅的方式来处理上面的wiki链接?否。您必须给出整个域。要从domain1.com链接到wiki.domain1.com,链接必须

比如说,我有一个可以被多个域访问的网站,例如
domain1.com
domain2.com

如果我有一个相对链接,例如
href=“/wiki”
,那么无论我使用哪个域名访问网站,该链接都会将我带到正确的位置

换言之,我想使用
wiki.domain1.com
wiki.domain2.com
,有什么方法可以链接到这个域名吗


如果没有,当多个域指向同一服务器时,是否有一种优雅的方式来处理上面的wiki链接?

否。您必须给出整个域。要从
domain1.com
链接到
wiki.domain1.com
,链接必须看起来像
href=”http://wiki.domain1.com“

使用相对路径是不可能的,因为子域实际上是一个完全不同的域

如果您确实不能使用绝对URL,但可以使用PHP,则可以尝试以下代理脚本:

<?php

if(!isset($_GET['url'])) {
    die('Missing URL!');
}

$subdomain_url = 'http://subdomain.example.com/';
$file_path = $_GET['url'];

$file_url = $subdomain_url . $file_path;

$mime = finfo_open(FILEINFO_MIME, $file_url);


header('Content-Type: ' . $mime);
header('Content-Transfer-Encoding: Binary'); 
header('Content-disposition: inline; filename="' . basename($file_path) . '"'); 

readfile($file_url);

FYI任何以正斜杠开头的链接都是绝对的,而不是相对的。使用javascript,您可以轻松地更改客户端所有链接以插入“wiki”。如果它们发送到“*.com/wiki”。谢谢,当多个域名引用同一服务器时,有没有一种优雅的方法来处理这个问题?(将此添加到问题中)。您通常可以使用
$\u SERVER['HTTP\u HOST']
计算当前域名。围绕这一点写下你的剧本。。。
<img src="imgproxy.php?url=images/logo.png">