הפנייה קבועה 301 – URL Redirect Permanent

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

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

פעולה זאת לפעמים הינה קריטית בתחום קידום אתרים ומאפשרת שימור ומירכוז הכח של דפי אינטרנט (Link Popolarity) במנועי החיפוש.

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

 

Apache Web Server .htaccess file

קובץ .htaccess בשרת אינטרנט Apache הינו קובץ שניתן ליישום בכל ספריה בשרת האינטרנט והוא מכיל הוראות ופקודות לשרת האינטרנט.
אחת מהפקודות מאפשרת להורות לשרת האינטרנט על שינוי של מסלול הקבצים וזו הדרך הראויה לבצע הפנייה קבועה 301.

הפנייה קבועה של דף הבית לכתובת קנונית (non-www to www):

Redirect 301 /old-url /new-url
או
Redirect Permanent /old-url /new-url

הפנייה קבועה של דף הבית לכתובת קנונית (non-www to www):
פתרון זה יפנה כל בקשה לכתובת הדומיין ללא www לכתובת הקנונית עם www. יש להגדיר בקובץ .htaccess שבספרית השורש:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^interspace\.net
RewriteRule (.*) http://www.interspace.net/$1 [R=301,L]

 

Microsoft IIS Web Server

הפנייה קבועה של דף בודד:

  1. מסיירים בקבצי האתר ולוחצים קליק ימני על שם הספריה או הקובץ שאותו אנו רוצים להפנות.
  2. בוחרים באפשרות “a redirection to a URL”.
  3. מכניסים את הכתובת אליה תתבצע ההפניה.
  4. בוחרים את “The exact url entered above” ואת “A permanent redirection for this resource”.
  5. לוחצים על “Apply” לביצוע ההפניה.

 

PHP 4 או PHP 5

הפנייה קבועה של דף בודד:

<?php
header(‘HTTP/1.1 301 Moved Permanently’);
header(‘Location: http://www.new-url.co.il/’);
?>

הפנייה קבועה של דף הבית לכתובת קנונית (non-www to www):

<% If InStr(Request.ServerVariables(“SERVER_NAME”),”www”) = 0 Then Response.Status=”301 Moved Permanently” Response.AddHeader “Location”,”http://www.” & Request.ServerVariables(“HTTP_HOST”) & Request.ServerVariables(“SCRIPT_NAME”) Response.End End if %>

 

Active Server Pages – ASP

הפנייה קבועה של דף בודד:

<%
Response.Status=”301 Moved Permanently”
Response.AddHeader=’Location’,’http://www.new-url.co.il/’
%>

הפנייה קבועה של דף הבית לכתובת קנונית (non-www to www):

יש לדאוג שהקוד הבא ירוץ לאורך כל דפי האתר. אפשרות אחת להריץ אותו היא ע”י הכנסתו כ-global include file, והאפשרות השניה היא להריץ אותו כסקריפט קבוע כפעולה קבועה לפני הרצת דף האינטרנט:

<% If InStr(Request.ServerVariables(“SERVER_NAME”),”www”) = 0 Then Response.Status=”301 Moved Permanently” Response.AddHeader “Location”,”http://www.” & Request.ServerVariables(“HTTP_HOST”) & Request.ServerVariables(“REQUEST_URI”) Response.End End if %>