mpm要修改成event模式時,在預設狀況下修改apache的config 重啟apache會有錯誤
#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so #LoadModule mpm_worker_module modules/mod_mpm_worker.so LoadModule mpm_event_module modules/mod_mpm_event.so
Syntax error on line 31 of /etc/httpd/conf.d/php.conf: event
參考資料Apache的三种MPM模式比较:prefork,worker,event
ps.怎麼知道目前apache是什麼模式呢?可以輸入
httpd -V
Server MPM:event
為了解決這個問題,把php_value session部份設定為prefork時才使用或整個mark掉
<IfModule mpm_prefork_module> php_value session.save_handler "files" php_value session.save_path "/var/lib/php/session" </IfModule>
再來需要安裝及使用fastCGI或php-fpm來處理php,如果安裝那php部份可能會直接顯示code出來,而不會進行轉譯
yum -y install php-fpm nano /etc/httpd/conf.d/php.conf
修改
# line 5: change like follows <FilesMatch \.php$> # SetHandler application/x-httpd-php SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch>
然後把php-fpm啟動及設成開機啟動
systemctl start php-fpm systemctl enable php-fpm systemctl restart httpd
參考資料CentOS 7 : Apache httpd : PHP + PHP-FPM : Server World
restart apache後就可以了