Linux下部署Apache+PHP
编辑于2021-02-19
本文中Apache配置文件目录为/etc/httpd/conf/httpd.conf,PHP安装目录为/usr/local/php
-
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld -
安装Apache和依赖
yum install httpd
yum install httpd-devel -
查看apxs所在路径,用于编译PHP时生成/etc/httpd/modules/libphp7.so,若没有这个依赖,Apache无法解析PHP代码
rpm -ql httpd-devel|grep apxs
/usr/bin/apxs # 查询结果
二、 安装PHP
-
安装如下依赖
yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
-
下载php-7.2.0.tar.gz至/usr/local目录,解压
tar zxf php-7.2.0.tar.gz
-
进入解压好的文件夹
cd php-7.2.0
-
执行配置命令,不要遗漏apxs路径的配置
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --with-openssl --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --with-apxs2=/usr/bin/apxs --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl
-
执行编译命令,开始安装PHP,安装目录为/usr/local/php,用时稍长
make && make install
-
安装完成后拷贝一份php.ini至php安装目录
cp php.ini-production /usr/local/php/php.ini
-
编辑/etc/profile,将PHP添加至环境变量。
export PATH=$PATH:/usr/local/php/bin
-
source后执行如下命令测试是否安装成功。
php -v
三、 配置Apache对PHP的解析
-
编辑/etc/httpd/conf/httpd.conf,寻找以下代码,若没有则加入到LoadModule处
LoadModule php7_module modules/libphp7.so
-
在文件末尾加入如下代码以支持Apache对PHP的解析
<IfModule mod_php7.c>
AddType application/x-httpd-php .php
</IfModule> -
找到如下代码,在index.html末尾加上index.php
<IfModule dir_module>
DirectoryIndex index.html
</IfModule> -
重启Apache服务
systemctl restart httpd
-