Τα συστατικά ενός URL

Στο ακόλουθο σχήμα απεικονίζονται τα συστατικά ενός υποθετικού URL:

URL Anatomy

Το URL είναι η διεύθυνση στον παγκόσμιο ιστό ενός πόρου, όπως κείμενο, φωτογραφία, video, αρχείο, κλπ. Για ευκολία, ωστόσο, θα θεωρήσουμε πως ο πόρος είναι μια σελίδα, όπως αυτή που διαβάζετε.

protocol
Υπάρχουν πολλά πρωτόκολλα (επικοινωνίας), αλλά στο πλαίσιο αυτού του οδηγού περιοριζόμαστε στο http(s). Το τελικό 's' υποδηλώνει την ασφαλή (secure) έκδοση του http.
host
Είναι το όνομα του server που φιλοξενεί τη ζητούμενη σελίδα. Αποτελείται από το υποχρεωτικό domain και το προαιρετικό subdomain. Το δημοφιλέστερο subdomain είναι www, αλλά μπορεί να είναι οτιδήποτε ή τίποτα.
path
Είναι το μέρος που ακολουθεί το domain, μέχρι το ? (αν υπάρχει) ή το # (αν υπάρχει) ή το τέλος του URL. Η πρώτη κάθετος μετά το domain ανήκει στο path, και υποδηλώνει το λεγόμενο document root, σε ελεύθερη απόδοση την αρχική σελίδα. Αν παραληφθεί, ο browser θα το περιλάβει και ο host θα ανταποκριθεί ωσάν να υπάρχει. Συνεπώς, το ελάχιστο path είναι μια κάθετος. Διαφορετικά, αποτελείται από ένα ή περισσότερα συστατικά, χωρισμένα με κάθετο εκτός του mime (αν υπάρχει), που χωρίζεται με τελεία. Αναλυτικότερα:
  • en
    Αν το path αρχίζει με συστατικό 2 χαρακτήρων, τότε αυτός θεωρείται ο κατά ISO-639-1 κωδικός γλώσσας περιεχομένου, εφόσον το domain σας έχει στηθεί ως πολυγλωσσικό και υποστηρίζει τη ζητούμενη γλώσσα.
  • mime
    Αν το path έχει κατάληξη (το τελευταίο συστατικό, μετά την τελεία), τότε αυτό υποδηλώνει τη μορφή (format) της σελίδας, σε περίπτωση που ο host την υποστηρίζει. Αν δεν υπάρχει mime, τότε εξ ορισμού θεωρείται η html.
  • unit/node
    Μεταξύ της γλώσσας (αν υπάρχει) και της κατάληξης (αν υπάρχει) βρίσκεται το όνομα της σελίδας, συμπεριλαμβανομένης και της διαδρομής που προηγείται, όπως αυτή απεικονίζεται στο αρχείο Sitemap. Το τελευταίο κομμάτι αυτού του τμήματος, λέγεται node και είναι το μοναδικό στοιχείο που χρειάζεστε για να δημιουργείτε εσωτερικούς συνδέσμους. Για παράδειγμα, το path αυτής της σελίδας είναι index/documentation/appendix/urlAnatomy. Συνεπώς, το node είναι urlAnatomy.
query
Η παρουσία του ? δηλώνει την αρχή ενός query string που εκτείνεται μέχρι το # (αν υπάρχει) ή το τέλος του URL. Το query χρησιμοποιείται για την αποστολή παραμέτρων, που διαμορφώνουν το ζητούμενο πόρο. Αποτελείται από ένα ή περισσότερα ζεύγη ονομάτων και τιμών, χωρισμένων με & και =, αντιστοίχως.
fragment
Το τμήμα αυτό δεν αφορά τον host, αλλά τον browser. Συγκεκριμένα, ο browser αφαιρεί το fragment, στέλνει το υπόλοιπο URL στον host, περιμένει απάντηση, εμφανίζει τη σελίδα και στη συνέχεια ψάχνει στον κώδικα το δεδομένο fragment. Εφόσον βρεθεί, η σελίδα σκρολάρει έτσι ώστε το fragment να βρεθεί στην κορυφή. Με άλλα λόγια, το fragment είναι ένας σύνδεσμος εντός της σελίδας.