ברוב המקרים אפשר לומר דברים כמו 'קניתי דומיין' או 'התמונות שלנו מתארחות באתר אחר', גם אם זה לא נכון לחלוטין. עם זאת, בהקשרים מסוימים צריך להיות ספציפיים יותר. לדוגמה, כשעובדים עם קובצי 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.
- לדומיין
https://example.org.au
, הדומיין ברמה העליונה עם קוד מדינה הואau
. - לדומיין
https://example.io
, הדומיין ברמה העליונה עם קוד מדינה הואio
.
שם דומיין
החלקים של כתובת URL מסוג HTTP או HTTPS מופרדים בנקודות: כל מה שמופיע אחרי הסכימה, אבל לפני הנתיב או היציאה (אם צוינו). כל חלק של שם הדומיין נקרא תווית.
כתובת URL | שם דומיין |
---|---|
https://example.github.io/path | example.github.io |
https://support.example.org.au:443 | support.example.org.au |
דומיין ברמה עליונה יעיל (eTLD)
רשומה ברשימת הסיומת הציבורית, כולל TLD (TLD) ו(לדומיינים ברמה עליונה אלקטרונית עם כמה חלקים) דומיינים נוספים מתחתיו: ברמה שנייה, ברמה שלישית וכן הלאה.
- לדוגמה:
com
, com.au
, github.io
, sa.edu.au
,schools.nsw.edu.au
.
'סיומת ציבורית', כמו הדוגמאות האלה, היא שם שאפשר לרשום דומיינים תחתיו. רשימת הסיומות הציבוריות היא רשימה של כל הסיומות הציבוריות הידועות, והיא מתעדכנת לעיתים קרובות. דפדפנים, כולל Chromium ו-Firefox, משתמשים ברשימה בגרסאות ה-build שלהם.
eTLD+1
מידע נוסף זמין במאמר דומיין שניתן לרשום.
eTLD (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
.
החלק שכולל את #
נקרא מזהה גיבוב או עוגן.
אפשר גם לקשר לקטע טקסט ולהדגיש אותו.
ה-hash מוחזר על ידי ה-API של כתובת ה-URL ולא על ידי המקטע.
שם דומיין שמוגדר במלואו (FQDN)
כתובת מלאה של אתר או שרת, שממופה לכתובת IP.
כתובת URL | FQDN |
---|---|
https://example.com:1234/cats | example.com |
https://api.example.github.io | api.example.github.io |
כתובת ה-FQDN של כתובת URL לא כוללת את היציאה, גם אם נעשה שימוש ביציאה שאינה יציאת ברירת המחדל.
גיבוב (או עוגן)
מחרוזת שמופיעה אחרי תו # בסוף כתובת URL ומספקת מזהה מקטע.(בהקשרים מסוימים המחרוזת הזו נקראת 'עוגן').
החלק שלא כולל את #
נקרא קטע.
אפשר גם לקשר לקטע טקסט ולהדגיש אותו.
ה-hash מוחזר על ידי ה-API של כתובת ה-URL ולא על ידי המקטע.
מארח
כפי שמוגדר בתקן של כתובות 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, החלק אחרי הדומיין והיציאה (אם הוגדרו), כולל filename (אם הוגדר) אבל לא כולל את מחרוזת החיפוש או את ה-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
של הקישור.
חיפוש
סימן שאלה ואחריו סדרה של צמד מפתח/ערך שמייצגים את הפרמטרים ואת הערכים שלהם, שמופיעים אחרי pathname.
כתובת 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, יחד עם באותו אתר, שכולל סכימה ובאותו אתר ללא סכימה.
האתר לא מוגדר בתקן של כתובות URL או ב-JavaScript URL API.
בהקשר הזה:
- בכתובת URL מסוג HTTP או HTTPS עם eTLD (eTLD) שמכיל חלק אחד, כמו
https://example.com
, האתר מורכב מ-scheme
, מ-eTLD ומהתוויות שמופיעות לפני כן. לדוגמה: לכתובת ה-URLhttps://www.example.com/cat
, האתר הואhttps://example.com
. (בכתובת ה-URL הזו, ה-eTLD זהה לדומיין ברמה העליונה). - בeTLD שמכיל כמה חלקים, כמו
co.uk
,github.io
אוsa.edu.au
, החלק 'אתר' מורכב מ-scheme
, מ-eTLD ומ-תווית שמופיעה לפניו. לדוגמה: לכתובת ה-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
- הסבר על 'באותו אתר' ו'באותו מקור'
- RFC: Uniform Resource Locators (URL)
- RFC: URI, כתובות URL ו-URN
- מסד נתונים של תחום Root (ספרייה של דומיינים ברמה העליונה)
- רשימת הסיומת הציבורית (ספרייה של eTLDs: "סיומת ציבורית היא קבוצה של שמות DNS או תווים כלליים שמקושרים באמצעות נקודות. הוא מייצג את החלק של שם הדומיין שלא בשליטת רושם הדומיין הפרטי.")
- מילון המונחים של ICANN
- מהו שם דומיין שמוגדר במלואו?
- כמה דרכים יש לחתוך כתובת URL ולתת שמות לחלקים?
- מילון המונחים של MDN Web Docs
- מהי כתובת URL?
- ההיסטוריה של כתובת ה-URL