GoForum › 🌐 V2EX

Ubuntu 等 Linux 发行版一发布,就锁定 PHP 版本号的原因是什么?

shenzhenhk · 2026-10-23 09:23 · 0 次点赞 · 5 条回复

非 IT 企业,我部门服务器用的是 Ubuntu 24.04 LTS ,自带的 PHP 版本是 8.3.6 ,以后就算一直升级,版本也不会变,只会打补丁变成 8.3.6-0ubuntu0.24.04.XX 这样

这次 PHP 漏洞发生后,我们第一时间更新到了 8.3.6-0ubuntu0.24.04.13 ,这是 ubuntu 官方公告的修复版。

结果上方的监控部门发信来说我们没有升级,要求按照 https://www.php.net/archive/2026.php 官网要求升级到 8.3.36 以上

于是我们得费劲跟他解释 8.3.6-0ubuntu0.24.04.13 就是安全修复后的版本,他还是不懂为什么 8.3.6-0ubuntu0.24.04.13 高于 8.3.36

其实根源就在于发行版一发布就锁定软件包版本。如果允许小版本浮动,例如 Ubuntu 24.04 刚开始是 PHP 8.3.6 ,后续升级可以是 8.3.7 -> 8.3.8 等,就不会那么难理解了。

另外 Python 锁定的好像是大版本,例如 Ubuntu 24.04 锁定 3.12 ,后面的小版本还是会升。不过 Python 大部分人用的都是虚拟环境,与系统自带关系不大。

5 条回复
rodericliu · 2026-10-23 09:23
#1

现在 php 都用容器,用 remi 的源自己 build image ,ubuntu 自带的版本太老

hefish · 2026-10-23 09:23
#2

人家 alpine 就不锁,所以 ubuntu 也不应该锁。。。

hefish · 2026-10-23 09:23
#3

对了,不能不让他们看到 php 的版本好哒。。。

Muniesa · 2026-10-23 09:28
#4

LTS 就是这样的吧,在整个支持周期内更新的版本不会引入和删除接口和功能,只做漏洞修复,确保兼容性,php 应该是小版本间也有功能差异? Python 这边最后一位版本号是只做漏洞修复的所以可以直接用。

xiliuya · 2026-10-23 09:33
#5

锁定版本号可以避免大版本的更新导致的不兼容,这也是为什么很多项目只指定某个版本,这是为了稳定和安全考虑的

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: shenzhenhk
发布: 2026-10-23
点赞: 0
回复: 0