终端启用PHP需三类路径:联网用dnf一键装php及扩展并启php-fpm;断网挂载ISO建本地源后安装;高安全场景源码编译7.4.30,指定路径、禁用fileinfo、配www用户与socket权限。

您在银河麒麟终端中需要快速启用PHP脚本执行能力,但系统默认未预装PHP解释器或FPM服务,导致php -v报错、.php文件无法运行、Web服务返回502或空白页。以下是针对Kylin V10 SP2/SP3(x86_64/aarch64)终端环境的三类实操路径,覆盖联网、内网镜像、高安全定制场景,每种方法均以终端命令为唯一操作界面,不依赖图形化工具。
联网环境下用dnf一键安装PHP及常用扩展
这是最简路径,适用于能访问麒麟官方源的开发机或测试服务器,5分钟内完成部署。
第一步:刷新软件包缓存,确保获取最新元数据
dnf makecache
第二步:确认可用PHP主版本(Kylin V10官方源稳定提供7.4与8.1)
dnf list available php\* | grep -E "php-7\.4|php-8\.1"
立即学习“PHP免费学习笔记(深入)”;
第三步:安装PHP核心、FPM处理器及6项高频扩展(mysqlnd/gd/mbstring/xml/json/opcache),【缺少php-fpm将导致Nginx/Apache无法解析PHP】
dnf install -y php php-fpm php-mysqlnd php-gd php-mbstring php-xml php-json php-opcache
第四步:启用并启动服务,立即生效
systemctl enable php-fpm && systemctl start php-fpm
第五步:终端验证——两行命令必须同时成功
php -v(输出类似“PHP 7.4.33”)
systemctl is-active php-fpm(返回“active”)
内网服务器挂载本地镜像源后安装PHP
当目标服务器完全断网,但您手头有Kylin V10官方ISO镜像时,必须先构建本地软件源,否则dnf会因无法连接网络仓库而失败。
方法一:挂载镜像并配置repo文件
mkdir -p /mnt/kylin-iso
mount -t iso9660 /path/to/kylin-v10.iso /mnt/kylin-iso
方法二:创建本地源配置
echo "[kylin-local]\nname=Kylin Local Repository\nbaseurl=file:///mnt/kylin-iso\nenabled=1\ngpgcheck=0" > /etc/yum.repos.d/kylin-local.repo
方法三:清空旧缓存并重建索引,这一步跳过会导致后续dnf install找不到包
yum clean all && yum makecache
方法四:安装PHP(此时dnf实际从/mnt/kylin-iso读取RPM)
dnf install -y php php-fpm php-mysqlnd php-gd php-mbstring
高安全场景下源码编译安装PHP 7.4.30
该方式适用于等保三级、金融信创或需禁用危险函数(如exec、system)的生产环境,编译过程可控,无预编译包隐藏模块风险。
1、安装编译链与底层依赖(必须一次性装全,缺任何一项都会在./configure阶段报错)
dnf install -y gcc gcc-c++ make autoconf libtool bison re2c openssl-devel libxml2-devel curl-devel libpng-devel freetype-devel sqlite-devel oniguruma-devel
2、下载并解压PHP 7.4.30源码(此版本已通过麒麟V10 SP3内核兼容性验证)
wget https://windows.php.net/downloads/releases/php-7.4.30.tar.gz
tar -zxvf php-7.4.30.tar.gz && cd php-7.4.30
3、执行配置命令,关键参数说明:
--prefix=/usr/local/php74 指定纯净安装路径,避免污染系统默认/usr/bin
--enable-fpm 启用FastCGI进程管理器,Web服务必需
--disable-fileinfo 禁用fileinfo扩展(高安全场景常关闭,防止文件类型探测)
--with-config-file-path=/usr/local/php74/etc 指定php.ini存放位置,便于权限隔离
4、编译并安装(耗时约8–12分钟,取决于CPU核心数)
make -j$(nproc) && make install
5、复制默认配置文件并创建www用户(PHP-FPM必须以非root用户运行)
cp php.ini-production /usr/local/php74/etc/php.ini
useradd -r -s /sbin/nologin www
6、修改FPM池配置,确保监听Unix socket且权限严格
sed -i 's/user = apache/user = www/g; s/group = apache/group = www/g; s/;listen.owner = nobody/listen.owner = www/g; s/;listen.group = nobody/listen.group = www/g; s/;listen.mode = 0660/listen.mode = 0660/g' /usr/local/php74/etc/php-fpm.d/www.conf
7、启动服务并验证socket文件权限
/usr/local/php74/sbin/php-fpm
ls -l /usr/local/php74/var/run/php-fpm.sock(应显示srw-rw---- 1 www www)



















