2010-07-16 13 views
22

So che è possibile modificare un file host per reindirizzare un URL di un indirizzo IP in modo da:Modifica del file hosts per reindirizzare l'url?

127.0.0.1 google.com

ma come si fa a forzare un reindirizzamento a un URL invece di un indirizzo IP ?

ad es.

mysite.com/welcome.aspx google.com

L'URL esplicito non funziona e IP ipotizzando di mysite.com è 222.222.222.222, il seguente non funziona neanche:

222,222. 222.222/welcome.aspx google.com

risposta

7

Non è possibile. Un reindirizzamento richiede che un server web accetti la prima richiesta e rispedisca il reindirizzamento. Il file "hosts" ti consente di impostare i tuoi record DNS. il file

+4

Non c'è alcun motivo per cui un reindirizzamento non può essere fatto a livello locale. – Pacerier

0

eserciti:

1.2.3.4 google.com 

1.2.3.4 - ip del server.

Eseguire lo script sul server per reindirizzare gli utenti all'URL desiderati.

7

No, ma è possibile aprire un server Web, ad esempio, 127.0.0.77 e utilizzarlo per verificare se l'URI della richiesta è "/welcome.aspx" ... Se sì, reindirizzare a google, se non caricare il sito originale

127.0.0.77  mysite.com 
+1

Buon punto, l'ho usato come blocco pubblicità di stopgap per ca.10 domini (non si adatta bene a un numero maggiore di domini, almeno non su Windows) – Piskvor

+1

@Piskvor, si suppone che il file 'hosts' riduca a migliaia di righe ... Si prega di elaborare cosa intendi per" doesn 'scala bene', ottieni BSOD? – Pacerier

0

Si potrebbe usare la direttiva RedirectMatch in Apache per fare qualcosa di simile che si desidera.

È piuttosto semplice.

RedirectMatch/http://222.222.222.222/

In ogni caso, non vedo alcuna ragione per fare quella cosa. Non stai cercando di intercettare il traffico? Ci sono modi migliori. Per Linux box come router: iptables -j REDIRECT + Squid o Apache. Per i router Cisco, è possibile utilizzare WCCP in un server cache o Web ...

1

Applicare questo trucco.

Per prima cosa è necessario l'indirizzo IP dell'URL a cui si desidera reindirizzare. Consente di reindirizzare a stackoverflow.com Per trovarlo, utilizzare il comando ping in un prompt dei comandi. Digitare:

ping stackoverflow.com 

nella finestra di prompt dei comandi e vedrete l'indirizzo IP numerico di StackOverflow. Ora che usano IP nel file host

104.16.36.249 google.com

Yay ora Google sta scontando StackOverflow :)

+4

So che questo thread è piuttosto vecchio, ma vorrei aggiungere una nota qui. Questa risposta ** non funzionerà mai ** se il server utilizza CDN o host virtuali. Questo ** si applica solo ** su server con ** IP dedicati **. Questa risposta sembra corretta, ma è ** totalmente sbagliata ** per il caso di StackOverflow. Usa Cloudflare come CDN – mob41

Problemi correlati