Ubuntu 22.04.2 LTS编译安装PHP-7.2.34与Apache2

Ubuntu 22.04.2 LTS安装PHP-7.2.34与Apache2

  • 环境介绍
  • 所需文件
  • 安装步骤
    • 解压
    • 安装所需编译环境
    • 编译安装httpd
    • 编译安装php7.2.34
    • 修改配置文件
      • 复制php.ini-production到/usr/local/php7/etc/php.ini
      • 修改httpd.conf
      • 查看apache2网站根目录
    • 将apache2加入到systemctl

环境介绍

Ubuntu版本:22.04.2 LTS
Httpd版本:2.4.57
PHP版本:7.2.34

所需文件

Ubuntu 22.04.2 LTS编译安装PHP-7.2.34与Apache2_第1张图片

安装步骤

解压

tar -xzf php-7.2.34.tar.gz
tar -zxf httpd-2.4.57.tar.gz

安装所需编译环境

apt -y install gcc make g++ libtool-bin libexpat1-dev build-essential 
apt install libpcre3 libpcre3-dev -y
apt install libapr1 libapr1-dev -y
apt install libaprutil1 libaprutil1-dev -y
apt install libxml2-dev -y
apt install libzip-dev -y
apt install libcurl4-openssl-dev -y
apt install pkg-config -y
apt install pkgconf -y
apt install libjpeg-dev libpng-dev -y

编译安装httpd

./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=all && make && make install

编译安装php7.2.34

./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php7/etc --with-mysqli --with-pdo-mysql --with-zlib --with-curl --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --enable-zip --enable-bcmath --enable-opcache && make && make install

修改配置文件

复制php.ini-production到/usr/local/php7/etc/php.ini

cp php.ini-production /usr/local/php7/etc/php.ini

修改httpd.conf

vim /usr/local/apache2/conf/httpd.conf
#末尾添加
#如果httpd.conf已存在LoadModule php7_module modules/libphp7.so就不添加
#LoadModule php7_module modules/libphp7.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PHPIniDir "/usr/local/php7/etc"

查看apache2网站根目录

查看根目录可以去httpd.conf查找DocumentRoot,后面的路径就是网站根目录

将apache2加入到systemctl

在 /etc/systemd/system 目录下,创建一个名为 httpd.service 的文件

vim /etc/systemd/system/httpd.service

内容如下:

[Unit]
Description=The Apache HTTP Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/apache2/bin/apachectl start
ExecReload=/usr/local/apache2/bin/apachectl graceful
ExecStop=/usr/local/apache2/bin/apachectl stop
PIDFile=/usr/local/apache2/logs/httpd.pid
PrivateTmp=true

[Install]
WantedBy=multi-user.target

刷新 systemd 的配置

systemctl daemon-reload

启动服务

systemctl start httpd

你可能感兴趣的:(服务器部署,php,ubuntu,apache)