2016-03-09 14 views
6

Ad esempio, ho un sito Web con il dominio example.com. In quel sito, ho una pagina come questa example.com/hello. Ora devo indicare il mio secondo dominio hello.com a quella pagina example.com/hello. Non dovrebbe essere un re-direct. Il visitatore dovrebbe rimanere nello hello.com ma vedere il contenuto della pagina example.com/hello. È possibile? Possiamo farlo in dns o in nginx?Come indicare un dominio nella pagina di un altro sito Web?

Il log di accesso dopo aver usato passaggio delega:

123.231.120.120 - - [10/Mar/2016:19:53:18 +0530] "GET/HTTP/1.1" 200 1598 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 
123.231.120.120 - - [10/Mar/2016:19:53:18 +0530] "GET /a4e1020a9f19bd46f895c136e8e9ecb839666e7b.js?meteor_js_resource=true HTTP/1.1" 404 44 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.$ 
123.231.120.120 - - [10/Mar/2016:19:53:18 +0530] "GET /9b342ac50483cb063b76a0b64df1e2d913a82675.css?meteor_css_resource=true HTTP/1.1" 200 73 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.262$ 
123.231.120.120 - - [10/Mar/2016:19:53:18 +0530] "GET /images/favicons/favicon-16x16.png HTTP/1.1" 200 1556 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 
123.231.120.120 - - [10/Mar/2016:19:53:19 +0530] "GET /images/favicons/favicon-96x96.png HTTP/1.1" 200 1556 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 
123.231.120.120 - - [10/Mar/2016:19:53:19 +0530] "GET /images/favicons/favicon-32x32.png HTTP/1.1" 200 1556 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 
123.231.120.120 - - [10/Mar/2016:19:53:19 +0530] "GET /images/favicons/android-icon-192x192.png HTTP/1.1" 200 1556 "http://swimamerica.lk/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36" 
+0

se 'hello' è dir perché non è vero impostare il server per quel dominio? –

+0

Ciao è una pagina ... Non un semplice sito html che ha un indice nel qual caso possiamo puntare il dominio. È un sito costruito con meteore :-( – THpubs

+0

Penso che dovresti puntare allo stesso posto di esempio.com e scrivere regole di riscrittura che riscriverebbero url 'hello.com /(.*)' a './Hello/$ 1' –

risposta

5

È possibile utilizzare proxy_passdirective. Basta creare un nuovo server associato al dominio hello.com e poi per location = / impostato proxy_pass uguale a http://example.com/hello:

server { 
    server_name hello.com; 
    # ... 
    location =/{ 
     proxy_pass http://example.com/hello/; 
    } 

    # serve static content (ugly way) 
    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|rss|txt)$ { 
     proxy_pass http://example.com/hello/$uri$is_args$args; 
    } 

    # serve static content (better way, 
    # but requires collection all assets under the common root) 
    location ~ /static/ { 
     proxy_pass http://example.com/static/; 
    } 
} 

UPD: Ecco una soluzione esatta per la vostra situazione:

server { 
    server_name swimamerica.lk; 

    location =/{ 
     proxy_pass http://killerwhales.lk/swimamerica; 
    } 

    # serve static content (ugly way) - added woff and woff2 extentions 
    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|rss|txt|woff|woff2)$ { 
     proxy_pass http://killerwhales.lk$uri$is_args$args; 
    } 

    # added location for web sockets 
    location ~* sockjs { 
     proxy_pass http://killerwhales.lk$uri$is_args$args; 
    } 
} 
+0

Grazie, ma un problema ... Il sito ora tenta di caricare tutte le risorse (js, css, image, ecc.) Come ciao dominio. Esempio: 'hello.com/main.js' ma sono in' esempio.com/main.js'. Quindi, il sito non riesce a caricare – THpubs

+1

@THpubs, ho aggiornato la risposta –

+0

Grazie, l'ho provato ma non funziona ancora – THpubs

-2

Utilizzare il proxy_pass direttiva. Basta creare un nuovo server associato al dominio hello.com e poi per location = / impostato proxy_pass pari a http://domain.com/hello:

server { 
    server_name hello.com; 
    # ... 
    location =/{ 
     proxy_pass http://domain.com/hello/; 
    } 

    # serve static content (ugly way) 
    location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml|rss|txt)$ { 
     proxy_pass http://domain.com/hello/$uri$is_args$args; 
    } 

    # serve static content (better way, 
    # but requires collection all assets under the common root) 
    location ~ /static/ { 
     proxy_pass http://domain.com/static/; 
    } 
} 
Problemi correlati