Domanda

In altre parole, non importa se io uso http://www.example.com/ o http://wwW.exAmPLe.COm/ ?

Ho corso in strane problemi con host-names ultimamente: ho un webserver Apache2.2 + PHP5.1.4, accessibile da tutti i tipi di browser. gli utenti di IE6 in particolare (. specialmente quando il loro stringa UA è gravato da numerosi BHO, nessun modello ancora) sembrano avere problemi di accesso al sito (biscotti scompaiono, JS si rifiuta di caricare) quando si entra tramite http://www.Example.com/ , ma non http://www.example.com/

Ho controllato il HTTP e DNS RFC, il mio politiche P3P , le impostazioni dei cookie e SOP ; ma da nessuna parte ho visto nemmeno una menzione di nomi di dominio essere maiuscole e minuscole.

(lo so percorso e query string sono case sensitive (?x=foo è diverso da ?x=Foo) e trattarli in modo appropriato; sto facendo nessuna analisi / elaborazione sul nome di dominio nel mio codice)

sto facendo qualcosa di sbagliato o è solo un po 'del browser + barra degli strumenti di merda dovrei aggirare?

È stato utile?

Soluzione

I nomi di dominio sono non maiuscole e minuscole; Example.com risolverà allo stesso IP come eXaMpLe.CoM. Se un server Web o un browser tratta l'intestazione Host come maiuscole e minuscole, questo è un bug.

Altri suggerimenti

No, questo non dovrebbe fare alcuna differenza.

Controlla l'URL RFC Spec ( http://www.ietf.org/rfc/ rfc1738.txt ). Dalla sezione 2.1:

  

Per la resilienza, i programmi di interpretazione   URL dovrebbero trattare lettere maiuscole   equivalenti alle minuscole in regime   nomi

Dal momento che la tua domanda formulata come una questione pratica, e poi si presenta un problema del mondo reale, la risposta è in realtà: Sì.

Le altre risposte sono corrette circa il che cosa le specifiche RFC dice di nomi host. Tecnicamente dovrebbero essere maiuscole e minuscole. (In realtà, la convenzione maggiore era che il dominio di primo livello (TLD) doveva essere in tutte le protezioni ... come "apple.COM").

Tuttavia, nel mondo reale, il software maturo come risolutori del sistema operativo e principali browser ottenere questo diritto. Qualsiasi tipo di codice secondario potrebbe essere gestendo questo torto, e si rovinare.

http://tools.ietf.org/html/rfc1035 :

  

Per tutte le parti del DNS che fanno parte del protocollo ufficiale, tutti i   I confronti tra stringhe di caratteri (ad esempio, etichette, i nomi di dominio, ecc)   sono fatto in un modo maiuscole e minuscole. Allo stato attuale, questa regola è in   vigore per tutto il sistema di dominio, senza eccezioni.

Si passa poi a dire che questo potrebbe cambiare in futuro. Penso che sia lecito ritenere che il dominio COM è altri domini permettendo l'uso di caratteri non ASCII potrebbero differire-maiuscole e minuscole, ma.

No, non c'è sensibilità caso per quanto riguarda l'identificatore di protocollo.

Potete vedere questo nel RFC per URL .

  

2.1. Le parti principali di URL

     

nomi Schema consistono in una sequenza di   personaggi. Le lettere minuscole   "A" - "z", cifre e caratteri   più ( "+"), punto ( ""), e trattino   ("-") sono ammessi. Per la resilienza,   Programmi URL interpretariato dovrebbe   trattare lettere maiuscole come equivalenti   come minuscole nei nomi schema (ad esempio,   consentire "HTTP", così come "http").

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top