Python บน IIS/Azure App Services (Windows) ค่อนข้างเป็นตัวเลือกยอดนิยม (เมื่อ Azure ยังคงเรียกว่า Windows Azure) สำหรับไซต์ที่ใช้งานจริงเช่นกัน คุณสามารถใช้ HttpPlatformHandler หรือ wfastcgi เพื่อให้ IIS ส่งต่อการรับส่งข้อมูลไปยังกระบวนการ Python
อย่างไรก็ตาม ความท้าทายที่แท้จริงมาจากข้อเท็จจริงที่ว่า Python web frameworks/apps มักไม่ได้รับการพัฒนา/ทดสอบบน Windows ค่อนข้างดี ดังนั้นหากมีอะไรผิดพลาด คุณก็เกือบจะแน่ใจว่าเป็นฐานผู้ใช้ส่วนน้อยที่ผู้จำหน่าย framework/app หลายรายละเลย
แม้แต่ Microsoft ก็ตัดสินใจละทิ้งความพยายามใน Python บน IIS/Windows และกระตุ้นให้ลูกค้าย้ายไปยัง Azure App Services (Linux)
สิ่งสำคัญ
Microsoft เลิกใช้ส่วนขยาย Python สำหรับ App Service แล้ว
Windows ตามที่อธิบายไว้ในบทความนี้เพื่อสนับสนุนการปรับใช้โดยตรง
ไปยัง App Service บน Linux
https://docs.microsoft.com/en-us/visualstudio/python/managing-python-on-azure-app-service?view=vs-2019
ไปทางไหนก็ดูไม่ยาก
สำหรับภายในองค์กร คุณสามารถใช้ Windows Server เพื่อโฮสต์ Linux VM (Hyper-V) หรือใช้คอนเทนเนอร์ Linux Docker หรือใช้กล่องเซิร์ฟเวอร์ Linux โดยตรง แม้แต่ลูกค้าที่ใช้ Windows เป็นศูนย์กลางส่วนใหญ่ที่ฉันทำงานด้วยก็มีคอนเทนเนอร์ Linux Docker บางตัวทำงานอยู่ในปัจจุบัน
โปรดทราบว่าสิ่งนี้ใช้ไม่ได้กับเว็บแอป Python เท่านั้น เว็บแอป PHP/Go/Java/Node.js เผชิญกับความท้าทายเดียวกัน ดังนั้นจึงควรโฮสต์บน Linux จะดีกว่า