12

假设我有一个由多个域访问的网站,例如domain1.comdomain2.com.

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

可以说我想使用wiki.domain1.comand wiki.domain2.com,有什么方法可以相对于域名建立指向此的链接?

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

4

2 回答 2

13

不,您必须提供整个域。要链接 from domain1.comto wiki.domain1.com,链接必须看起来像href="http://wiki.domain1.com"

于 2012-05-29T04:33:38.303 回答
5

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

如果你真的不能使用绝对 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);

将其保存到文件中,例如。imgproxy.php,然后您可以像这样链接其他子域上的图像:

<img src="imgproxy.php?url=images/logo.png">
于 2013-07-30T00:41:51.990 回答