משתני הפעלה אובדים עקב שימוש ב-FRAMESET ב-Internet Explorer 6?

תרגומי מאמרים תרגומי מאמרים
Article ID: 323752 - View products that this article applies to.
הרחב הכל | כווץ הכל

On This Page

מאפייני הבעיה

אם אתה מיישם FRAMESET אשר FRAME שלו מצביע לאתרי אינטרנט אחרים ברשתות של שותפיך או בתוך הרשת שלך, אולם אתה משתמש בשמות תחומים עליונים שונים, ייתכן שתיוווכח כי קובצי cookie שאתה מנסה להגדיר ב-Internet Explorer 6 נראים כאילו אבדו. לעתים תכופות, הדבר מתבטא באובדן מצב הפעלה (session state) ביישום אינטרנט של Active Server Pages? (ASP) או ASP.NET. אתה מנסה לגשת למשתנה באובייקט Session שאתה מצפה כי יהיה קיים, ובמקום זאת מוחזרת מחרוזת ריקה.

אם דפי האינטרנט שלך משתמשים בשמות DNS ובכתובות IP לסירוגין, תראה בעיה זו גם בהקשר של FRAME.

סיבה

היישום Internet Explorer 6 הכניס לראשונה את התמיכה בתקן P3P? (Platform for Privacy Preferences). תקן P3P מציין כי אם FRAMESET או חלון אב מתייחס לאתר אחר במסגרת FRAME או במסגרת חלון בן, אזי האתר הבן נחשב כתוכן של צד שלישי. כאשר Internet Explorer משתמש בהגדרת ברירת המחדל בינונית לגבי הפרטיות, הוא דוחה קבצי cookie שנשלחו מאתרים של צדדים שלישיים בלא כל הודעה.

פתרון הבעיה

באפשרותך להוסיף כותרת מדיניות P3P קומפקטית לתוכן הבן, וכן באפשרותך להצהיר כי אין מבוצעות פעולות זדוניות כלשהן בנתוני המשתמש. אם Internet Explorer מזהה מדיניות משביעת רצון, אזי הוא מתיר את הגדרת קובץ ה-cookie.

עיין באתר האינטרנט הבא של MSDN כדי להציג רשימה מלאה של קודי מדיניות משביעי רצון ושאינם משביעי רצון:

פרטיות ביישום Internet Explorer 6
http://msdn.microsoft.com/workshop/security/privacy/overview/privacyie6.asp

להלן מדיניות קומפקטית פשוטה המקיימת קריטריונים אלה:

P3P: CP="CAO PSA OUR"
				
דוגמת קוד זו מראה כי האתר שלך מאפשר לך גישה לפרטי הקשר שלך עצמך (CAO), כי כל מידע מנותח הוא למעשה רק 'מנותח לכאורה', דהיינו כי הנתונים מקושרים רק לנוכחות המקוונת שלך ולא לזהותך האמיתית (PSA), וכי נתוניך אינם מועברים לשימושם של גורמים חיצוניים כלשהן (OUR).

באפשרותך להגדיר כותרת זו באמצעות פעולת השירות Response.AddHeader בדף ASP. בתוך ASP.NET, באפשרותך להשתמש בפעולת השירות Response.AppendHeader. באפשרותך להשתמש ביישום snap-in? בשם IIS Management? (inetmgr) כדי להוסיף קובץ סטטי.

בצע את הפעולות הבאות כדי להוסיף כותרת זו לקובץ סטטי:
  1. לחץ על התחל, לחץ על הפעלה ולאחר מכן הקלד inetmgr.
  2. בדף הניווט השמאלי, לחץ על הקובץ או הספרייה המתאימים באתר האינטרנט שלך המיועדים להוספת הכותרת, לחץ באמצעות לחצן העכבר הימני על הקובץ ולאחר מכן לחץ על Properties (מאפיינים).
  3. לחץ על הכרטיסייה HTTP Headers (כותרות HTTP).
  4. בתיבה Custom HTTP Headers (כותרות HTTP מותאמות אישית) לחץ על Add (הוספה).
  5. הקלד P3P עבור שם הכותרת, ולאחר מכן הקלד CP=... עבור מחרוזת המדיניות הקומפקטית, כאשר "..." הוא הקוד המתאים עבור המדיניות הקומפקטית שלך.
לחלופין, משתמשי Internet Explorer יכולים לשנות את הגדרות הפרטיות שלהם כך שיתבקשו לאשר תוכן של צד שלישי. הפעולות הבאות מראות כיצד ניתן לשנות את הגדרות הפרטיות:
  1. הפעל את Internet Explorer.
  2. לחץ על כלים ולאחר מכן לחץ על אפשרויות אינטרנט.
  3. לחץ על הכרטיסייה פרטיות ולאחר מכן לחץ על מתקדם.
  4. לחץ וסמן את תיבת הסימון עקיפת טיפול אוטומטי בקובץ cookie.
  5. כדי לאפשר שמירת קובצי cookie מהפעלה (session) של ASP או ASP.NET, לחץ וסמן את תיבת הסימון אפשר תמיד קבצי cookie של session.
  6. כדי לקבל שאלה לגבי כל סוג קובץ cookie של צד שלישי, לחץ על הצג שאלה ברשימה קבצי cookie של צד שלישי.

סטטוס

אופן פעולה זה מקורו בתכנון עצמו.

מידע נוסף

צעדים לשחזור אופן הפעולה

  1. צור קובץ בשם TestFrameset.asp.
  2. הצבע באמצעות אחד ה-FRAME של הקובץ על מחשב אחר ברשת שלך דרך כתובות IP:
    <HTML>
    
    <FRAMESET ROWS="100%,*">
    <FRAME src="http://111.111.111.111/testFrame.asp"></FRAME>
    <FRAME src="about:blank"></FRAME>
    </FRAMESET>
    
    
    </HTML>
    					
  3. במחשב המרוחק, צור קובץ בשם TestFrame.asp על-פי הדוגמה הבאה:
    <HTML>
    
    <BODY>
    
    <%
    
    Response.write "Session var is " & Session("TestVar")
    Session("TestVar") = "Hello, world!"
    
    %>
    
    <BODY>
    
    <FORM METHOD="POST">
    <INPUT type="submit" value="Print TestVar">
    </FORM>
    
    </BODY>
    
    </HTML>
    					
  4. עבור לקובץ TestFrameset.asp ולאחר מכן לחץ על Form Submission (שליחת טופס).
לאחר השליחה, שים לב כי הרישום Session("TestVar") מודפס כמחרוזת ריקה, הגם שעליה להכיל את המילים "Hello, world!".

מידע נוסף

לקבלת מידע נוסף, לחץ על מספרי המאמרים שלהלן כדי להציגם מתוך מאגר הידע Microsoft Knowledge Base:
283185 כיצד לנהל קבצי Cookie ב-Internet Explorer 6?
290333 תיאור הפרויקט לתקן P3P? (Platform for Privacy Preferences) (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
293222 הגדרות ברירת המחדל לגבי פרטיות ב-Internet Explorer 6 (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)

מאפיינים

Article ID: 323752 - Last Review: יום חמישי 15 יוני 2006 - Revision: 3.0
המידע במאמר זה חל על:
  • Microsoft Internet Explorer (Programming)
מילות מפתח 
kbprb KB323752
כתב ויתור על תוכן מאמר שבוטל
מאמר זה נכתב על אודות מוצרים ש-Microsoft כבר אינה תומכת בהם. לפיכך, המאמר מוצע "כפי שהוא", ולא יעודכן עוד בעתיד.

ספק משוב

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com