ข้ามไปที่เนื้อหาหลัก

ติดตั้ง PHP 7.0.x สำหรับ IIS 7.5 บน Windows Server 2008 R2 64bit

สรุปขั้นตอนการอัพเกรด PHP เป็นเวอร์ชั่น 7 แบบคร่าวๆ นะครับ
สำหรับท่านใดที่ใช้ IIS เป็นเว็บเซิร์ฟเวอร์บนระบบปฏิบัติการ Windows Server 2008 R2  64bit ก็สามารถใช้ขั้นตอนต่อไปนี้ได้เลย ซึ่ง IIS สำหรับระบบปฏิบัติการ Windows Server 2008 R2 จะได้เป็นเวอร์ชั่น 7.5 และเมื่อติดตั้ง PHP จะได้เวอร์ชั่น PHP 5.3 

ติดตั้ง PHP เพื่อใช้งาน PHP บน IIS Web Server (Windows Server 2008)

หลังจากที่ปลายปีที่แล้ว PHP ได้ปล่อยเวอร์ชั่น 7 ออกมา ซึ่งเท่าที่เก็บข้อมูลมาแล้วเห็นว่าประสิทธิภาพดีกว่าทุกรุ่น จึงสนใจที่จะอัพเกรดเป็น PHP 7.0.13 ที่เป็นเวอร์ชั่นล่าสุด แต่เมื่อดาวน์โหลดมาใช้กลับไม่สามารถสั่งให้เว็บเซิร์ฟเวอร์รันได้ ก็เลยเปลี่ยนเป็นใช้วิธีติดตั้งเวอร์ชั่นที่มีใน Web Platform Installer แทน ซึ่งก็ได้เป็น PHP 7.0.9 มาแทน

สำหรับขั้นตอนการติดตั้ง PHP เวอร์ชั่นอื่นเพิ่มเติมก็มีดังนี้ครับ

1. ติดตั้ง PHP เวอร์ชั่น 7 สำหรับ IIS ผ่านทาง Web Platform Installer
https://sysadmin.psu.ac.th/…/%E0%B8%81%E0%B8%B2%E0%B8%A3-u…/


แต่หลังจากตั้งค่าผ่าน PHP Manager ใน IIS จะพบว่ายังไม่สามารถใช้งานได้ เพราะการจะรัน PHP 7.0.x ได้นั้นต้องมี VC14 ด้วย (Visual C++ Redistributable for Visual Studio 2015)
http://comerror.com/runtime-l1-1-0-dll-is-missing.html

แต่การจะติดตั้ง VC14 ได้นั้นระบบปฏิบัติการจะต้องอัพเกรดเป็น Service Pack 1 ก่อน

2. อัพเกรด Windows Server เป็น SP1 (ค้นหาด้วยคำว่า Windows Server 2008 R2 SP1)
https://www.microsoft.com/th-th/download/details.aspx?id=5842

3. ติดตั้ง VC14 จะเป็นเวอร์ชั่น Visual C++ Redistributable for Visual Studio 2015
Visual C++ Redistributable for Visual Studio 2015
https://www.microsoft.com/en-us/download/details.aspx?id=48145


หลังจากนั้นก็รันเปลี่ยนเวอร์ชั่นไปมาระหว่าง 5.3 กับ 7.0 ด้วย PHP Manager ใน IIS ได้ตามสะดวก ^^" ซึ่งตอนนี้ได้ลองทดสอบใน VMWare แล้วผ่านฉลุย ต่อไปก็จะเป็นขั้นตอนการเปลี่ยนโค้ดจาก PHP 5.3 ไปเป็น PHP 7.0 โดยการไล่แก้คำสั่งหรือฟังก์ชั่นที่ถูกยกเลิกไปแล้ว

ซึ่งงานตรงนี้คงจะใช้เวลาค่อนข้างนานทีเดียว แต่ก็ลดเวลาในส่วนของการจัดการฐานข้อมูลได้หน่อยเพราะผมใช้คลาสที่เขียนแยกเอาไว้ ก็ไม่ต้องไปไล่แก้คำสั่งที่เกี่ยวกับฐานข้อมูลทุกหน้า แค่แก้ที่คลาสที่เดียวก็จบเลย (ตรงนี้แหละครับเป็นจุดที่ผมอยากเปลี่ยนไปใช้ CodeIgntier เพราะเราไม่ต้องแก้อะไรเลย ^^ เวลาเปลี่ยนเวอร์ชั่น PHP หรือเปลี่ยนฐานข้อมูล ถ้าใช้ Class ที่มีอยู่แล้วของ Framework)


ท่านใดที่ใช้ Windows Server ก็ลองสร้าง VM สักตัวแล้วลองทำตามขั้นตอนนี้กันดูนะครับ ^^

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

แจกฟรี!! ระบบต่างๆที่พัฒนาด้วย PHP สำหรับนำไปใช้ในงานต่างๆ

       สำหรับหลายท่านที่ขอโค้ดเข้ามาทาง Inbox ของเฟซบุ๊กแฟนเพจ หรือถามถึงระบบต่างๆหลังไมค์มานั้น ส่วนใหญ่ก็มีแจกอยู่แล้วในเว็บบอร์ด ThaiCreate.Com นะครับ และด้านล่างนี้ก็เป็นระบบต่างๆที่แจกให้นำไปลองใช้ลองศึกษากันครับ

สอนเขียน PHP แสดงการจองห้องประชุมแบบไฮไลท์ตามช่วงเวลา (แบบเชื่อมต่อฐานข้อมูล MySQL)

ตัวอย่าง ผลลัพธ์ที่ได้จากการจองในฐานข้อมูล ตาราง tb_room สร้างตารางรายชื่อห้องประชุม สำหรับ id นั้นเป็น Primarykey จะกำหนดให้สร้างอัตโนมัติ ทุกครั้งที่เราเพิ่มชื่อห้องประชุมใหม่ -- -- Database: `tobedev_example` -- -- -------------------------------------------------------- -- -- Table structure for table `tb_room` -- CREATE TABLE IF NOT EXISTS `tb_room` (   `id` int(11) NOT NULL,   `name` varchar(30) NOT NULL ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -- -- Dumping data for table `tb_room` -- INSERT INTO `tb_room` (`id`, `name`) VALUES (1, 'ห้องประชุม 1'), (2, 'ห้องประชุม 2'), (3, 'ห้องประชุม 3'), (4, 'ห้องประชุม 4'), (5, 'ห้องประชุม 5'); -- -- Indexes for dumped tables -- -- -- Indexes for table `tb_room` -- ALTER TABLE `tb_room`   ADD PRIMARY KEY (`id`); -- -- AUTO_INCREMENT for dumped tables -- -- -- AUTO_INCREMENT for table `tb_room` -- ALTER TABLE `tb_room`   MODIFY `i...

การดึงข้อมูล MySQL มาแสดงในปฏิทิน Fullcalendar ด้วย PHP

หลักการทำงาน เรียกข้อมูลจากตาราง tb_event ด้วยฟังก์ชั่นของ MySQLi ข้อมูลจากฐานข้อมูลจะถูกวนลูปเก็บไว้ใน $data และจะถูกส่งไปที่ Fullcalendar ด้วยการแปลงข้อมูลจาก PHP ให้อยู่ในรูปแบบ JSON อาร์เรย์ด้วยฟังก์ชั่น json_encode() PHP Code <?php //Database $data = array(); $link = mysqli_connect("127.0.0.1", "tobedev", "1234", "tobedev_example"); mysqli_set_charset($link, 'utf8'); if (!$link) {     echo "Error: Unable to connect to MySQL." . PHP_EOL;     echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;     echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;     exit; } $query = "SELECT * FROM tb_event"; if ($result = $link->query($query)) {     /* fetch object array */     while ($obj = $result->fetch_object()) {        $data[] = array(                 ...