版本v1.0日期2026年5月20日适用环境CentOS 7.x x86_64软件版本Apache 2.4.28 MySQL 5.7.32 PHP 7.4.16 PhpMyAdmin 5.1.0默认已配置yum源设置阿里云的基本源和扩展epel源curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repocurl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo目录一、环境准备与初始化1.1 系统安全与服务检查1.2 系统信息与资源确认1.3 目录规划与软件包准备1.4 安装基础开发工具二、编译安装OpenSSL 1.0.2m三、编译安装Apache 2.4.283.1 编译安装3.2 配置系统服务四、二进制安装MySQL 5.7.324.1 安装前准备4.2 初始化数据库4.3 配置系统服务4.4 修改MySQL的 root密码五、编译安装PHP 7.4.165.1 安装依赖包5.2 配置pkg-config环境5.3 编译安装PHP六、Apache与PHP集成配置6.1 复制PHP配置文件6.2 修改Apache配置文件6.3 重启Apache服务七、功能测试7.1 测试PHP解析7.2 测试PHP连接MySQL八、安装PhpMyAdmin 5.1.08.1 解压并部署8.2 编译安装PHP OpenSSL扩展8.3 配置PHP加载OpenSSL扩展8.4 配置PhpMyAdmin8.5 访问PhpMyAdmin九、常见问题排查一、环境准备与初始化1.1 系统安全与服务检查关闭SELinux临时生效永久生效需修改/etc/selinux/configsetenforce 0验证SELinux状态sestatus关闭防火墙并禁用开机自启systemctl stop firewalld systemctl disable firewalld验证防火墙规则iptables -vnL检查关键端口占用80/443/3306若有占用停止对应服务并禁用自启ss -tulanp | grep -E 80|443|3306 systemctl stop 服务名 systemctl disable 服务名1.2 系统信息与资源确认查看IPv4地址ip -4 a查看内存资源free -g查看磁盘分区df -Th1.3 目录规划与软件包准备创建部署目录mkdir -pv /opt/lamp将所有软件包上传至/opt/lamp/目录(可用xftp)所需软件包列表openssl-1.0.2m.tar.gzhttpd-2.4.28.tar.gzmysql-5.7.32-el7-x86_64.tar.gzoniguruma-6.8.2-1.el7.x86_64.rpmoniguruma-devel-6.8.2-1.el7.x86_64.rpmphp-7.4.16.tar.bz2phpMyAdmin-5.1.0-all-languages.zipmy.cnfMySQL配置文件1.4 安装基础开发工具安装编译依赖yum -y install gcc gcc-c make openssl-devel yum -y install apr apr-util apr-util-devel pcre pcre-devel二、编译安装OpenSSL 1.0.2m解压源码包、配置编译参数、编译并安装tar xvfz /opt/lamp/openssl-1.0.2m.tar.gz -C /usr/src/cd /usr/src/openssl-1.0.2m/ ./config --prefix/usr/local/ssl --shared;echo $? make -j nproc make install;echo $?说明--shared参数生成动态链接库供后续Apache和PHP调用验证安装ll /usr/local/ssl/ ll /usr/local/ssl/bin/ ll /usr/local/ssl/lib/三、编译安装Apache 2.4.283.1 编译安装解压源码包、配置编译参数、编译并安装tar xvfz /opt/lamp/httpd-2.4.28.tar.gz -C /usr/src/cd /usr/src/httpd-2.4.28/ ./configure --prefix/usr/local/apache2 \ --enable-so \ --enable-rewrite \ --enable-ssl \ --with-ssl/usr/local/ssl \ --with-mpmprefork;echo $? make -j nproc make install;echo $?关键参数说明--prefix指定安装路径--enable-so启用DSO动态共享模块加载--enable-rewrite启用URL重写功能--enable-ssl启用HTTPS支持--with-mpmprefork指定prefork运行模式3.2 配置系统服务复制启动脚本cp -av /usr/local/apache2/bin/apachectl /etc/init.d/httpd编辑启动脚本添加chkconfig配置vim /etc/init.d/httpd在文件开头添加以下两行#chkconfig: 35 85 21 #description: apache!添加为系统服务并设置开机自启chkconfig --add httpd chkconfig --list httpd启动Apache服务systemctl start httpd验证服务状态ps aux | grep httpd ss -tulanp | grep 80Apache核心路径安装目录/usr/local/apache2/主配置文件/usr/local/apache2/conf/httpd.conf网站根目录/usr/local/apache2/htdocs/启动命令/usr/local/apache2/bin/apachectl四、二进制安装MySQL 5.7.324.1 安装前准备解压二进制包tar zxvf /opt/lamp/mysql-5.7.32-el7-x86_64.tar.gz -C /usr/src移动并重命名mv -v /usr/src/mysql-5.7.32-el7-x86_64/ /usr/local/mysql创建数据存储目录mkdir -pv /data/mysql创建mysql系统用户useradd -r -s /sbin/nologin -d /usr/local/mysql/ mysql设置目录权限chown -R mysql:mysql /usr/local/mysql/ /data/mysql/4.2 初始化数据库cd /usr/local/mysql/ ./bin/mysqld --initialize \ --usermysql \ --basedir/usr/local/mysql \ --datadir/data/mysql;echo $?重要初始化完成后终端会输出临时root密码红框请务必记录下来4.3 配置系统服务复制配置文件\cp -av /opt/lamp/my.cnf /etc/复制启动脚本cd /usr/local/mysql/support-files/ cp -av mysql.server /etc/init.d/mysql编辑启动脚本指定路径vim /etc/init.d/mysql修改以下两行basedir/usr/local/mysql datadir/data/mysql设置脚本权限并添加为系统服务chmod 755 /etc/init.d/mysql chkconfig --add mysql chkconfig --level 345 mysql on启动MySQL服务systemctl start mysql验证服务状态ss -tulanp | grep 33064.4 修改MySQL的root密码使用临时密码登录/usr/local/mysql/bin/mysql -u root -p临时密码在MySQL命令行中执行将密码改为1可以自己设置复杂密码mysql set passwordpassword(1); mysql flush privileges; mysql exit;可以用自己设置的密码试验一下是否可以登录五、编译安装PHP 7.4.165.1 安装依赖包安装系统自带依赖yum install -y systemd-devel libxml2-devel sqlite-devel libcurl-devel libpng-devel安装oniguruma正则库rpm -ivh /opt/lamp/oniguruma-6.8.2-1.el7.x86_64.rpm rpm -ivh /opt/lamp/oniguruma-devel-6.8.2-1.el7.x86_64.rpm5.2 配置pkg-config环境创建pkgconfig目录mkdir -pv /usr/local/lib/pkgconfig/创建OpenSSL库链接ln -sv /usr/local/ssl/lib/pkgconfig/*.pc /usr/local/lib/pkgconfig/配置环境变量vim ~/.bash_profile添加以下两行PKG_CONFIG_PATH$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH使环境变量生效source ~/.bash_profile验证pkg-config --list-all | grep openssl5.3 编译安装PHP解压源码包tar xvfj /opt/lamp/php-7.4.16.tar.bz2 -C /usr/src/若出现以上报错可以安装一下bzip2yum -y install bzip2配置编译参数、编译并安装cd /usr/src/php-7.4.16/ ./configure --prefix/usr/local/php \ --with-config-file-path/usr/local/php/etc \ --enable-mysqlnd \ --with-pdo-mysql \ --with-mysqli \ --with-openssl-dir/usr/local/ssl \ --with-openssl \ --enable-gd \ --with-zlib-dir \ --with-curl \ --with-pear \ --enable-inline-optimization \ --enable-soap \ --enable-sockets \ --enable-mbstring \ --enable-fpm \ --with-fpm-usermysql \ --with-fpm-groupmysql \ --with-fpm-systemd \ --with-apxs2/usr/local/apache2/bin/apxs;echo $? make -j nproc make install;echo $?六、Apache与PHP集成配置6.1 复制PHP配置文件cd /usr/src/php-7.4.16/ cp -av php.ini-production /usr/local/php/etc/php.ini6.2 修改Apache配置文件vim /usr/local/apache2/conf/httpd.conf添加以下内容让Apache支持PHP文件解析AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps添加PHP首页IfModule dir_module DirectoryIndex index.html index.php /IfModule6.3 重启Apache服务systemctl restart httpd七、功能测试7.1 测试PHP解析创建测试页面cat /usr/local/apache2/htdocs/index.php EOF ?php echo Hello World; ? EOF cat /usr/local/apache2/htdocs/info.php EOF ?php phpinfo(); ? EOF浏览器访问7.2 测试PHP连接MySQL创建数据库连接测试页面vim /usr/local/apache2/htdocs/linkdb.php?php $link mysqli_connect( localhost, root, 1, #这里写步骤4.4中自己设置的mysql的root密码 mysql); if($link){ printf(Congratulations!); } ?浏览器访问http://服务器IP/linkdb.php显示连接成功信息八、安装PhpMyAdmin 5.1.08.1 解压并部署安装unzip工具yum -y install unzip解压并移动到网站根目录cd /opt/lamp/ unzip phpMyAdmin-5.1.0-all-languages.zip cd /usr/local/apache2/htdocs/ mv -v /opt/lamp phpMyAdmin-5.1.0-all-languages phpMyAdmin8.2 编译安装PHP OpenSSL扩展切换到PHP扩展目录cd /usr/src/php-7.4.16/ext/openssl/重命名配置文件mv -v config0.m4 config.m4生成configure文件/usr/local/php/bin/phpize;echo $?配置并编译安装./configure --with-openssl \ --with-php-config/usr/local/php/bin/php-config;echo $? make -j nproc make install;echo $?8.3 配置PHP加载OpenSSL扩展编辑php.ini文件(步骤6.1复制过)vim /usr/local/php/etc/php.ini在文件末尾添加extensionopenssl.so复制扩展文件到指定目录cp -av /usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/openssl.so /usr/local/php/etc/重启Apachesystemctl restart httpd8.4 配置PhpMyAdmin进入PhpMyAdmin目录cd /usr/local/apache2/htdocs/phpMyAdmin/复制配置文件cp -av config.sample.inc.php config.inc.php编辑配置文件vim config.inc.php修改以下内容可选生产环境建议使用cookie认证$cfg[Servers][$i][auth_type] cookie; // 推荐使用cookie认证 // $cfg[Servers][$i][user] root; // 自动登录用户名不推荐 // $cfg[Servers][$i][password] root; // 自动登录密码不推荐8.5 访问PhpMyAdmin浏览器访问http://服务器IP/phpMyAdmin/使用MySQL的root账号密码1登录九、常见问题排查Apache启动失败检查80端口是否被占用配置文件语法是否正确/usr/local/apache2/bin/apachectl -tPHP页面无法解析检查Apache配置文件中是否添加了PHP类型映射确认libphp7.so模块已加载MySQL连接失败检查3306端口是否开放MySQL服务是否启动用户名密码是否正确PhpMyAdmin显示空白检查PHP OpenSSL扩展是否正确安装并加载查看Apache错误日志