使用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>

如果这样做的话,可以覆盖设置,因此可以单独设置错误日志。

    運用してみて調整が必要
bannerAds