קוד 304 לא שונה (Not Modified)

קוד 304 ״לא שונה״ (Not Modified)

מהי תגובת 304?  קוד התגובה HTTP 304 Not Modified מציין שהמשאב המבוקש לא השתנה מאז הפעם האחרונה שבה נטען, ואין צורך להעביר אותו שוב.

עבור דפדפנים, המשמעות היא שניתן להציג למשתמש את הגרסה השמורה במטמון של המשאב. עבור קרולרים (זחלנים) כמו הבוט של גוגל, המשמעות היא שאין צורך לזחול שוב על הדף מכיוון שלא חל בו שינוי.

כך זה עובד :

כאשר הלקוח (הדפדפן או הזחלן) מבקש משאב מהשרת בפעם הראשונה, השרת שולח את המשאב המבוקש עם קוד HTTP 200 OK יחד עם קוד ההאש שלו שנקרא ETag.
הלקוח גם מתעד את הזמן שבו ביקש את הדף/המשאב.

כאשר הלקוח מבקש את המשאב שוב, השרת בודק את כותרות הבקשה If-None-Match ו/או If- Modified-Since  מהלקוח.

זוהי בקשת HTTP מותנית. If-None-Match מכיל את ה-ETag קוד ההאש של התוכן. אם הוא תואם לערך בשרת, זה מצביע על כך שהתוכן לא השתנה ואין צורך לטעון אותו שוב (כאשר התוכן משתנה, גם קוד ההאש שלו משתנה(

If-Modified-Sinceמכיל את התאריך והשעה שבהם הלקוח ביקש את התוכן בפעם האחרונה. אם השרת רואה שהתוכן לא השתנה מאז תאריך זה, אין צורך לשלוח את המשאב ללקוח.

בשני המקרים, השרת יגיב עם קוד HTTP 304 –

כאשר משתמשים גם ב-If-None-Match וגם ב-If-Modified-Since, If-None-Match מקבל עדיפות על פני If-Modified-Since.

כאשר הדפדפן מקבל את קוד HTTP 304 Not Modified מהשרת, הוא יציג את הגרסה השמורה במטמון למשתמש.

זו הסיבה ש-304 הוא אחד מקודי ההפניה מצד הלקוח.

 מדוע קוד התגובה 304 חשוב?

עבור אתרים קטנים, הזדמנויות הקאשינג (שמירת מטמון) שמספק קוד HTTP 304 אינן קריטיות.

עם זאת, עבור אתרים גדולים, קוד התגובה 304 הוא הזדמנות מצוינת לחסוך בתקציב הזחילה. הזחלן של גוגל לא יזחול שוב על דפים שלא שונו ויוכל לזחול על יותר דפים חדשים ומעודכנים במקום.

 

ניתן למצוא עוד נתונים מעניינים מאוד בעמוד מילון המונחים seo.

אתם מוזמנים ללמוד על קידום אתרים טכנולוגי בפוסט הזה.