Как я могу сослаться на относительный поддомен в HTML?

Допустим, у меня есть веб-сайт, доступ к которому осуществляется несколькими доменами, напримерdomain1.com а такжеdomain2.com.

Если у меня есть относительная ссылка, такая какhref="/wiki"тогда, независимо от того, по какому доменному имени я захожу на сайт, эта ссылка приведет меня в нужное место.

Скажем, вместо этого я хотел использоватьwiki.domain1.com а такжеwiki.domain2.comЕсть ли способ сделать ссылку на это относительно доменного имени?

Если нет, существует ли элегантный способ обработки ссылки, такой как ссылка вики выше, когда несколько доменов указывают на один и тот же сервер?

 Christian Varga29 мая 2012 г., 06:32
К сведению, любая ссылка, начинающаяся с косой черты, является абсолютной, а не относительной.
 Denys Séguret29 мая 2012 г., 14:42
Используя javascript, вы можете легко изменить все ссылки на стороне клиента, чтобы вставить & quot; wiki. & Quot; если они отправят на & quot;domain* .Com / вики & Quot ;.

Ответы на вопрос(2)

Это невозможно с относительными путями, потому что субдомен на самом деле является совершенно другим доменом.

Если вы действительно не можете использовать абсолютный 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">

Нет. Вам придется предоставить весь домен. Для ссылки изdomain1.com вwiki.domain1.com, ссылка должна выглядеть такhref="http://wiki.domain1.com".

 Alex29 мая 2012 г., 09:02
Спасибо, есть ли элегантный способ справиться с этим, когда несколько доменных имен ссылаются на один и тот же сервер? (Добавив это к вопросу).
 29 мая 2012 г., 09:04
Обычно вы можете выяснить текущее доменное имя, используя$_SERVER['HTTP_HOST'], Напишите свой сценарий вокруг этого ...

Ваш ответ на вопрос