2013-11-28 35 views
5

Sviluppatore freelance di discrete novità e sto cercando di aggiungere una versione locale di un sito web su cui sto lavorando per un ambiente di sviluppo.Cambia il mio file hosts per instradare a una cartella e non a un ip

Ho il mio localhost impostato.

127.0.0.1 localhost 

La sintassi che stavo usando, ma evidentemente non è corretto è

127.0.0.1/wordpress blahblahsite.ca 

Che strada devo prendere per preservare il mio localhost, ma hanno blahblahsite.ca percorso alla mia cartella locale e non il live luogo?

+1

i file hosts sono un semplice mapping ip-> hostame. Non hanno NIENTE da fare con gli URL, tranne che gli URL possono contenere nomi di host/ips. –

risposta

2

Come detto in un commento, il file hosts ha la funzione di mappatura indirizzi IP ai nomi host, cioè 127.0.0.1

nomi host hanno la funzione di essere alias amichevoli umani per gli indirizzi IP, vale a dire blahblahsite. ca

un hostname è sinonimo di un'intestazione host in un URL a un server web, vale a dire http://blahblahsite.ca

L'intestazione host ha due funzioni:

  • risoluzione della richiesta all'indirizzo IP del server Web. Questo viene fatto attraverso una query dns, o nel tuo caso attraverso il file hosts che ha la precedenza sulla query dns.
  • quando la richiesta arriva al server Web, associando la richiesta all'host virtuale corretto per un'ulteriore elaborazione. Questo viene fatto attraverso l'host virtuale predefinito (catch-all) o attraverso un host virtuale basato nome (dove il nome server o ServerAlias ​​è impostato su blahblahsite.ca)

Un URL di un server web ha una barra qualcosa seguendo l'intestazione host. Questo è chiamato URI. L'URI è il percorso relativo nel server web alla pagina richiesta. L'URI può essere mappato attraverso una moltitudine di meccanismi, ma i mirror nella sua forma più semplice sono le sottodirectory della directory condivisa dall'host virtuale dei server web.

Quindi, /wordpress è un URI condiviso dal server Web in un modo o nell'altro.

Principio del URL: Protocollo: // IntestazioneHost/URI

http://127.0.0.1/wordpress 
http://blahblahsite.ca/wordpress 

sarebbe sia valida URL: s sul computer locale, se ha un web server condividendo l'URI/wordpress a qualsiasi intestazione host o l'intestazione host blahblahsite.ca specifico, ed ha la seguente voce nella sua HostFile:

127.0.0.1 blahblahsite.ca 

Quindi, ottenere una buona principianti libro su Apache, leggere e cercare le tue ali, quindi passare a xampp. L'URI è dove avvengono le cose interessanti, ma per prima cosa sono necessarie alcune nozioni di base sul web server.

+1

Anche se presenti informazioni valide, lo scopo di questo sito Web è fornire soluzioni pronte all'uso, piuttosto che scolarizzare le persone come hai fatto qui. Dicendoci di comprare un libro e fondamentalmente "non-stupidi" noi stessi non è costruttivo né utile. – Adal

9

Sebbene siano trascorsi due anni dalla risposta alla domanda.I miei due centesimi se qualcuno inciampa su questa domanda e in realtà vuole impostare rapidamente senza scavare nella documentazione. Qui va: Inserire questo in file hosts:

127.0.0.1 blahblahsite.ca 

E nella cartella apache, trovare httpd-vhosts.conf file. In una tipica installazione XAMPP su Windows, che troverete qui:

Drive:\xampp\apache\conf\extra\httpd-vhosts.conf 

Si dovrebbe trovare paio o più eample configurazioni di host virtuale commentata, basta copiare/incollare o togliere il commento uno di quelli e apportare le modifiche di seguito:

<VirtualHost blahblahsite.ca:80> 
    ServerAdmin [email protected] 
    DocumentRoot "Drive:\xampp\htdocs\wordpress" 
    ServerName blahblahsite.ca 
    ServerAlias blahblahsite.ca 
    ##ErrorLog "logs/blahblahsite.ca.log" 
    ##CustomLog "logs/blahblahsite.ca.log" combined 
</VirtualHost> 

Ricordare di modificare: "Drive: \ xampp \ htdocs \ wordpress" nella directory dei file del sito Web. Salva i file, riavvia xampp e ora blahblahsite.ca dovrebbe funzionare dalla barra degli indirizzi del browser. Anche se i passaggi sono abbastanza semplici e auto esplicativi, ma fammi sapere se hai domande o incontri e problemi.

+2

Questo ha funzionato per me. Aggiungerei solo una cosa (che potrebbe sembrare basilare per molti, ma potrebbe far risparmiare molto tempo a molti altri): assicurati che l'inclusione per il file di configurazione non sia commentata in httpd.conf. –

+0

Questo ha funzionato anche per me, in combinazione con il commento di Alvaro. NOTA: eseguendo Apache sul computer locale Windows, avevo anche bisogno di un'ultima regolazione spiegata qui: https://stackoverflow.com/questions/8413042/client-denied-by-server-configuration (e il seguente fornisce un contesto utile, sebbene non il valore valido come visto nel primo link: http://www.noah.org/wiki/Apache2_VirtualHost_403_error) Questa risposta dovrebbe essere accettata come soluzione. – Adal