温馨提示×

CentOS LAMP如何安装额外软件

小樊
37
2025-11-22 02:17:24
栏目: 智能运维

在 CentOS 的 LAMP 环境中安装额外软件

一 准备与通用步骤

  • 确认系统版本与软件源可用:优先使用系统自带的 yum/dnf 仓库,必要时启用 EPEL 等官方附加源。
  • 更新索引并安装常用工具:
    • 更新:sudo yum update -y
    • 工具:sudo yum install -y epel-release yum-utils wget unzip git
  • 安装后使服务生效:涉及 Apache/MySQL/PHP 的变更,重启对应服务;涉及防火墙放行 HTTP/HTTPS
  • 防火墙放行(如启用 firewalld):
    • sudo firewall-cmd --permanent --zone=public --add-service=http
    • sudo firewall-cmd --permanent --zone=public --add-service=https
    • sudo firewall-cmd --reload
  • 验证思路:安装后用 systemctl status <服务名> 检查运行状态,或用 php -mmysql -V 等命令验证组件版本与扩展。

二 常用软件安装清单

软件 用途 安装命令示例 关键要点
phpMyAdmin MySQL 管理 sudo yum install -y phpmyadmin 访问路径通常为 /phpmyadmin;如为 Apache+PHP-FPM,需配置 FPM 池与 Apache 代理或别名;建议启用 HTTPS 与强口令策略。
php 扩展(如 gd、mbstring、xml、curl、zip、intl、pdo_mysql 功能增强 sudo yum install -y php-gd php-mbstring php-xml php-curl php-zip php-intl php-pdo_mysql 安装后执行 sudo systemctl restart httpd 使扩展生效;用 `php -m
php-fpm 与 Apache 配合的进程管理器 sudo yum install -y php-fpm 启动:sudo systemctl enable --now php-fpm;在 httpd.conf/etc/httpd/conf.d/*.conf 中配置 ProxyPassMatchFPM;确保 SELinux/防火墙 放行。
MariaDB(替代 MySQL) 数据库 sudo yum install -y mariadb-server mariadb 启动:sudo systemctl enable --now mariadb;运行 sudo mysql_secure_installation 完成安全初始化。
php 加速器(如 OPcache、XCache 性能优化 OPcache:sudo yum install -y php-opcache;XCache:sudo yum install -y php-xcache 多数加速器为模块,安装后自动生效;用 `php -m
开发工具(如 Composer、phpunit 依赖管理与测试 Composer:`sudo curl -sS https://getcomposer.org/installer php && sudo mv composer.phar /usr/local/bin/composer`
SSL/TLS(Let’s Encrypt/certbot) HTTPS sudo yum install -y certbot python3-certbot-apache 申请证书:sudo certbot --apache -d your.domain;自动续期建议加入 crontab
版本控制/部署(如 Git 代码管理 sudo yum install -y git 克隆代码后注意目录属主与权限(如 apache:apache)。

三 安装后验证与常见问题

  • 验证示例
    • PHP 扩展:php -m | grep -i gdphp -m | grep -i mbstring
    • phpMyAdmin:浏览器访问 http://服务器IP/phpmyadmin,使用数据库账户登录
    • OPcache:php -m | grep -i opcache
  • 常见问题与处理
    • 安装扩展后页面空白或报错:检查 /var/log/httpd/error_log,确认已 sudo systemctl restart httpd
    • SELinux 拦截:临时排查可用 sudo setenforce 0,长期方案使用 semanage/setsebool 配置策略
    • 防火墙未放行:执行上文 firewall-cmd 放行规则并 reload
    • 目录权限:网站目录建议属主 apache:apache,权限 0755/0644 分级设置
    • 版本匹配:扩展需与当前 PHP 主版本一致(如 PHP 7.x 与 PHP 8.x 扩展不通用)

四 进阶 源码编译安装扩展

  • 适用场景:仓库缺少所需版本/特性(如旧版 mcrypt、特殊编译参数)。
  • 基本流程
    • 安装编译工具:sudo yum groupinstall -y "Development Tools" 与必要依赖
    • 下载并解压源码,进入目录后执行:
      • ./configure --prefix=/usr/local/<组件名> [--enable/--with-选项]
      • make && sudo make install
    • 配置动态库路径:echo "/usr/local/lib" | sudo tee /etc/ld.so.conf.d/local.conf && sudo ldconfig
    • 在 PHP 中启用扩展(以 mcrypt 为例):echo "extension=mcrypt.so" | sudo tee /etc/php.d/mcrypt.ini
    • 重启 Apache/PHP-FPM 并验证:php -m | grep mcrypt
  • 注意:源码编译需处理依赖链与兼容性问题,生产环境优先使用仓库包,确需编译时请做好回滚与版本记录。

0