CentOS配置apache和php-fpm

CentOS配置apache和php-fpm

上一篇写的Ubuntu22.04如何配置apache和php-fpm,详见Ubuntu22.04如何配置apache和php-fpm
本篇记录下CentOS如何配置apache和php-fpm。

php-fpm的安装

安装apache、php、php-fpm时需要注意顺序,一般先安装apache。

apt install httpd

安装完apache之后,如果先安装php,之后会默认将php作为apache的模块使用,因此可以先安装php-fpm,再安装php。

apt install php-fpm
apt install php

apache配置文件

先进入/etc/httpd/目录下,这是apache的配置文件目录。
在这里插入图片描述
先进入conf.d目录,查看php.conf文件里是否默认有这么一段,意思是如果apache不使用mod_php5模块也不使用mod_php7模块,那么代理生效,代理到php-fpm。
在这里插入图片描述
php.conf的文件内容如下:

#
# The following lines prevent .user.ini files from being viewed by Web clients.
#
<Files ".user.ini">
    Require all denied
</Files>

#
# Allow php to handle Multiviews
#
AddType text/html .php

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php

#
# Redirect to local php-fpm (no mod_php in default configuration)
#
<IfModule !mod_php5.c>
  <IfModule !mod_php7.c>
    # Enable http authorization headers
    SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1

    <FilesMatch \.(php|phar)$>
        SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
    </FilesMatch>
  </IfModule>
</IfModule>

#
# mod_php is deprecated as FPM is now used by default with httpd in event mode
# mod_php is only used when explicitly enabled or httpd switch to prefork mode
#
# mod_php options
#
<IfModule  mod_php7.c>
    #
    # Cause the PHP interpreter to handle files with a .php extension.
    #
    <FilesMatch \.(php|phar)$>
        SetHandler application/x-httpd-php
    </FilesMatch>

    #
    # Uncomment the following lines to allow PHP to pretty-print .phps
    # files as PHP source code:
    #
    #<FilesMatch \.phps$>
    #    SetHandler application/x-httpd-php-source
    #</FilesMatch>

    #
    # Apache specific PHP configuration options
    # those can be override in each configured vhost
    #
    php_value session.save_handler "files"
    php_value session.save_path    "/var/lib/php/session"
    php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"

    #php_value opcache.file_cache   "/var/lib/php/opcache"
</IfModule>

再进入conf.modules.d目录,修改*-php.conf,把php模块禁掉。
在这里插入图片描述
在LoadModule php7_module modules/libphp7.so前加上#。
在这里插入图片描述
重启apache和php-fpm生效。

systemctl restart httpd
systemctl restart php-fpm

php配置文件

php配置文件的在/etc/php.ini。无论php是作为apache的模块运行还是使用php-fpm,对应的配置文件都是/etc/php.ini。

php-fpm配置文件

php-fpm的相关配置文件有俩,一个是/etc/php-fpm.conf,另一个是/etc/php-fpm.d/www.conf。
php-fpm.conf用默认的就行。
www.conf要注意下面这行,如果是listen = 127.0.0.1:9000,改成:listen = /run/php-fpm/www.sock
在这里插入图片描述
www.conf最底下有些与php.ini一样名字的配置参数,如果没注释掉,以www.conf里的配置为主,比如php.ini里默认的session目录是/tmp,www.conf里的session目录是
/var/lib/php/session,如果用到了php的session功能,记得改/var/lib/php/session的目录权限,否则php的session功能用不了。
在这里插入图片描述
重启php-fpm生效。

systemctl restart php-fpm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值