การสร้างเวบไซด์ใน IIS 6.0

ในแต่ล่ะครั้งที่เราสร้างเวบไซด์โดยเฉพาะ Server ที่เป็น windows เราจะคุ้นเคยกับการ config IIS (Internet Information Server ) เป็นอย่างดี  โดยเฉพาะ IIS 6 ซึ่งอยู่บน windows 2003  server (ปัจจุบัน version ล่าสุด คือ IIS 7  บน Windows Server 2008 Omar AL Zabir  เจ้าของเวบ site pageflakes.com ได้เขียนใน  blog ของเขาเรื่อง  Best practices for creating websites in IIS 6.0 ผมได้นำมาสรุปเอาไว้ว่า

ควรสร้าง Application Pool แยกออกมาในแต่ล่ะเวบไชด์
เนื่องจาก ใน IIS มี  process ที่ชื่อว่า  w3wp.exe  สามารถที่จะสร้าง  instance การทำการได้หลายๆ ตัวพร้อมกันตามจำนวน app pool  โดยปกติแล้ว  IIS จะมี DefaultAppPool เป็น app pool เบื้องต้น แต่ล่ะ app pool จะมีหน้าที่ในการจัดการ   In-Process  seesion , memory cache  บน server ถ้าหากเรามีหลายๆเวบ site  บน Server ทุกตัวจะใช้ DefaultAppPool ร่วมกัน  ทำให้การจัดการเป็นไปได้ยาก  ในเวลาที่บางเวบไซด์มีจำนวน traffic จำนวนมาก  เพราะฉนั้นเราควรแยก app pool ออกมาแบบ  one website per one app pool  ทำได้โดย

ควร disable DefaultAppPool เพื่อป้องกันเข้าใจผิดและเข้าไปใช้งาน DefaultAppPool ได้อีก

image

อย่างแรกเลย click ขวา ที่ Application Pool  แล้วเลือก new application pool  ควรตั้งชื่อ app pool ให้เหมือนกับชื่อเวบไซด์ เพื่อให้ง่ายต่อความเข้าใจ

image

เวลาที่เราสร้างเวบไซด์ใหม่ก็ให้ Reference ให้ตรงกับ App pool ที่เราสร้างไว้ เหมือนรูปด้านบน

Customize Website properties for performance, scalability and maintainability

  1. Maping host  header ให้ถูกต้องทั้ง ที่มี  www และ ไม่มี  www  (domain.com,www.domain.com)image
  2. เปิดการใช้  log  ดังรูป เพื่อนำข้อมูลใช้ในการวิเคราะห์ เพื่อหาข้อมูล bandwidth หรือ อาจจะใช้  Google Analysis Service ก็ได้image
  3. ควรเพิ่ม defualt.aspx  ถ้าหาก user เปิดเวบไซด์เข้ามาโดยไม่มีการเรียกชื่อ  file .aspx  defualt.aspx ก็จะโดนเรียกใช้ทันทีimage
  4. Turn on Content Expiration. เพื่อให้  Browser เก็บ cache นั้นเอาไว้ประมาณ 30 วัน
    Remove the X-Powered-By: ASP.NET header เพื่อลดการ ส่งค่าไปมาให้โดยไม่มีประโยชน์ (21 Byte) ในแต่ล่ะครั้ง อีกทั้งช่วยป้องกันพวก  hacker ได้ในระดับหนึ่ง    เพิ่ม “From” header และ  ตั้งชื่อ  server name มีประโยชน์ในการทำ load balancing

    image

  5. Set 404 Not found ไปที่  file ที่เราสร้างขึ้นเอง เช่น myerrorpage.aspx มีประโยชน์ ในการจัดการ error messageimage
  6. ตรวจสอบว่าเราเลือกใช้  ASP.NET  2.0 สำหรับเวบไซด์ ASP.NET 2.0 3.0 3.5image

สุดท้าย ควรเปิดการใช้การบีบอัด  header โดยใช้  gzip  สามารถเข้าไปดูวิธีการได้ที่
turn on IIS 6.0 gzip compression.

credit : http://codesnippet.exteen.com/20081023/iis-6-0

บันทึกโพสใน โปรเเกรมมิ่ง(Programming). ป้ายกำกับ: . 2 Comments »

2 Responses to “การสร้างเวบไซด์ใน IIS 6.0”

  1. thailiveincagiver Says:

    ยากจังเลยค่ะ มีวีธีสร้างเวปไซค์ของตัวเองแบบง่ายๆมั้ยค่ะ อยากเขียนเวปไซคืแบบ kapook หรือ teenee ไม่ทราบต้องเริ่มต้นยังไง พอจะทราบมั้ยค่ะ

  2. janbin Says:

    ก็วิธีข้างบนมันเป็นวิธี set IIS แบบละเอียดและขั้นสูง
    เพื่อที่จะเพิ่มความเร็ว ประสิทธิภาพ ความปลอดภัยให้สูง
    กว่าการ set แบบปกติ ถ้าคุณ thailiveincagiver ต้อง
    ทำ server windows และใช้ IIS เป็น app server
    ก็คงต้อง set เช่นนี้ แต่ถ้าจะพูดในเรื่องการเขียนเว็ป
    ที่ใช้ app server เป็น IIS เราแทบจะไม่ต้อง set
    อะไรมากเท่านี้ เพราะเราใช้เพียงแค่ ทดสอบและจำลอง
    เครื่องของเราให้สามารถเปิด เว็ปที่เราสร้างขึ้นได้เท่านั้น
    ยังไม่ต้องคำนึงถึง ความเร็ว ประสิทธิภาพ ความปลอดภัย
    ของ IIS เพราะสุดท้ายเราต้องเอาเว็ปเราไปไว้ที่ server
    ซึ่งโดยปรกติจะไม่ใช่เครื่องที่เราใช้เขียนเว็ป อาจจะฝากไว้ที่
    server ที่ให้บริการเป็น web hosting หรือเราจะเปิด
    webhosting เอง เราถึงจะต้อง set IIS อย่างในบทความ
    ข้างบน ดังนั้นที่คุณ thailiveincagiver ถามวิธีสร้างเว็ปของตัวเอง จึงอยู่ในส่วนของการออกแบบและ เขียนโปรแกรม คงยังไม่ได้พูดถึงส่วนของการติดตั้งเอง บน server ของตัวเองใช่ไหมครับ ดังนั้นวิธี set IIS แบบง่ายๆ ไว้จำลองเครื่องของเราเท่านั้น
    ผมจะพูดถึงวิธีการ set IIS สำหรับ เว็ปที่สร้างจาก .Net นะครับซึ่ง โดยปกติเราสร้างเว็ปบน .Net จะไม่ต้อง set iis เลยเพราะ
    ตอนเราสร้างโปรเจคเว็ป ตรงส่วน Location เราเลือก File System ตัวVisual Studio มันเลยควบคุมการ set iis ให้เราโดยอัตโนมัติ ทำให้เราเวลารันโปรเจคเว็ป หรือ browser ดู page จึงสามารถทำได้โดยไม่ต้อง set iis เลย ซึ่งถ้าเราต้องการ set iis เองให้กับโปรเจคเรา ให้เลือก Location เป็น HTTP ซึง่เราต้อง set iis เองดังนี้

    1. วิธีการติดตั้ง IIS http://www.dwdev.dwthai.com/setup/iis_setup.htm

    2. ถ้าเราติดตั้ง IIS หลังลง .NET Framework เราต้องทำการทำความรู้จักให้ IIS กับ ASP.NET ได้รู้จักกันโดยเข้าไปตามPath นี้ C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
    ซึ่งที่ให้เข้าเพราะบางทีตรงนี้ v2.0.50727 อาจไม่เหมือนกัน
    จากนั้น copy path แล้วให้เปิด run พิมพ์ cmd จากนั้น
    ในหน้า cmd ให้พิมพ์ cd เว้นวรรค แล้วคลิกขวา จะมี path
    ที่เรา copy ไปวางลงไป กด enter จากนั้นพิมพ์ aspnet_regiis.exe -i แล้วกด enter มันจะทำการ install ให้เรา

    3. จากนั้น ให้สร้าง Virtual Directory
    http://www.aspthai.net/aspnet/vir_aspx.asp
    แล้วหน้าตามในลิ้งมันเข้ายังไงก็ตามนี้เลยคับ
    Control panel -> Administrative Tools -> Internet Information Services
    จากในลิ้งจะมีวิธีเข้าไปดู web ที่เราสร้างด้วย

    ลองศึกษาดูครับ มีวิธีต่างๆในเว็ปท้ังที่เป็น ภาษาไทยก็เยอะครับ แต่ลึกๆอย่าง บทความนี้คงหายากหน่อย ผมเลย copy จาก ต้นฉบับมาเก็บไว้ดูนะครับ


ใส่ความเห็น