2012-05-29 13 views
8

Diciamo che ho un sito Web a cui si accede da più domini, ad es. domain1.com e domain2.com.Come posso fare riferimento a un sottodominio relativo in HTML?

Se si dispone di un collegamento relativo, ad esempio href="/wiki", indipendentemente dal nome di dominio che accedo al sito Web, tale collegamento mi porterà nella posizione corretta.

Diciamo invece che volevo usare wiki.domain1.com e wiki.domain2.com, c'è un modo per creare un collegamento a questo relativo al nome di dominio?

In caso contrario, esiste un modo elegante per gestire un collegamento come il collegamento wiki sopra quando più domini puntano allo stesso server?

+1

FYI link inizia con una barra in avanti è assoluto, non relativo. –

+0

Utilizzando javascript è possibile modificare facilmente tutti i collegamenti sul lato client per inserire "wiki". se inviano a "http: //domain*.com/wiki". –

risposta

8

No. Dovrai fornire l'intero dominio. Per collegare da domain1.com a wiki.domain1.com, il collegamento deve apparire come href="http://wiki.domain1.com".

+0

Grazie, c'è un modo elegante per gestire questo quando più nomi di dominio si riferiscono allo stesso server? (Aggiungendo questo alla domanda). – Alex

+0

Di solito è possibile capire il nome del dominio corrente usando '$ _SERVER ['HTTP_HOST']'. Scrivi il tuo copione intorno a quello ... – deceze

4

Non è possibile con percorsi relativi, perché il sottodominio è in realtà un dominio completamente diverso.

Se proprio non è possibile utilizzare URL assoluto, ma può utilizzare PHP, si potrebbe provare questo script proxy:

<?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); 

Salva in un file, ad esempio. imgproxy.php, e quindi è possibile collegare le immagini d'altro sottodominio in questo modo:

<img src="imgproxy.php?url=images/logo.png"> 
Problemi correlati