DCSIMG
IIS - שלמה גולדברג (הרב דוטנט)
Sign in | Join | Help

שלמה גולדברג (הרב דוטנט)

מרצה בסלע ויועץ בעולם ה - net.

Browse by Tags

הרצת כמה WebRole בפרוייקט azure אחד
25 December 11 08:48 AM | Shlomo | 1 comment(s)
הרבה פעמים יש לנו כמה פרוייקטים שאמורים להתארח על IIS, בסביבה רגילה נארח את כולם על אותו IIS בשרת אחד, ב - azure העניינים קצת יותר מסובכים, היות שכברירת מחדל כל web role אמור לרוץ על מחשב משלו - מה שכמובן הרבה פעמים מיותר ועולה כסף. יש כמה פתרונות לזה - אני אדגים כאן פיתרון בעזרת הגדרה של Virtual Application. Virtual Application הוא בעצם Application רגיל שאנחנו מכירים ב - IIS - מה שמיוחד זה כיצד להגדיר אותו שירוץ כמו שצריך ב - azure. ראשית נכנס לקובץ ServiceDefinition.csdef, נמחק את הגדרות ה - WebRoles...
תגים:, , ,
מה לעשות כששימוש עם UrlRoutingHandler לא עובדת תחת IIS
10 November 11 05:51 PM | Shlomo | with no comments
בעבר כתבתי על היכולת לייצר מנגנון URL Shortcut בשימוש עם UrlRoutingHandler. לפעמים הקוד במחלקה עובד רק כשעובדים עם השרת הפנימי של visual studio, אבל כשעוברים לעבוד מול IIS, הקוד מפסיק לעבוד. נקח לדוגמא את הקוד הבא: public class RoutingHandler : UrlRoutingHandler , IRouteHandler { public string Url { get ; set ; } protected override void VerifyAndProcessRequest( IHttpHandler httpHandler, HttpContextBase httpContext) { httpContext.Response.Redirect(Url); } public IHttpHandler GetHttpHandler( RequestContext...
תגים:, ,
Web Project Development
10 October 11 09:18 AM | Shlomo | 2 comment(s)
בתפוז עלתה שאלה שקשורה לעבודה עם ה - Development Server, בפוסט זה אני אעבור בקצרה ובהמהירות על האופציות השונות. כשעובדים עם פרוייקט web כדי להריץ אותו צריך שרת שיודע להאזין לבקשות ולהחזיר תשובות, כל ההגדרות בנושא נמצאים במאפייני הפרוייקט בטאב Web אופציית ברירת המחדל היא עבודה עם השרת הפנימי של Visual Studio, וזהו החלון הצהוב הקופץ כל פעם מצד ימין בשורת המשימות כברירת מחדל הוא מקבל כל פעם פורט רנדומלי אחר, במידה ועובדים עם השרת הזה עדיף תמיד לשנות אותו ל - Specific Port ולהגדיר אחד כזה. האופצייה המועדפת...
תגים:, ,
כיצד לדבג קוד שרץ תחת IIS - צעד אחר צעד
26 April 11 08:37 PM | Shlomo | with no comments
במידה ואתם מריצים קוד ב – Visual Studio זה לא משנה מה בחרתם במאפיינים של הפרויקט האם לעבוד עם ה – server של visual studio או לעבוד מול IIS, תוכלו לדבג את הקוד. אבל במידה והאפליקציה נמצא ב – IIS והרצתם אותה דרך גלישה בדפדפן ועדיין אתם רוצים לדבג, זה אפשרי בכמה שלבים פשוטים. (לקריאה על Remote Debugging ) ראשית פתחו visual studio. ופתחו את הפרויקט (אם יש לכם אותו – אם אין לכם עדיין אפשר לדבג אם יש לכם את קבצי ה – pdb אבל זה כבר נושא לפוסט אחר) בחרו ב – Attach to Process (בדרך כלל תחת tools או לחיצה...
Rcycling application pool programmatically
15 December 10 09:45 PM | Shlomo | 1 comment(s)
כיצד אפשר להפעיל את פעולת ה - restart על application pool מקוד. מצאתי ב - Code Project את התשובה. כל מה שצריך לעשות זה להוסיף reference ל - System.DirectoryServices ולכתוב את הקוד הבא DirectoryEntry w3svc = new DirectoryEntry ( string .Format( "IIS://{0}/W3SVC/AppPools/appPool Name" , Environment .MachineName)); w3svc.Invoke( "Recycle" , null ); וזה הכול
תגים:,
Request is not available in this context - Application_Start
26 August 10 11:52 AM | Shlomo | with no comments
למה פתאום התחלנו לקבל את השגיאה Request is not available in this context אם ניגשים אליו מתוך ה - Application_Start. במידה ואתם ניגשים ל - HttpContext.Current.Request בתוך ה - Applicatipon_Start בגרסאות IIS7.X האפליקצייה תתחיל להתרסק (מה שלא יקרה כמובן בזמן פיתוח היות שעובדים על השרת הפנימי של visual studio) קצת חיפושים בגוגל - והגעתי לכאן , מסתבר שבגרסאות קודמות של IIS היה מוד אחד בלבד של עבודה שנקרא classic ובו אפשר לגשת לאובייקט request גם ב - application_start לעומת זאת בגרסאות החדשות של IIS יש...
תגים:, , , ,
הוספת Mime Types ב - IIS 7.5 וב - IIS 6
24 August 10 10:52 AM | Shlomo | with no comments
מה זה Mime Type ואיך להוסיף אותם בגרסאות השונות של IIS Mime Type מגדיר מהו סוג הקובץ שאנחנו מדברים עליו, התרגום שלו במקור היה למיילים ולכן הראשי תיבות שלו הם Multipurpose Internet Mail Extensions הם נקראים גם Internet media type וזה משמש גם ב - header של HTTP (שם זה נקרא Content-Type) ב - IIS אפשר למצוא את ההגדרות של ה - Mime Types שהוא מכיר ויודע מה לעשות איתם. נניח שיש לכם קובץ מסוג mp4 ואתם רוצים לאפשר לגלוש אליו ולהוריד אותו, ב - IIS 6 תקבלו 404 (The page cannot be found) ובגרסאות מתקדמות יותר...
PID of Application Pool
08 April 10 05:14 PM | Shlomo | 2 comment(s)
כשמריצים כמה אתרים שנמצאים בכמה Application Pools מבחינת ה - Task Manager שם ה - Process של כל אחד מהם הוא - w3wp. כדי לדעת מה ה - Process Id של כל Application Pool אפשר לעשות את הדבר הבא: ב - IIS 7.5 צריך לכתוב את הפקודה הבאה ב - Command Line cd c:\Windows\System32\inetsrv appcmd.exe list wp בגרסאות קודמות צריך לכתוב כך: cd c:\Windows\System32 cscript.exe iisapp.vbs זה יתן לכם רשימה של Application Pool שרצים ומה ה - ProcessId של כל אחד מהם.
תגים:,
recycling של ה - Application Pool בזמן קבוע
14 March 10 06:58 AM | Shlomo | 4 comment(s)
ב - IIS ל - ApplicationPool יש מאפיין מאוד מעניין שהרבה לא מודעים אליו. Regular Time Interval תחת קטגוריית recycling. כברירת מחדל הערך שלו זה 1740 (29 שעות) המשמעות של זה שכל 29 שעות ולא משנה מה קורה באותו רגע יש restart ל - application pool, לפעמים יש לזה משמעות קריטית לזמן שבו יש restart (אם למשל אתם עושים streaming ופתאום האפליקצייה שלכם עושה restart זה לא נעים. אני לא חושב שכדאי להגדיר אותו ל 0 (כלומר לא לעשות אף פעם restart) אבל חשוב להכיר את המאפיין הזה ולבטל אותו בשעת הצורך. אם זה אפשרי אפשר...
תגים:,
יצירת מנגנון shortcut url באמצעות מנגנון ה - routing של asp.net
21 November 09 06:59 PM | Shlomo | 7 comment(s)
יחד עם ה - MVC הגיע dll מאוד נחמד ששמו System.Web.Routing, הוא משמש מנגנון מאוד מרכזי ב - MVC כדי להפנות לדף המתאים לפי הבקשה . היות שהוא כל כך מוצלח ניתן להשתמש בו גם ב - asp.net לצרכים אחרים. (חשוב לציין שיכול שמן הסתם רוב הלינקים בפוסט לא יעבדו - אלא הם הדגמה למה אפשר לעשות) לדוגמא - אפשר להשתמש בו כדי לייצר מנגנון של Shortcut url - כלומר במקום שיצטרכו לכתוב http://www.sela.co.il/syl/syllabus.aspx?CourseCode=c2&CategoryID=165 אפשר לכתוב http://www.sela.co.il/url/syllabus/c2 או אפילו אפשר לייצר...
System.Data.SqlClient.SqlException: Login failed for user 'IIS APPPOOL\DefaultAppPool'.
09 November 09 11:42 PM | Shlomo | 7 comment(s)
אם נתקלתם בהודעה כזאת או בדומה לה ב - windows 7 - בזמן נסיון גישה לבסיס נתונים. תצטרכו לעשות את התהליך הבא: (למעשה אחרי חיפוש בגוגל הגעתי לכאן שהפנה אותי לכאן - אבל היות שזה כתוב בשפה מוזרה שאני לא מצליח אפילו להבין מה זה לדוגמא "เป็นปัญหาที่ผมพบเจอใน Windows 7 เผื่อใครเจอจะได้ลองเอาไปใช้กัน" אם אתם מכירים את השפה - אשמח לשמוע מה זה) בכל מקרה הנה התהליך. פתחו את ה - IIS (אפשר לכתוב בשורת הפקודה inetmgr) נווטו ל - Application Pools. בחרו ב - DefaultAppPool (או באותו אחד שמריץ את האפליקצייה...
תגים:, , ,
system.interopservices.comexception בניסיון טעינת פרויקט שהוגדר לרוץ על IIS כשאין IIS
28 April 09 10:22 PM | Shlomo | 2 comment(s)
כמו שאתם זוכרים המחשב שלי הלך פייפן, והצלחתי להוציא את כל החומר, אז עד שיהיה לי מחשב חדש, קבלתי מחשב ישן והעברתי אליו את אחד הפרוייקטים שאני עובד עליו, כשאני מנסה לטעון את הפרויקט, אני מקבל הודעה מוזרה, של system.interopservices.comexception ניסיתי לדבג עם VS אחר כדי לבדוק מה שקורה, ולא קבלתי שום מידע, חפישתי קצת בגוגל, עד שמצאתי שמישהו כתב שאם לא מותקן IIS והפרויקט מוגדר לרוץ על IIS זה השגיאה שנקבל, בדרך כלל אני מעדיף להגדיר את הפרוייקטים שלי לרוץ על IIS ולא על הסביבה של VS, כדי לדמות את המצב האמיתי...
the page cannot be displayed - IIS 6.0
17 January 09 09:59 PM | Shlomo | 6 comment(s)
ביום חמישי ישבו שני חברים בעבודה, וניסו במשך זמן רב להבין מדוע האפליקצייה שהם כתבו, רצה ועובדת מצוין על ה IIS המקומי שלהם, ואילו כשהם מעלים את זה לשרת הם מקבלים את ההודעה המרגיזה the page cannot be displayed, וכמובן לא מופיע שום דבר ב event viewr, בסופו של דבר הם שאלו אותי אם יש לי מושג מה קורה, ונזכרתי ש גיא תמיר שהיה הבוס שלי עד לפני שבוע (עבדתי ב QualiSystems ב outsourcing כשנתיים, כרגע חזרתי ל סלע ), אמר לי לפני כשנה שהוא ירק דם עד שהוא הבין שה user שניגשים איתו באפליקצייה כ Anonymous חייב להיות...
תגים:, ,