aspnet_wp.exe

123Action

New member
aspnet_wp.exe

זהו תהליך של חלונות, שאחרא להריץ את הפרוייקט שכתבת בזיעת אפיך, יש לי כמה שאלות לגביו : 1. מי קורא לו ? איך הוא יודע מתי לרוץ ? אני אמנם הרצתי את הפרוייקט דרך Visual Studio .Net, האם היא קראה לו ? 2. מה הקשר בינו לבין ה CLR ? אני יודע שה CLR אחראי ליצור את ה Application Domain - הסביבה בה ירוץ הפרוייקט שלי. האם aspnet_wp.exe הוא בעצם ה CLR, או שהוא קורא לתוכנית אחרת, שהיא ה CLR ? 3. פתחתי VS, הרצתי פרוייקט, ראיתי ש aspnet_wp.exe מופיע ברשימת התהליכים (קודם הוא לא היה), הוא תופס 31 מגה. סגרתי את הפרוייקט, סגרתי את VS, אבל aspnet_wp.exe לא נעלם מרשימת הפרוססים, הוא עדיין שם, ןממשיך לתפוס זכרון. חשבתי שלוקח לו קצת זמן להסגר ולהעלם, אבל גם לאחר חצי שעה הוא עדיין שם, מדוע ? (XP PRO). 4. שאלה אחרונה, הבנתי שהקשר בין aspnet_wp.exe לבין היוזר ASP.NET Machine הוא שהפרוסס הזה בעצם רץ תחת היוזר ASP.NET Machine. 4.1 האם זה באמת כל הקשר בינהם ? 4.2 מדוע לרוץ עליו, ולא על היוזר שאינו אני עובד ב VS.Net כרגע ? האם זה מטעמי אבטחה ? 4.3 איך בכלל אפשר להריץ פרוסס תחת יוזר שונה מהיוזר הנוכחי שעובד ? תודה חברים וסליחה על השאלות הרבות
 

Admini

New member
---->

1. IIS 2. CLR אחראית גם להרצת הפרוסס הזה, הוא לא ה-CLR 3. הוא נסגר רק כשאתה מוריד את IIS 4. אבטחה 4.3 זה לא מסובך בכלל
 

123Action

New member
אתה שולח מברקים ?

1.IIS מפעיל את הפרוסס aspnet_wp.exe ? איך הוא יודע שעליו להפעיל דווקא את הפרוסס הזה ? איפה זה מוגדר לו ? 1.1 ואיך ISS יודע להפעיל את עצמו ? מי קורא לו ? 2. אתה אומר ה CLR הוא זה שמפעיל את הפרוסס הזה, ולא להיפך ? אם כן, אני יודע מה התפקיד של ה CLR, בל הוא יותר מידי וירטואלי עבורי - ב CLR לא אמור להיות פרוסס בפני עצמו ? 3. למה רק כשאני סוגר את IIS ? IIS היה פתוח אצלי גם לפי כן, אבל הפרוסס לא עבד עד שלא הרצתי את האפליקציה. 4.1 ? 4.2 ? 4.3 - יפה שזה לא מסובך, אבל איך ??
 

Admini

New member
---->

אתה שולח מברקים ? כן
1.IIS מפעיל את הפרוסס aspnet_wp.exe ? איך הוא יודע שעליו להפעיל דווקא את הפרוסס הזה ? איפה זה מוגדר לו ? ב-ISAPI Ext. מוגדר לו לשייך את כל הסיומות של ASPX ל-ASPNET_ISAPI.DLL שמריץ את aspnet_wp.exe 1.1 ואיך IIS יודע להפעיל את עצמו ? מי קורא לו ? הוא פועל תמיד. 2. אתה אומר ה CLR הוא זה שמפעיל את הפרוסס הזה, ולא להיפך ? אם כן, אני יודע מה התפקיד של ה CLR, בל הוא יותר מידי וירטואלי עבורי - ב CLR לא אמור להיות פרוסס בפני עצמו ? הוא לא פרוסס בפני עצמו. 3. למה רק כשאני סוגר את IIS ? IIS היה פתוח אצלי גם לפי כן, אבל הפרוסס לא עבד עד שלא הרצתי את האפליקציה. גם אם רק תיכנס אליה עם דפדפן היא תיפתח. כך חוסכים משאבי מערכת.
 

123Action

New member
FedEx ../images/Emo13.gif הממ...

1. איפה אני יכול לראות את ה ISAPI Ext הזה ? 2.מה זה "פועל תמיד" אני יכול לכבות או להפעיל אותו כרצוני.. 3. ה CLR הוא פרוסס בפני עצמו ? מה שם הפרוסס ? 4. אתה אומר שגם אם IIS פועל, אז רק בפעם הראשונה שאנ אבקש ממנו עמוד ASPX, אז aspnet_wp.exe יופעל בפעם הראשונה, ויעלם רק לאחר שאסגור את IIS ?
 

Admini

New member
---->

1. איפה אני יכול לראות את ה ISAPI Ext הזה ? לוח בקרה -> כלי ניהול -> IIS -> לחצן ימני על האתר -> מאפיינים -> ספריה ראשית -> מאפיינים (על יישום) ומשם תסתדר לבד 2.מה זה "פועל תמיד" אני יכול לכבות או להפעיל אותו כרצוני.. הוא עובד כ-Service אלא אם כן תסגור אותו. 3. ה CLR הוא פרוסס בפני עצמו ? מה שם הפרוסס ? הוא לא פרוסס 4. אתה אומר שגם אם IIS פועל, אז רק בפעם הראשונה שאנ אבקש ממנו עמוד ASPX, אז aspnet_wp.exe יופעל בפעם הראשונה, ויעלם רק לאחר שאסגור את IIS ? כן, אלא אם כן תהרוג את aspnet_wp בצורה עצמאית (שימושי לפעמים).
 

123Action

New member
האם אתה מתכוון לתמונה המצורפת ?

1. בתמונה הזו אני רואה שמשייכים את aspnet_isapi.dll לסיומות aspx ועוד. אבל את זו אכן התמונה, המשמעות היא שאפשר לשנות זאת עבור כל אתר, וזה לא נקבע עבור כל האתרים שמוגדרים ב ISS... 2. אז מה זה ה CLR מבחינה פיזית ? (לא מה התפקיד שלו) 3. בשביל מה הבזבוז הזה ?! אם הרצתי פעם אחת דף ASPX, אז aspnet_wp.exe תופס לי 31 מגה בזכרון, גם אם לא אשתמש בו יותר (עד שאעשה ריסט) ??
 

nattygur

New member
ה CLR הוא למעשה DLL

אחד אשר נטען ע"י מערכת ההפעלה ל Processes אשר יכולים לארח CLR או ל Prceses עם PE-COFF Header של .NET. שם ה DLL הוא MSCOREE.DLL והוא אחראי להתנעת הפעולה של ה CLR. הפרדוקס המשעשע שזה רכיב COM, אולי האחרון אשר נכתב ע"י MS אבל COMי
 

123Action

New member
שם הפרוסס של ה CLR הוא MSCOREE.DLL

אם כן, מדוע אינני רואה אותם ברשימת התהליכים ? ואגב, מה לגבי בזבוז הזכרון ? רוב תודות !
 

nattygur

New member
לא לא הבנת

ה CLR הוא לא Process הוא אוסף של DLLs אשר נטענים למרחב זיכרון של האפליקציה הקוראת להם. ה DLL הראשון אשר קורא לשאר הוא mscoree.dll.
 

Admini

New member
---->

1. כן (ב-IIS שבגרסאות השרת אפשר להגדיר לכל האתר וגם לכל המערכת) 2. בשביל זה יש את נתי 3. תהרוג אותו, לא יקרה כלום.
 

123Action

New member
../images/Emo41.gif../images/Emo41.gif../images/Emo41.gif חשוב מאוד : ../images/Emo41.gif../images/Emo41.gif../images/Emo41.gif

פרסמתי בפורום בוני אתרים, אבל אשמח לקבל גם כאן עזרה, במיוחד בשל החלק האחרון של הודעתי : קבעתי ל IIS תיקיה בכונן אחר. השאלה היא מה אני עושה עם התיקיה הקיימת עדיין בכונן הקודם, האם פשוט למחוק אותה, או שיש שם דברים שהוא צריך ? תחת Inerpub היו לי התיקיות : AdminScripts - בתוכה הבה סקריפט VB. iissamples - בתוכה עוד הרבה תיקיות, SDK קבצי סקריפטים רבים, ועוד. mailroot - בתוכה עוד תיקיות רבות ריקות. wwwroot - בתוכה מספר קבצים + מספר תיקיות (_private,_vti_log,images,webctrl_client וגם התיקיה aspnet_client שנראה לי חשוב בגלל מה שיש בתוכו). בקיצור, מה עושים הלאה ? מה לזרוק ? מה חשוב, מדוע ומה לעשות איתו ? תודה ענקית !
 

Admini

New member
---->

1. IIS Samples - להשמיד (יחד עם MDAC, Scripts ועוד כמה). ב-AdminScripts אין צורך לגעת אבל אולי אפשר למחוק. 2. WWWRoot - למחוק את כל תכולתה. 3. בניהול של IIS תמחק את כל הספריות הוירטואליות ש-IIS יצר בשעת ההתקנה (חוץ מאלו הקשורות ל-NET). הדבר הזה חיוני מהפן האבטחתי. (ועדיף גם לשנות את הפורט)
 

123Action

New member
המממ...

נשאל שאלה הפוכה : הפנתי את IIS למיקום בכונן אחר. מתוך מה שנשאר בכונן קודם יש משהו שכן צריך לשמור, או שאפשר לזרוק הכל ? אני רואה שם סקריפטים, תיקיית aspnet ועוד ועוד - מטוח שאפשר למחוק הכל ? ואגב, היכן שמורים הקבצים שבהם משתמש IIS לטובת שליחת דואר ב SMTP ?
 

123Action

New member
../images/Emo35.gif אתה בטוח ../images/Emo35.gif

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

123Action

New member
מה זה אומר "לא לגעת" ?

להשאיר אותו בכונן הישן ? (אני לא מעוניין), או להעתיק אותו לכונן החדש ? ובכל מקרה, התיקיות בו ריקות לחלוטין, מדוע לשמור ?
 

yuval k

New member
MailRoot

תחת תיקייה זו יש תיקיות שונות הקשורות לשירות ה-SMTP - גם אם הן ריקות עכשיו, יהיה להן שימוש אח"כ.
 

123Action

New member
אבל...

התקנתי IIS ממזמן, ועדיין אין בהם כלום (אולי מכיוון שלא שלחתי דרכו שום אימייל ?) ואם אכן צריך להשאיר אותו - אני לא רוצה שהוא יהיה בכונן הישן, פשוט להעביר אותו לחדש ?
 
למעלה