在 CentOS 7 上安装 PHP 7.3

devtools/2025/3/17 22:51:17/

在 CentOS 7 上安装 PHP 7.3 可以按照以下步骤进行操作:

1. 安装必要的依赖和 EPEL 仓库 EPEL(Extra Packages for Enterprise Linux)是为企业级 Linux 提供额外软件包的仓库,yum-utils 用于管理 yum 仓库。

sudo yum install -y epel-release yum-utils

2. 添加 Remi 仓库 Remi 仓库包含了丰富的 PHP 版本,你可以从中选择 PHP 7.3 进行安装。

sudo yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm

3. 启用 PHP 7.3 源

sudo yum-config-manager --enable remi-php73

4. 安装 PHP 7.3 运行以下命令安装 PHP 7.3 及其常用扩展。这里选择了一些常见的扩展,你可以根据实际需求添加或删除。

sudo yum install -y php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json

在安装过程中,系统会提示你确认安装,输入 y 并回车继续。

5. 验证 PHP 安装 安装完成后,通过以下命令检查 PHP 版本,确认是否安装成功。

php -v

如果成功安装,会显示 PHP 7.3 的版本信息。

6. 配置和启动 PHP-FPM(可选但推荐) 如果你计划使用 PHP 处理动态网页(如与 Nginx 或 Apache 结合),需要配置并启动 PHP-FPM(FastCGI Process Manager)。

启动 PHP-FPM 服务:

sudo systemctl start php-fpm

设置开机自启:

sudo systemctl enable php-fpm

检查服务状态:

sudo systemctl status php-fpm

如果服务正常运行,会显示 active (running) 的状态信息。

7. 防火墙设置(如果需要) 如果你的服务器启用了防火墙,需要开放相应的端口。

PHP-FPM 默认使用 9000 端口,如果你使用的是 firewalld,可以执行以下命令开放端口。

sudo firewall-cmd --zone=public --add-port=9000/tcp --permanent
sudo firewall-cmd --reload

通过以上步骤,你就可以在 CentOS 7 系统上成功安装并配置 PHP 7.3。

--------------------------------

假设新建了文件夹 deepseek用于访问php文件,nginx运行时,有可能需要修改访问权限

修改 deepseek 目录及其文件的所属用户和组:

sudo chown -R nginx:nginx /etc/nginx/deepseek

用下面的命令,来查看是否修改成功:

ls -ahl

--------------------------------

新建一个PHP测试文件,命令如下:

sudo bash -c 'echo "<?php phpinfo(); ?>" > /etc/nginx/deepseek/info.php'

上面命令中的路径/etc/nginx/deepseek/info.php,根据具体情况修改。

--------------------------------

若要同时让 Nginx 能够访问 api.php 和 info.php,可以采用以下几种配置方式,下面为你详细介绍:

方式一:分别为 api.php 和 info.php 设置独立的 location 块

# 处理 api.php 请求
location = /api.php {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /etc/nginx/deepseek/api.php;include        fastcgi_params;
}
# 处理 info.php 请求
location = /info.php {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  /etc/nginx/deepseek/info.php;include        fastcgi_params;
}

说明 location = /api.php 和 location = /info.php 中的 = 符号表示精确匹配,即只有当请求的 URI 严格为 /api.php 或 /info.php 时,才会应用该 location 块的配置。

fastcgi_param SCRIPT_FILENAME 分别指定了不同 PHP 文件的完整路径。

方式二:使用正则表达式匹配 .php 文件

location ~ \.php$ {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;include        fastcgi_params;
}

说明 location ~ \.php$ 中的 ~ 表示使用正则表达式匹配,\.php$ 表示匹配以 .php 结尾的 URI。

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 利用了 $document_root(Nginx 配置中的 root 指令指定的根目录)和 $fastcgi_script_name(请求的 PHP 脚本名)来动态构建 PHP 文件的完整路径。

前提是你已经在 server 块中正确设置了 root 指令,例如:

server {listen       80;server_name  localhost;root         /etc/nginx/deepseek;  # 设置根目录index        index.html index.htm index.php;location ~ \.php$ {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;include        fastcgi_params;}
}

--------------------------------

假设CentOS主机的IP地址为:192.168.137.130,在浏览器中测试php的文本如下,把下面的文本复制到浏览器的地址栏回车。

http://192.168.137.130/info.php

如果显示如下页面,则代表成功:


http://www.ppmy.cn/devtools/167938.html

相关文章

联想拯救者 M600 无线游戏鼠标|自定义驱动程序安装说明

安装步骤 下载后得到联想拯救者 M600 无线游戏鼠标自定义驱动程序“Setup_2.0.6.01271.exe”&#xff0c;右键 “ Setup_2.0.6.01271.exe ”&#xff0c;以管理员身份运行。 在安装向导窗口&#xff0c;点击“下一步” 在安装向导“许可协议”窗口&#xff0c;勾选“我接受协议…

大语言模型打卡学习DAY1

学习目标&#xff1a; 语言模型的发展历程 大模型的技术基础 学习内容&#xff1a; 1. 语言模型的发展历程 语言模型通常是指能够建模自然语言文本生成概率的模型&#xff0c;从语言建模到任务求解&#xff0c;这是科学思维的一次重要跃升。2. 大语言模型技术基础 定义&#…

让 Deepseek 写一个计算器(网页)

完整代码 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>简单计算器</title><style&…

鸿蒙 @ohos.arkui.inspector (布局回调)

鸿蒙 ohos.arkui.inspector (布局回调) 在鸿蒙开发中&#xff0c;ohos.arkui.inspector 模块提供了一种强大的方式来监听组件的布局和绘制完成事件。这对于实现动态布局调整、自定义动画以及优化性能等场景非常有用。本文将详细介绍如何使用 ohos.arkui.inspector 模块实现布局…

凸优化算法学习笔记:决策单调性与 wqs二分

文章目录 前言决策单调性单调矩阵&#xff0c;完全单调矩阵&#xff0c;蒙日阵决策单调性优化 d p dp dp线性 d p dp dp分治&#xff08;离线&#xff09;二分队列&#xff08;在线&#xff09;SMAWK 区间 d p dp dp 练习题LOJ6039 w q s wqs wqs 二分&#xff08;蒙日阵最短…

Uniapp当中的scroll-view滚动条不出现或者触底刷新事件不触发

一、未正确设置容器高度 问题描述 scroll-view 未设置明确高度或高度值无效&#xff0c;导致无法形成有效滚动区域。 解决方案 • 使用行内样式直接设置 height&#xff08;如 style"height: 500rpx;"&#xff09;&#xff0c;避免类名样式被覆盖。 • 动态计算高度…

【每日学点HarmonyOS Next知识】页面引用问题、Json三方库、路由表使用、下拉刷新问题、视频播放错误

1、HarmonyOS 全屏的自定义组件被其他页面引用后导致其他页面按钮功能无法使用问题&#xff1f; 参考代码&#xff1a; //1.index.ets Entry Component struct First {State visible: Visibility Visibility.Nonebuild() {// 使用stack可以实现假的dialog覆盖原页面上面Stac…

LangChain教程 - Agent -之 REACT_DOCSTORE

1. 引言 在智能问答和知识检索的场景下&#xff0c;如何让 AI 既具备推理能力&#xff0c;又能高效利用外部知识库&#xff1f;ReAct 框架已经展现了强大的推理能力&#xff0c;而 ReACT_DOCSTORE 则进一步增强了这一能力&#xff0c;结合了文档存储&#xff08;DocStore&…