Un tag anchor viene prima della stringa di query o dopo?


52

Non sono chiaro se un tag di ancoraggio dovrebbe precedere una stringa di query o dopo.

http://www.domain.com/search?query=hello#name

o

http://www.domain.com/search#name?query=hello

O importa?


1
Provalo. Solo uno di loro funziona, quindi è importante. Quando ho provato l'ancora prima, poi pensa che? fa parte del frammento "#" e quindi non salta all'ancoraggio destro (poiché non ce n'è uno che ha? nel suo nome ...) e probabilmente non includerebbe alcuna informazione se ho controllato la stringa di query in PHP. L'ultimo che non ho testato.
Julix,

Risposte:


62

La migliore pratica è di aggiungere l'ancora denominata alla fine. Il nome tecnico è un identificatore di frammento e la sintassi è in RFC 3986.

La sezione RFC è qui: http://tools.ietf.org/html/rfc3986#section-4.1

relative-ref = relative-part ["?" query] ["#" frammento]

Wikipedia in realtà lo copre bene:

L'identificatore di frammento introdotto da un segno di hash # è l'ultima parte facoltativa di un URL per un documento


Saluti @iivel! La sezione 3 è stata più utile per me (la sezione 4.1 sembra specifica per gli URI relativi) mentre ne discutevo con qualcuno.
eebbesen,

Che dire di webserver, deve gestirlo durante la pubblicazione della pagina?
Behrouz.M,

1
I frammenti di URL @raypixar non vengono inviati al server
Juan Mendes,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.