ในการกำหนดค่า php7 เพื่อให้ทำงานกับเซิร์ฟเวอร์ของคุณคุณต้องทำการกำหนดค่าบางอย่าง:
1. ตรวจสอบให้แน่ใจว่าคุณลบร่องรอยใด ๆ ของ php/php5
เปิด terminal Ctrl+ Alt+ Tและ:
cd /etc/apache2/mods-enabled
ls -la
ผลลัพธ์ไม่ควรมีphp5.conf
หรือphp5.load
แต่ถ้าเป็นเช่นนั้นให้ทำดังต่อไปนี้:
# this is the proper way of disabling modules
sudo a2dismod php5
# run this only if the above command didn't remove the php5 sym-links
sudo rm php5.load
sudo rm php5.conf
ตอนนี้เพิ่มphp7.0.conf
และphp7.0.load
แทน:
# this is the proper way of enabling modules
sudo a2enmod php7.0
# run this only if the above command didn't create the php7.0 sym-links
sudo ln -s php7.0.conf ../mods-available/php7.0.conf
sudo ln -s php7.0.load ../mods-available/php7.0.load
ผลลัพธ์ของls -la php*
ควรมีลักษณะเช่นนี้:
lrwxrwxrwx 1 root root 29 Apr 15 03:55 php7.0.conf -> ../mods-available/php7.0.conf
lrwxrwxrwx 1 root root 29 Apr 15 03:55 php7.0.load -> ../mods-available/php7.0.load
หลังจากจัดการกับโมดูลตอนนี้เรามาถึง/etc/apache2/conf-enabled
ไดเรกทอรี ลบร่องรอยของ php / php5 ที่นี่ด้วยsudo rm <name>
จากนั้นถ้าจำเป็นให้ทำ:
# the proper way of enabling configs
sudo a2enconf php7.0-cgi
sudo a2enconf php7.0-fpm
# do those commands only if the above didn't work out
sudo ln -s php7.0-cgi.conf ../conf-available/php7.0-cgi.conf
sudo ln -s php7.0-fpm.conf ../conf-available/php7.0-fpm.conf
ผลลัพธ์ของls -la php*
ควรมีลักษณะเช่นนี้:
lrwxrwxrwx 1 root root 33 Apr 21 17:00 php7.0-cgi.conf -> ../conf-available/php7.0-cgi.conf
lrwxrwxrwx 1 root root 33 Apr 21 17:01 php7.0-fpm.conf -> ../conf-available/php7.0-fpm.conf
2. รีสตาร์ท Apache2
ก่อนที่จะเริ่ม Apache ให้แน่ใจว่าได้ทำความสะอาด Apache error.log
แล้วรีสตาร์ท:
sudo su
> /var/log/apache2/error.log
exit
sudo service apache2 restart
ตอนนี้ตรวจสอบerror.log
โดยการออกcat /var/log/apache2/error.log | less
(ท่อผ่านน้อยช่วยให้คุณสามารถเลื่อนขึ้นและลงง่ายq
ออกจากการส่งออก)
หากคุณerror.log
มีจำนวนมาก (และฉันแท้จริงหมายถึงกองของ) บางMIBS not found
ทำต่อไปนี้:
sudo apt install libsnmp-dev
sudo net-snmp-config --snmpconfpath
sudo apt-get install snmp snmp-mibs-downloader
sudo su
> /var/log/apache2/error.log
exit
sudo service apache2 restart
ตรวจสอบอีกครั้งerror.log
ตอนนี้ควรมีเพียง 3 บรรทัด:
[Sat Apr 23 01:39:07.504005 2016] [mpm_prefork:notice] [pid 1647] AH00169: caught SIGTERM, shutting down
[Sat Apr 23 01:39:08.685774 2016] [mpm_prefork:notice] [pid 9590] AH00163: Apache/2.4.18 (Ubuntu) mod_perl/2.0.9 Perl/v5.22.1 configured -- resuming normal operations
[Sat Apr 23 01:39:08.685938 2016] [core:notice] [pid 9590] AH00094: Command line: '/usr/sbin/apache2'
Apache ของคุณด้วย php7.0 ควรได้รับการกำหนดค่าอย่างเหมาะสม
php
คำสั่ง) เป็นมุมฉากของ PHP SAPIs อื่น (apache2, FPM, CGI, ... ) ดังนั้นบรรทัดคำสั่งที่ใช้งานได้ PHP ไม่ได้พูดอะไรเกี่ยวกับการทำงานของ PHP ในเซิร์ฟเวอร์ HTTP