![]() |
|
||||||||||
הפנייה קבועה מאפשרת לכם להודיע למשתמשים או למנועי החיפוש המגיעים אל האתר שלכם כי דף מסויים, ספרייה מסויימת או האתר כולו עברו אל כתובת חדשה. ההפניה אל הכתובת החדשה תעשה אצל המשתמשים בצורה אוטומטית, ואפילו הכתובת המופיעה בדפדפן שלהם בשורת הכתובת תתעדכן לכתובת החדשה. בעת בקשת דף באופן רגיל, השרת מחזיר חזרה למשתמש שבגיע אל האתר שלך קוד 200, האומר כי הבקשה עברה בהצלחה. בעת ביצוע הפנייה קבועה, מחזיר השרת קוד 301, בתוספת הכתובת המעודכנת של המשאב המבוקש. הפנייה קבועה נועדה לביצוע הפעולות הבאות:
השינויים המוזכרים כאן דורשים גישה לקבצי htaccess. של האתר. במידה והאתר כבר לא קיים, או שבעתיד כבר לא יהיה קיים, יש לבקש מספק השירות כי יבצע את ההפנייה ברמת הסרבר (דרך קובץ httpd.conf). מדוע חשוב לבצע הפנייה קבועה?במקרים רבים מעוניינים בעלי אתרים לשנות את מבנה האתר שלהם, או לשנות את שם הדומיין של האתר. שינויים מסוג זה עלולים ליצור מספר בעיות:
בדיקה של HTTP headerלאחר ביצוע הפנייה קבועה יש לוודא כי ההפניה אכן מתפקדת כראוי, וכי מופיע קוד 301 כאשר מגיעים לדומיין הישן או לדף הישן, ולא מופיע קוד אחר (כמו 302 לדוגמא).
הפנייה ברמת הסרבר מול הפנייה ברמת האתראת ההפניה הקבועה ניתן לבצע ברמת הסרבר (על ידי ספק שירותי האירוח של האתר) או ברמת האתר. יתרונות וחסרונות שינוי ברמת הסרבר (httpd.conf):
יתרונות וחסרונות שינוי ברמת האתר (htaccess):
הפניה קבועה דרך השרתדבר ראשון, השרת צריך לאפשר ביצוע הפניות קבועות. איפשור זה נעשה בקובץ ההגדרות של השרת (httpd.conf), שם יש להגדיר את השורה הבאה: AllowOverride All עתה, ניתן לראות מספר דוגמאות לצורת כתיבת הפניות קבועות שונות באמצעות הכנסת פקודות לקובץ htaccess אותו ממקמים בספרייה בה אמור להתבצע השינוי. המבנה הכללי של הפקודה הוא די פשוט: Redirect status old new בתחילת הקובץ תמיד יש להכניס את השורה הבאה: RewriteEngine On הנה הדוגמא הראשונה: שימוש בקובץ htaccess לשם הפנייה של ספרייה באתר ישן לדומיין חדש (פיצול ספרייה לאתר חדש): Redirect 301 /folder http://www.newdomain.com/newfolder כל הפנייה שתגיע לספרייה folder באתר הישן, תופנה לדומיין newdomain.com, לספרייה newfolder. ההפנייה תהיה לספרייה החדשה, ובתוכה אל שם הדף, כך שאם גם שיניתם את שמות הדפים, עלולות להיווצר בעיות. הנה דוגמא להפנייה של קובץ בודד לקובץ אחר (במקרה זה - בדומיין אחר): Redirect 301 /old.htm http://www.new.com/newpage.html ולסיום, הפנייה מלאה של דומיין לדומיין חדש: RewriteRule ^(.*)$ http://www.newdomain.co.il/$1 יש חשיבות לסדר הפקודותסדר הופעת הפקודות חשוב. הדרך הנכונה לכתוב היא כזו: Redirect 301 /folder http://www.firstdomain.com/ Redirect 301 / http://www.seconddomain.com/ ולא כזו: Redirect 301 / http://www.seconddomain.com/ Redirect 301 /folder http://www.firstdomain.com/ בדוגמא השנייה המערכת לא תגיע לכלל השני. הפנייה קבועה ב-IISהפנייה קבועה ב-IIS דורשת גישה אל הגדרות השרת עליו נמצא האתר. כדי לבצע את ההפנייה הקבועה ב-IIS יש לבצע את הפעולות הבאות:
במידה ומדובר בהפניית 301 בין אתר שלם אל אתר שלם, אין לבחור את האופציה The exact url entered above, ובחלון הכתובת אליה תבוצע הההפניה יש לרשום: http://www.newdomain.com$S$Q הפנייה קבועה בתכנות - ASPישנה אפשרות לבצע את ההפניה הקבועה באמצעות פקודה בשפת ASP. הנה דוגמא לקוד הפנייה: if lcase(request.servervariables("HTTP_HOST")) = "domain.com" then Response.Status="301 Moved Permanently" Response.AddHeader "Location", "http://www.domain.co.il/" end if קוד זה מבצע בדיקה האם הדומיין ממנו הגיעה הקריאה הוא domain.com, ובמידה והיא כן, אז מבוצעת הפניה קבועה אל domain.co.il. את ההפניה יש לבצע לפי כל כתיבה אל הדף, כלומר לפני תגי ה-html וה-head. הפנייה קבועה בתכנות - PHPישנה אפשרות לבצע את ההפניה הקבועה באמצעות פקודה בשפת PHP. הנה דוגמא לקוד הפנייה: <?php header("HTTP/1.1 301 Moved Permanently"); header("Location: http://www.domain.co.il/"); ?> קוד זה מבצע הפניה קבועה אל domain.co.il. את ההפניה יש לבצע לפי כל כתיבה אל הדף, כלומר לפני תגי ה-html וה-head.
|
|||||||||||
|
|||||||||||
|
|||||||||||
|
© כל הזכויות שמורות, 2004-2012, אס.אי.או ישראל טכנולוגיות בע"מ. |
|||||||||||