使用Apache的Event MPM和php-fpm运行
环境
CentOS Linux发行版7.6.1810(核心版本)。
参考网站
操作步骤
只要一边查看网站一边进行工作就可以了。
Apache的eventMPM
cd /etc/httpd/conf.modules.d/
cp -p 00-mpm.conf 00-mpm.conf.20190304.bak
vi 00-mpm.conf
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
をコメントアウトして
LoadModule mpm_event_module modules/mod_mpm_event.so
のコメントを外す
systemctl restart httpd
httpd -M | grep mpm
mpm_event_module (shared)
PHP-FPM是一种常用的PHP解释器。
yum -y install --enablerepo=remi,remi-php73 php-fpm
cp -p /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.20190304.bak
vi /etc/php-fpm.d/www.conf
適宜変更(運用してみて調整するっぽい)
systemctl start php-fpm
systemctl enable php-fpm
用CGI将PHP运行
vi /etc/httpd/conf/httpd.conf
最後に追記
# event MPM setting
<IfModule mpm_event_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 50
ThreadsPerChild 50
MaxRequestWorkers 50
MaxConnectionsPerChild 0
<FilesMatch \.php$>
SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
</IfModule>
モジュール版PHPの設定を読み込まないようにする
mv /etc/httpd/conf.modules.d/15-php.conf /etc/httpd/conf.modules.d/15-php.conf.20190304.bak
systemctl restart httpd
令人在意的地方
- 各サイトのエラーログが別々のファイルにできない?
在虚拟主机的设置中
<VirtualHost *:80>
ServerName example.com
DocumentRoot /home/example/public_html
ErrorLog /home/example/logs/error_log
CustomLog /home/example/logs/access_log common
<Directory /home/example/public_html>
AllowOverride All
Options All -Indexes
Order allow,deny
Allow from all
SetEnv PHP_VALUE "error_log = /home/example/logs/error_log"
</Directory>
</VirtualHost>
如果这样做的话,可以覆盖设置,因此可以单独设置错误日志。
- 運用してみて調整が必要