ברוב המקרים אפשר לומר דברים כמו 'קניתי דומיין' או 'התמונות שלנו מתארחות באתר אחר', גם אם זה לא נכון לחלוטין. עם זאת, בהקשרים מסוימים צריך להיות ספציפיים יותר. לדוגמה, כשעובדים עם קובצי cookie, צריך להבין את ההבדל בין אתר לבין מקור.
השמות של חלקי כתובת ה-URL מצוינים בתקן, שבו מוגדר גם API של JavaScript:
- תקן ה-URL מגדיר כתובות URL ומושגים קשורים כדי לאפשר למהנדסים ליצור דפדפני אינטרנט עם יכולת פעולה הדדית.
- רכיב ה-URL API בתקן מגדיר שיטות לספק גישה לחלקים ממחרוזת של כתובת URL, כמו הסכמה או המקור.
במסמך הזה מוסבר מגוון מונחים שנעשה בהם שימוש במחרוזות של כתובות URL מסוג HTTP או HTTPS. הוא לא מכסה סוגים אחרים של כתובות URL, כמו כתובות URL של קבצים או נתונים. לגבי מונחים כמו host
ו-origin
, ההגדרות המדויקות מורכבות מטבען, ולכן המסמך הזה כולל דוגמאות וקישורים לתקן של כתובות URL, במקום לנסות לספק הסברים מלאים.
אפשר להשתמש ב-JavaScript כדי לקבל את השמות של רכיבי כתובת ה-URL שמוגדרים על ידי API של כתובת ה-URL. לדוגמה:
let url = new URL('https://foo.com.au:1234/bar/foo.html#bar');
console.log(url);
מנתח כתובות URL
עורכים את כתובת ה-URL שבהמשך כדי לראות איך נקראים החלקים של מחרוזת כתובת ה-URL. אפשר לפתוח אותו גם בכרטיסייה נפרדת בכתובת url-parts.glitch.me.
השמות של חלקי כתובת ה-URL מפורטים בהמשך לפי סדר אלפביתי.
דומיין ברמה העליונה עם קוד מדינה (ccTLD)
דומיין ברמה העליונה שמוגדר ברשימת קודי המדינות לפי תקן ISO 3166-1.
שם דומיין
החלקים של כתובת URL מסוג HTTP או HTTPS מופרדים בנקודות: כל מה שמופיע אחרי הסכימה, אבל לפני הנתיב או היציאה (אם צוינו). כל חלק של שם הדומיין נקרא תווית.
כתובת URL | שם דומיין |
---|---|
https://example.github.io/path | example.github.io |
https://support.example.org.au:443 | support.example.org.au |
דומיין ברמה עליונה יעיל (eTLD)
רשומה ברשימת הסיומות הציבוריות, כולל TLD ו(לדומיינים מסוג eTLD עם כמה חלקים) דומיינים נוספים מתחתיו: ברמה השנייה, ברמה השלישית וכו'.
- לדוגמה:
com
,com.au
,github.io
,sa.edu.au
,schools.nsw.edu.au
.
'סיומת ציבורית', כמו הדוגמאות האלה, היא שם שאפשר לרשום דומיינים תחתיו. רשימת הסיומות הציבוריות היא רשימה של כל הסיומות הציבוריות הידועות, והיא מתעדכנת לעיתים קרובות. דפדפנים, כולל Chromium ו-Firefox, משתמשים ברשימה בגרסאות ה-build שלהם.
eTLD+1
מידע נוסף זמין במאמר דומיין שניתן לרשום.
eTLD בתוספת תת-הדומיין שקודם לו.
- לדוגמה:
example.com
,example.org.au
,example.github.io
,example.sa.edu.au
,example.schools.nsw.edu.au
.
שם קובץ
לא מוגדר בתקן של כתובות URL ולא חלק מ-URL API, אבל משמש בדרך כלל כדי להתייחס לחלק הסופי של כתובת ה-URL, שאינו נתיב, על סמך ההנחה (שגויה לרוב) שכתובת ה-URL ממופה ישירות למבנה ספרייה.
לדוגמה, ב-https://example.com/dir/file.html
, יכול להיות ש-file.html
יכונה שם הקובץ.
הדפדפנים משתמשים בערך של שם הקובץ גם כדי לתת שם לנכס אם הוא מוריד.
לדוגמה, בדרך כלל https://example.com/images/image.jpg
נשמר מקומית ב-image.jpg
.
מקטע (fragment)
מחרוזת שמופיעה אחרי התו # בסוף כתובת URL ומספקת מזהה קטע.
- לדוגמה: כתובת ה-URL
https://example.com/cats#tabby
כוללת ערך של מזהה קטעtabby
.
החלק שכולל את #
נקרא גיבוב או עוגן.
אפשר גם לקשר לקטע טקסט ולהדגיש אותו.
הגיבוב מוחזר על ידי ה-URL API ולא על ידי המקטע.
שם דומיין שמוגדר במלואו (FQDN)
כתובת מלאה של אתר או שרת, שממופים לכתובת IP.
כתובת URL | FQDN |
---|---|
https://example.com:1234/cats | example.com |
https://api.example.github.io | api.example.github.io |
FQDN של כתובת URL לא כולל את היציאה, גם אם נעשה שימוש ביציאה שאינה ברירת המחדל.
גיבוב (או עוגן)
מחרוזת שמופיעה אחרי התו # בסוף כתובת URL ומספקת מזהה מקטע. (בהקשרים מסוימים המחרוזת הזו נקראת 'עוגן').
החלק שלא כולל את #
נקרא קטע.
אפשר גם לקשר לקטע טקסט ולהדגיש אותו.
הגיבוב מוחזר על ידי ה-URL API ולא על ידי המקטע.
מארח
כפי שמוגדר בתקן של כתובות URL, מארח יכול להיות שם דומיין, כתובת IP v4, כתובת IPv6, מארח אטום או מארח ריק.
- ההגדרה של
host
בתקן של כתובות URL לא כוללת את היציאה. URL.host
כולל את היציאה, אלא אם היציאה היא ברירת המחדל של הסכימה.URL.hostname
לא כולל את השקע.
כתובת URL | URL.host |
---|---|
https://www.example.com:443/cat |
www.example.com // 443 is the default port for the scheme
|
https://www.example.com:1234/cat | www.example.com:1234 |
https://cat.example.github.io | cat.example.github.io |
שם מארח
שם המארח מוגדר על ידי ממשק ה-API URL
של JavaScript, אבל לא במקום אחר לפי תקן כתובת ה-URL. פרטים נוספים זמינים במאמר ייצוג המארח.
URL.hostname
מחזירה את המארח ללא היציאה.
כתובת URL | URL.hostname |
---|---|
https://www.example.com:443/cat | www.example.com |
https://www.example.com:1234/cat | www.example.com |
https://cat.example.github.io | cat.example.github.io |
מקור
בתקן של כתובת ה-URL מגדירים את origin
, ומקשרים לתקן ה-HTML לצורך שימוש ברקע.
בכתובות URL מסוג HTTP או HTTPS, הפונקציה URL.origin
מחזירה את הסכימה, את המארח ואת היציאה (אלא אם היציאה היא ברירת המחדל של הסכימה).
כתובת URL | URL.origin |
---|---|
https://www.example.com:443/cat | https://www.example.com |
https://www.example.com:1234/cat | https://www.example.com:1234 |
https://cat.example.github.io | https://cat.example.github.io |
פרמטר
סיסמה
שם נתיב
בכתובת URL מסוג HTTP או HTTPS, החלק אחרי הדומיין והיציאה (אם הוגדרו), כולל שם הקובץ (אם הוגדר) אבל לא כולל את מחרוזת החיפוש או את ה-hash.
כתובת URL | URL.pathname |
---|---|
https://example.com | [empty string] |
https://example.com:8000/search?q=tabby | /search |
https://example.github.io/cat/pattern#tabby | /cat/pattern |
https://example.github.io/README.md | /README.md |
לפעמים משתמשים ב'נתיב' כדי להתייחס לנתיב הקובץ בלי שם הקובץ. לדוגמה, בכתובת ה-URL https://example.com/cat/pattern/tabby.html
, הערך של 'path' הוא /cat/pattern
.
יציאה
המספר שמופיע אחרי :
בכתובת URL ומזהה יציאת רשת. לדוגמה: מספר היציאה של כתובת ה-URL https://example.com:1234/tabby
הוא 1234.
מספר היציאה חייב להיות מספר שלם ללא סימן באורך 16 ביט: במילים אחרות, מספר שלם בין 0 ל-65535, כולל.
בכתובת URL מסוג HTTP, יציאת ברירת המחדל היא 80. ב-HTTPS, יציאת ברירת המחדל היא 443. אין צורך לציין את מספר היציאה בכתובת ה-URL, אלא אם משתמשים ביציאה שאינה ברירת המחדל.
ה-API מחזיר מחרוזת ריקה אם היציאה היא ברירת המחדל לסכימה.
כתובת URL | URL.port |
---|---|
https://example.com | // empty string |
https://example.com:443/foo | // empty string: port is default for scheme |
https://www.example.com:1234/foo | 1234 |
פרוטוקול
הסכימה ואחריה :
(לדוגמה, http:
או https:
).
השדה protocol
זמין ב-URL API, אבל scheme
לא זמין.
שאילתה (או 'מחרוזת שאילתה')
החלק search בכתובת ה-URL, לא כולל את ?
הפותח.
דומיין שניתן לרשום
- בכתובת URL עם eTLD (דומיין ברמה העליונה ברשת האינטרנט) בן חלק אחד, כמו
com
אוorg
(כלומר eTLD שתואם ל-TLD), הדומיין והדומיין ברמה השנייה שמופיעים לפניו: לדוגמה,example.com
אוexample.org
. - בכתובת URL עם סיומת דומיין ברמה העליונה (eTLD) בת שני חלקים, שבה מותר רק רישום ברמה שלישית (כלומר, רשומות ברשימת הסיומות הציבוריות כמו
com.au
ו-github.io
), הדומיין ברמה העליונה ('סיומת ציבורית') בת שני החלקים ושם הדומיין ברמה השלישית שמופיע לפני כן. לדוגמה:example.org.au
אוexample.github.io
. - בדומיינים ברמה העליונה עם שלושה חלקים או יותר, הדומיין ברמה העליונה והדומיין שלפניו.
Scheme
החלק בכתובת ה-URL (לפני ://
) שמגדיר את פרוטוקול הרשת (או הפעולה שתתבצע
על ידי סוכן המשתמש) כששולחים בקשה לכתובת URL. לדוגמה, צריך לשלוח בקשה לכתובת URL עם סכימה https
באמצעות פרוטוקול HTTPS. כששולחים בקשה לכתובת URL עם סכימה כמו file
, mailto
או git
שלא תואמת לפרוטוקול רשת, ההתנהגות תלויה בסוכן המשתמש. לדוגמה, כשמשתמש לוחץ על קישור ל-mailto
, רוב הדפדפנים פותחים את אפליקציית האימייל שמוגדרת כברירת מחדל, תוך שימוש בערכים שבכתובת ה-URL href
של הקישור.
חיפוש
סימן שאלה ואחריו סדרה של צמד מפתח/ערך שמייצגים את הפרמטרים ואת הערכים שלהם, שמופיעים אחרי נתיב הספרייה.
כתובת URL | URL.search |
---|---|
https://example.com/cats?pattern=tabby&mood=bonkers | ?pattern=tabby&mood=bonkers |
https://example.com/cats:443?pattern=tabby | ?pattern=tabby |
הערך query
או 'מחרוזת השאילתה' מתייחס ל-search
בלי הערך ?
המוביל.
אפשר לעיין גם במאמר פרמטרים לחיפוש.
פרמטרים של חיפוש
הפניה לפריט נתונים שהועברו במחרוזת חיפוש (או 'מחרוזת שאילתה').
- לדוגמה: עבור
https://example.com/cats?pattern=tabby&mood=bonkers
, מחרוזת החיפוש כוללת שני פרמטרים:pattern=tabby
ו-mood=bonkers
.
דומיין ברמה שנייה
הדומיין לפני דומיין ברמה עליונה.
בכתובת ה-URL
https://www.example.com
, הדומיין ברמה השנייה הואexample.com
, שהוא תת-דומיין של הדומיין ברמה העליונהcom
.בדומיין
https://example.org.au
, הדומיין ברמה העליונה הואau
, הדומיין ברמה השנייה הואorg
והדומיין ברמה השלישית הואexample
. בדוגמה הזו,org.au
הוא תת-דומיין שלau
ו-example.org.au
הוא תת-דומיין שלorg.au
.
אתר
אתר מוגדר לפי תקן HTML, יחד עם אותו אתר, שכולל scheme וללא סכימה של אותו אתר.
האתר לא מוגדר בתקן של כתובות URL או ב-JavaScript URL API.
בהקשר הזה:
- בכתובת URL מסוג HTTP או HTTPS עם TLD של דומיין ברמה העליונה (eTLD) שמכיל חלק אחד, כמו
https://example.com
, האתר מורכב מ-scheme
, מ-eTLD ומהתוויות שמופיעות לפני כן. לדוגמה: לכתובת ה-URLhttps://www.example.com/cat
, האתר הואhttps://example.com
. (בכתובת ה-URL הזו, ה-eTLD זהה לדומיין ברמה העליונה). - בTLD של דומיין אינטרנט שמכיל כמה חלקים, כמו
co.uk
,github.io
אוsa.edu.au
, החלק 'אתר' מורכב מ-scheme
, מ-TLD של דומיין אינטרנט ומ-תווית שמופיעה לפניו. לדוגמה: לכתובת ה-URLhttps://cat.example.co.uk/tabby
, האתר הואhttps://example.co.uk
ול-https://www.education.sa.gov.au
האתר הואhttps://education.sa.gov.au
.
כתובת URL | אתר (עם סכימה ו-eTLD+1) |
---|---|
https://cat.example.com/tabby | ("https", "example.com") |
https://cat.example.co.uk/tabby | ("https", "example.co.uk") |
בניגוד ל-origin, האתר לא כולל את היציאה.
תת-דומיין
דומיין בתוך דומיין ברמה גבוהה יותר.
באתרים עם דומיינים ברמה עליונה עם חלק יחיד, כמו com
או org
, החלקים שלפני הדומיין ברמה העליונה מופרדים בנקודה.
www.example.com
הוא תת-דומיין שלexample.com
.support.api.example.org
הוא תת-דומיין שלapi.example.org
, שהוא תת-דומיין שלexample.org
.
לגבי שמות eTLD בשני חלקים, שבהם מותר רק רישומים ברמה שלישית(כלומר, ערכים ברשימת הסיומות הציבוריות כמו co.uk
ו-github.io
), תת-הדומיינים הם החלקים של שם הדומיין לפני כן.
- לדוגמה:
cat.example.co.uk
הוא תת-דומיין שלexample.co.uk
.
קטע טקסט
סוג של קטע קוד שמאפשר לקשר למגוון טקסט בדף ולסמן אותו. כשמשתמש עוקב אחרי קישור עם קטע טקסט, הדפדפן מנסה לאתר את הטקסט בדף, לגלול אליו ולסמן אותו.
קטע טקסט מתחיל ב-:~:text=
ואחריו מונח החיפוש.
לדוגמה, כדי לקשר להתרחשות הראשונה של הטקסט 'fragment' בדף הזה, צריך להשתמש בכתובת ה-URL https://web.dev/articles/url-parts#:~:text=fragment
.
מידע נוסף: קטעי טקסט.
דומיין ברמה עליונה (TLD)
שם דומיין שמופיע במסד הנתונים של תחום הבסיס (root), כמו com
או org
. חלק מהדומיינים ברמה העליונה הם דומיינים ברמה העליונה עם קוד מדינה, כמו uk
ו-tv
.
כשמתארים את החלקים של כתובת URL מסוג HTTP או HTTPS, סיומת הדומיין היא שם הדומיין שמופיע אחרי הנקודה האחרונה.
- עבור
https://example.org
, הדומיין ברמה העליונה של כתובת ה-URL הואorg
. - בכתובת
https://example.org.au
, הדומיין ברמה העליונה של כתובת ה-URL הואau
, ו-org
הוא דומיין ברמה שנייה (למרות ש-org
הוא גם דומיין ברמה עליונה).org.au
הוא eTLD בשני חלקים.
רשימת הסיומת הציבורית של eTLD כוללת דומיינים עם חלק אחד, שניים או יותר, כך ש-TLD יכול להיות גם eTLD. לדוגמה:
- בכתובת
https://example.com
, ה-eTLD של כתובת ה-URL הואcom
, שהוא גם TLD.
שם משתמש
אפשר לציין שם משתמש וסיסמה אופציונליים בתחילת כתובת ה-URL, אבל השימוש באפשרות הזו הוצא משימוש מטעמי אבטחה, והיא תתעלם במקרים רבים.
לדוגמה, כשמשתמשים ב-https://user123:password1@example.com
, שם המשתמש הוא user123
. חשוב לזכור ששם המשתמש (והסיסמה!) הם בטקסט ללא הצפנה.
אם שם המשתמש מכיל את הסמלים :
או @
, צריך לקודד אותם לכתובת URL כ-%3A
ו-%40
, בהתאמה.
למידע נוסף
- WHATWG: URL Living Standard
- WHATWG: HTML Living Standard
- URL API
- הסבר על 'same-site' ו-'same-origin'
- RFC: Uniform Resource Locators (URL)
- RFC: URI, כתובות URL ו-URN
- מסד נתונים של תחום Root (ספרייה של דומיינים ברמה העליונה)
- רשימת הסיומת הציבורית (ספרייה של סיומת דומיין ברמה העליונה: "סיומת ציבורית היא קבוצה של שמות DNS או תווים כלליים שמקושרים באמצעות נקודות. הוא מייצג את החלק של שם הדומיין שלא בשליטת רושם הדומיין הפרטי.")
- מילון המונחים של ICANN
- מהו שם דומיין שמוגדר במלואו?
- כמה דרכים יש לחתוך כתובת URL ולתת שמות לחלקים?
- מילון המונחים של MDN Web Docs
- מהי כתובת URL?
- ההיסטוריה של כתובת ה-URL