יצירת קשר עם התמיכה

אנחנו משיבים בדוא״ל, בדרך כלל בתוך יומיים.

למניעת שימוש לרעה, Google reCAPTCHA בודק את הפנייה הזאת; נתונים נשלחים אל Google. הסקריפט נטען רק עם פתיחת הטופס הזה.

→ כל הרשומות

למה קובץ ההגדרות שלנו הוא בעיקר הערות

על התוכן ועל בדיקתו

במאמר הזה

הקובץ .htaccess בשרת הזה באורך 478 שורות. מתוכן 98 הן כללים. 309 הן הערות.

309 — שורות הערה 98 — כללים 11 שורות מכילות תאריך, 12 מכילות מדידה 478 שורות בסך הכול

שלוש שורות הסבר לכל שורה שעושה משהו. היחס הזה לא תוכנן; זה מה שקורה כשהכלל לכתיבת כלל הוא שהסיבה חייבת להימצא לצידו.

למה כלל שכתוב צריך פסקה

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

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

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

שלושה שלא ישרדו ללא ההערה שלהם

קוד שפה שנראה כמו סיומת סקריפט. כלל שחסם קובצי מקור שנותרו התאים לפי סיומת, ואחת הסיומות הייתה .pl — Perl. שמות התצוגות המקדימות של העיצובים הם 2900.pl.svg, ובהם pl היא פולנית. כל תצוגה מקדימה פולנית התחילה לענות 403 בזמן שכל שפה אחרת הייתה תקינה. ההערה אומרת כעת שהסיומת pl נעדרת מהרשימה בכוונה, מדוע, ומה נמדד באיזה יום. בלעדיה, האדם הבא שיסדר את הרשימה יחזיר אותה.

שני מתגים במקום שבו אחד נראה מספיק. אסור לדחוס שוב קבצים שנדחסו מראש בדרכם החוצה. ההגדרות קובעות no-gzip, שעוצר אחד משני המדחסים של השרת. האחר דחס שוב את הקובץ המוכן בזמן שהכותרת עדיין הכריזה gzip, והדפדפנים קיבלו תוכן בלתי קריא. ההערה מסבירה למה נדרשים גם no-gzip וגם no-brotli יחד, כי הסרת השני נראית כמו סידור.

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

הגרסה הכללית

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

הבדיקה אם כדאי לכתוב הערה פשוטה למדי. אילו השורה שמעליה הייתה נמחקת בידי מישהו שלא הכיר את הסיפור, האם משהו היה מתקלקל בשקט? אם כן, יש לכתוב את הסיפור. אם לא, אין לכתוב דבר.

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

פרסומת