Czy tag zakotwiczenia występuje przed ciągiem zapytania lub po nim?

52

Nie jestem pewien, czy tag zakotwiczenia powinien pojawić się przed ciągiem zapytania, czy po nim.

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

lub

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

Czy to ma znaczenie?

whoacowboy
źródło
1
Sprawdź to. Tylko jeden z nich działa, więc ma to znaczenie. Kiedy próbowałem najpierw zakotwiczenia, to myśli? jest częścią fragmentu „#” i dlatego nie przeskakuje do właściwej kotwicy (ponieważ nie ma takiej w nazwie?) i prawdopodobnie nie zawiera żadnych informacji, jeśli sprawdzę ciąg zapytania w PHP. Ostatni, którego nie testowałem.
Julix

Odpowiedzi:

62

Najlepszą praktyką jest dołączenie nazwanej kotwicy na końcu. Nazwa techniczna jest identyfikatorem fragmentu, a składnia jest w RFC 3986.

Sekcja RFC znajduje się tutaj: http://tools.ietf.org/html/rfc3986#section-4.1

relative-ref = relative-part ["?" zapytanie] [„#” fragment]

Wikipedia naprawdę dobrze to obejmuje:

Identyfikator fragmentu wprowadzony znakiem krzyżyka # jest opcjonalną ostatnią częścią adresu URL dokumentu

iivel
źródło
Pozdrawiam @iivel! Sekcja 3 była dla mnie bardziej pomocna (sekcja 4.1 wydaje się specyficzna dla względnych identyfikatorów URI), kiedy omawiałem to z kimś.
eebbesen
Co z serwerem internetowym, czy musi obsługiwać go podczas wyświetlania strony?
Behrouz.M
1
@raypixar Fragmenty adresów URL nie są wysyłane na serwer
Juan Mendes