วิธีย้ายเว็บไซต์ IIS ไปยัง Windows Server 2022 เครื่องใหม่แบบไม่มี Downtime
การย้ายเว็บไซต์จาก IIS Server เดิมไปยัง Windows Server 2022 เครื่องใหม่เป็นงานที่ผู้ดูแลระบบต้องทำอยู่บ่อยครั้ง ไม่ว่าจะเป็นการอัปเกรดฮาร์ดแวร์ ย้าย Data Center เปลี่ยนผู้ให้บริการ Cloud หรือปรับปรุงระบบให้รองรับผู้ใช้งานจำนวนมากขึ้น
สิ่งที่หลายองค์กรกังวลมากที่สุดคือ
❌ เว็บไซต์ล่ม
❌ ผู้ใช้งานเข้าเว็บไซต์ไม่ได้
❌ SEO เสียหาย
❌ ข้อมูลสูญหาย
บทความนี้จะแนะนำขั้นตอนการย้ายเว็บไซต์ IIS ไปยัง Windows Server 2022 อย่างปลอดภัย พร้อมแนวทางลด Downtime ให้เหลือน้อยที่สุด
① วางแผนก่อนย้ายระบบ
ก่อนเริ่มควรตรวจสอบ
✅ ขนาดเว็บไซต์
✅ ฐานข้อมูล
✅ SSL Certificate
✅ DNS Provider
✅ Application Pool
✅ Web.config
✅ Third-Party Component
การวางแผนที่ดีช่วยลดปัญหาระหว่างย้ายระบบได้อย่างมาก
② สำรวจระบบเดิมทั้งหมด
เก็บข้อมูลจาก Server เดิม
🌐 เว็บไซต์
Get-Website
⚙️ Application Pool
Get-WebAppPoolState
🔌 Binding
Get-WebBinding
📂 Physical Path
จดบันทึกทุกเว็บไซต์
③ เตรียม Windows Server 2022 เครื่องใหม่
ติดตั้ง
✅ IIS
✅ .NET Runtime
✅ ASP.NET
✅ URL Rewrite
✅ Web Deploy
✅ PHP (ถ้ามี)
✅ Database Client
ให้เหมือน Server เดิมมากที่สุด
④ ติดตั้ง IIS Roles ที่จำเป็น
ผ่าน Server Manager
เลือก
Web Server (IIS)
พร้อม Feature ที่เว็บไซต์ต้องใช้
ตัวอย่าง
ASP.NET
CGI
WebSocket
Static Content
⑤ Backup เว็บไซต์จาก Server เดิม
สำรอง
📂 Website Files
ตัวอย่าง
D:\Websites
⚙️ IIS Configuration
🔐 SSL Certificate
🗄️ Database
ห้ามข้ามขั้นตอนนี้เด็ดขาด
⑥ Export IIS Configuration
เปิด
IIS Manager
หรือใช้คำสั่ง
appcmd add backup BeforeMigration
ช่วยให้ย้อนกลับได้หากเกิดปัญหา
⑦ Backup SSL Certificate
เปิด
certlm.msc
Export
PFX
พร้อม Password
เพื่อใช้บน Server ใหม่
⑧ Backup Database
ตัวอย่าง
SQL Server
BACKUP DATABASE
MySQL
mysqldump
เก็บไฟล์ไว้ในที่ปลอดภัย
⑨ คัดลอก Website Files
คัดลอก
D:\Websites
ไปยัง
D:\Websites
บน Windows Server 2022
สามารถใช้
✅ Robocopy
✅ SMB Share
✅ FTP
✅ Rsync
⑩ Restore IIS Configuration
ใช้คำสั่ง
appcmd restore backup BeforeMigration
หรือสร้างเว็บไซต์ใหม่ด้วยตนเอง
⑪ Import SSL Certificate
เปิด
certlm.msc
Import ไฟล์
.pfx
จาก Server เดิม
⑫ Restore Database
นำ Database กลับเข้าสู่ระบบ
ตัวอย่าง
SQL Server
RESTORE DATABASE
MySQL
mysql import
⑬ ทดสอบเว็บไซต์ก่อนเปลี่ยน DNS
แก้ไขไฟล์
hosts
บนเครื่องทดสอบ
ตัวอย่าง
203.0.113.20 example.com
ช่วยให้ทดสอบเว็บไซต์บน Server ใหม่ได้โดยไม่กระทบผู้ใช้งานจริง
⑭ ตรวจสอบทุกระบบ
ตรวจสอบ
✅ Login
✅ Database
✅ API
✅ Upload File
✅ Download File
✅ SSL
✅ Email Function
ก่อนเปลี่ยน DNS
⑮ ลด DNS TTL ล่วงหน้า
ก่อนวันย้ายระบบ
ลด TTL
ตัวอย่าง
300 Seconds
หรือ
5 Minutes
จะช่วยให้ DNS เปลี่ยนเร็วขึ้น
⑯ เปลี่ยน DNS ไปยัง Server ใหม่
ตัวอย่าง
เดิม
203.0.113.10
ใหม่
203.0.113.20
เมื่อ DNS กระจายครบ ผู้ใช้งานจะเริ่มเข้า Server ใหม่
⑰ ตรวจสอบหลัง Migration
ใช้คำสั่ง
nslookup example.com
ตรวจสอบว่า Domain ชี้มายัง IP ใหม่แล้ว
⑱ เฝ้าระวัง Log และ Event Viewer
ตรวจสอบ
📄 IIS Log
📋 Windows Event Viewer
⚠️ Application Error
อย่างน้อย 24–48 ชั่วโมงแรก
⑲ ปัญหาที่พบบ่อย
❌ Website Error 500
สาเหตุ
.NET Version ไม่ตรง
วิธีแก้
ติดตั้ง Runtime ให้ครบ
❌ SSL ใช้งานไม่ได้
สาเหตุ
Certificate ไม่ถูก Import
❌ Database เชื่อมต่อไม่ได้
สาเหตุ
Connection String ผิด
❌ Permission Error
สาเหตุ
NTFS Permission ไม่ครบ
⑳ วิธีลด Downtime ให้เหลือเกือบศูนย์
✅ เตรียม Server ใหม่ล่วงหน้า
✅ ทดสอบผ่าน Hosts File
✅ ลด DNS TTL
✅ Backup ทุกอย่าง
✅ ย้ายช่วงกลางคืน
✅ ตรวจสอบระบบก่อนเปลี่ยน DNS
แนวทางนี้ช่วยให้ผู้ใช้งานแทบไม่รู้สึกว่ามีการย้ายระบบเกิดขึ้น
㉑ Best Practices สำหรับองค์กร
🚀 ใช้ Web Deploy
🚀 ใช้ Staging Server
🚀 สำรองข้อมูลทุกครั้ง
🚀 ทดสอบ Rollback Plan
🚀 ตรวจสอบ Monitoring
🚀 เก็บ Backup อย่างน้อย 30 วัน
ทีมงาน comsiam มักใช้วิธีทดสอบบน Server ใหม่ให้สมบูรณ์ก่อนเปลี่ยน DNS จริง ทำให้สามารถย้ายเว็บไซต์จำนวนมากไปยัง Windows Server 2022 ได้โดยแทบไม่มี Downtime
🎯 สรุป
การย้ายเว็บไซต์ IIS ไปยัง Windows Server 2022 ไม่ใช่เพียงการคัดลอกไฟล์ แต่ต้องย้าย Configuration, Application Pool, SSL Certificate และ Database อย่างครบถ้วน
หากวางแผนอย่างถูกต้อง ลด DNS TTL ล่วงหน้า และทดสอบทุกระบบก่อนเปลี่ยน DNS จะสามารถย้ายเว็บไซต์ได้อย่างปลอดภัย ลด Downtime เหลือเพียงไม่กี่นาที หรือแทบเป็นศูนย์ ซึ่งเป็นแนวทางที่องค์กรขนาดใหญ่และทีมงาน comsiam ใช้งานจริงในการ Migration ระบบเว็บไซต์ระดับ Production