Apache httpd结合php,yum方式和源码方式
Apache httpd结合php,yum方式和源码方式
Apache httpd和php的结合方式有两种:
- DSO方式,php作为httpd的模块
- FCGI方式,使用php-fpm单独管理php进程池
yum方式安装httpd和php
centos8
dnf install httpd
dnf install php
默认是php7.2版本
centos7
yum install httpd
yum install php
默认是php5.4版本
这会自动为httpd安装php插件,并启用,使用OSO方式运行php,也就是php作为httpd的模块
默认为每个网站都配置了php的支持,直接就能可以使用
测试一下
创建测试文件
echo -e "<?php\nphpinfo();\n?>"> /var/www/html/index.php
echo -e "<?php\nphpinfo();\n?>"> /usr/share/nginx/html/index.php
这样就可以通过 http://<你的服务器ip> 访问下
源码方式安装php7.3
环境 centos8
1.首先安装 httpd 和 httpd-devel
这里安装httpd-devel是为了使用apxs动态加载插件
dnf install httpd httpd-devel
2.安装必要的依赖
dnf install libxml2-devel openssl-devel libcurl libcurl-devel libjpeg-turbo-devel libpng-devel freetype-devel libzip-devel gcc make
3.下载php源码包
wget https://www.php.net/distributions/php-7.3.13.tar.xz
4.解压、编译、安装
cd php-7.3.13
tar xvf php-7.3.13.tar.xz
./configure --prefix=/opt/php7.3 --with-apxs2=/usr/bin/apxs --with-config-file-path=/opt/php7.3/usr --enable-mbstring --with-openssl --enable-ftp --with-gd --with-jpeg-dir=/opt/php7.3/usr --with-png-dir=/opt/php7.3/usr --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/opt/php7.3/usr --with-zlib --with-libxml-dir=/opt/php7.3/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/opt/php7.3/usr/lib --enable-soap --enable-pcntl --enable-cli --with-curl --enable-bcmath --with-gettext
make && make install
这里使用
--prefix=/opt/php7.3
安装在 /opt/php7.3 ,可以自定义安装位置
这里使用
--with-apxs2=/usr/bin/apxs
指出了apxs的位置,如果是源码安装的httpd,则在安装目录下的./sbin/apxs
5.复制配置文件
cp php.ini-development /opt/php7.3/php.ini
6.配置httpd使用php
cd httpd.conf
LoadModule php7_module modules/libphp7.so # 有可能已经自动添加了