ฉันใช้ Ubuntu 18.04 ฉันมีการตั้งค่าหลอดไฟ เมื่อถึงจุดหนึ่ง ฉันตระหนักว่า PHP ของฉันใช้งานไม่ได้อีกต่อไป ฉันไม่ได้ใช้มันมาระยะหนึ่งแล้ว น่าเสียดายที่ฉันบอกไม่ได้ว่ามันหยุดทำงานเมื่อไหร่ อาจเป็นได้เมื่อฉันอัปเกรดเป็น Ubuntu 18.04 จาก 16.04
ฉันได้ค้นหาคำตอบในอินเทอร์เน็ตสำหรับปัญหา แต่ก็ไม่สามารถทำงานได้ นี่คือข้อมูลเกี่ยวกับปัญหาและสิ่งที่ฉันได้ลอง:
ฉันติดตั้ง Apache2 ใหม่ Apache เองใช้งานได้ แต่ PHP ผ่าน Apache ไม่ทำงาน: ไฟล์ .php แสดงโค้ดแทนที่จะเรียกใช้งาน หรือบางครั้งหน้า .php ก็ว่างเปล่า ยกเว้น html ในหน้านั้น หน้าที่มี phpinfo(); ฟังก์ชั่นที่มันว่างเปล่า
ฉันกำลังทดสอบโดยใช้หน้า .php ด้วยรหัสนี้:
<h1>My PHP Info Page</h1>
<?php
phpinfo();
?>
ฉันกำลังเข้าถึงหน้านี้ผ่านเบราว์เซอร์ Chrome: http://localhost/~username/Testing/info.php
เฉพาะวลี "หน้าข้อมูล PHP ของฉัน" เท่านั้นที่แสดงขึ้น หน้าที่เหลือว่างเปล่า
ฉันใช้ php7.2
เมื่อฉันพิมพ์ "php -v" ในเทอร์มินัล ฉันจะได้รับ:
PHP 7.2.24-0ubuntu0.18.04.10 (cli) (สร้าง: 25 ต.ค. 2564 17:47:59 น.) ( NTS )
ลิขสิทธิ์ (c) 1997-2018 กลุ่ม PHP
Zend Engine v3.2.0, ลิขสิทธิ์ (c) 1998-2018 Zend Technologies
ด้วย Zend OPcache v7.2.24-0ubuntu0.18.04.10 ลิขสิทธิ์ (c) 1999-2018 โดย Zend Technologies
ฉันได้รันคำสั่งเหล่านี้ในเทอร์มินัลที่จุดต่างๆ:
sudo a2dismod mpm_event && sudo a2enmod mpm_prefork && sudo a2enmod php7.2
sudo a2enmod php7.2
sudo a2dismod php7.0
sudo a2dismod php5
ฉันได้เพิ่มรหัสต่อไปนี้ในไฟล์ apache2.conf:
<FilesMatch ".php$">
โปรแกรม SetHandler/x-httpd-php.ini
â
ฉันเปลี่ยนเป็น:
<LocationMatch ".php$">
โปรแกรม SetHandler/x-httpd-php.ini
â
(จากนั้นฉันก็เปลี่ยนกลับ นอกจากนี้ ตามคำแนะนำหนึ่งที่ฉันพิมพ์รหัสนี้ด้วยตนเองแทนที่จะคัดลอกและวาง)
ทุกครั้งหลังจากทำการเปลี่ยนแปลงไฟล์ apache2.config ฉันได้เริ่มบริการ Apache ใหม่ด้วยคำสั่งนี้:
sudo systemctl รีสตาร์ท apache2
ฉันหมดปัญญาแล้ว ทำไม PHP ของฉันไม่ทำงาน