שלח תשובה

זירת השאלות

520
צפיות
5
תשובות

בעיה בהפניות 301

,‏ 18 ביוני, 2008

שלום לכולם

ערכתי mod write באתר שלי (במסגרת ניסוי, בתיקיה זמנית) כדי לקבל כתובת יפה מעין:

http://www.bemazal.co.il/services/1/

במקום:

http://www.bemazal.co.il/services.php?service=1

הכל טוב ויפה – זה עובד!
אבל .. ניסיתי לבצע הפנית 301 בעמוד כך שאם מגיעים אליו בכתובת הישנה (המכילה פרמטרים) הגולש יופנה אוטומטית לכתובת החדשה. לא הצליח לי. הוא נכנס ל-loop אינסופי של redirects, כי לא מצאתי דרך לעשות תנאי IF שיבחין בין שני העמודים.
כל הפרמטרים של $_GET קיימים בשניהם!
אז.. איך עושים זאת?!

תודה רבה!!!

תגיות:

5 תשובות

  1. BuildHome הגיב:

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


    "החיים הם רק הדרך במסע הנפש", בילד 2004-2008 <img src='/images/6.gif'>
    http://Www.Torec.Net &nbsp;* http://Www.Torec.In

  2. kobyssh הגיב:

    הסבר
    יש לי קובץ .htaccess שעובד. הוא "מתרגם" לדוגמא את הכתובת:
    h


    ttp://www.bemazal.co.il/test/services/1/

    כאילו שנכנסנו לכתובת הבאה:
    http://www.bemazal.co.il/test/services.php?service=1

    עד כאן הכל טוב ויפה ותקין ועובד.

    הבעיה היא כשאני רוצה להוסיף ב-services.php איזשהוא תנאי שאם הגענו לקובץ באמצעות ה-.php עם פרמטרים והכל -> תהיה הפנית 301 לכתובת החדשה והיעילה יותר.
    הבעיה היא שאני לא מצליח למצוא תנאי שיגרום לו לעשות הפניה כשמגיעים מהכתובת הישנה , ושלא לעשות הפניה כשמגיעים לכתובת החדשה. מה שקורה הוא שהוא מפנה אל  הכתובת החדשה והיא מפנה אל עצמה. איזה תנאי אפשר לעשות כדי שזה יפעל??

    זהו.. אני מקוה שיש למישהו פתרון. תודה רבה

    * בתגובה הבאה תוכן הקבצים.

  3. kobyssh הגיב:

    הקבצים
    .htaccess
    ———
    Options +FollowSymLinks
    RewriteEngine on
    RewriteRule services/(.*)/ services.php?service=$1

    services.php (begins with
    ————
    <?
    if (isset($_GET['service']))
    {
        header("HTTP/1.1 301 Moved Permanently");
        header("Location: http://www.bemazal.co.il/test/services/&quot;.$_GET['service']."/");
    }

  4. BuildHome הגיב:

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

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


    "החיים הם רק הדרך במסע הנפש", בילד 2004-2008 <img src='/images/6.gif'>
    http://Www.Torec.Net &nbsp;* http://Www.Torec.In

  5. kobyssh הגיב:

    ההבדל – שאני רוצה שתהיה רק הכתובת החדשה
    וכדי לעשות זאת צריך הפניה.
    בינתיים אגב הצלחתי לפתור את הבעיה. מי שמעוניין מוזמן לקרוא על כך ב
    http://forums.k.co.il/forum_posts.asp?TID=13798

    תודה רבה על העזרה!

שלח תשובה

חדש! אחסון אתרים של וובמאסטר

שירות אחסון אתרים
המקצועי של וובמאסטר!

מומחים באירוח אתרי
WordPress, Joomla, Drupal

  • שרתי לינוקס עם CloudLinux, LiteSpeed
  • 1GB דיסק SSD, 10GB תעבורה חודשית
  • ממשק ניהול cPanel, תעודת SSL חינם

עכשיו במחיר היכרות:
רק 420 ש"ח לשנה!