px920906
V2EX  ›  PHP

谨慎升级 php7.4

  •  
  •   px920906 · Jan 7, 2020 · 12651 views
    This topic created in 2502 days ago, the information mentioned may be changed or developed.

    系统是 manjaro,上个月底升级了一次,一直没重启。

    昨天重启后,发现本地的 nginx+php 的测试环境不能用了,html 和静态文件可以正常访问,php 文件就是“File not found”,很奇怪。

    然后从昨天直到刚才,花了好几个小时 google,nginx 路径配置、nginx 和 php-fpm 服务启动用户、网站目录权限什么的,能搜到的基本都试过一遍,都没解决。简直崩溃。

    最后瞄了眼 php 版本,7.4.1,构建日期蛮新的,12 月 18 号,才想会不会是 php 的问题。于是在关键字里带上 7.4 去搜索( php-fpm 7.4 file not found ),才找到解决方案:

    https://bbs.archlinux.org/viewtopic.php?id=251050

    https://blog.sbw.so/u/php-fpm-7.4-file-not-found-array-type-null-error.html

    7.4 代码里加了个 ProtectHome=true,看起来是为安全性做的改进。改成 false 重启守护进程和 php-fpm 服务就可以了。

    不过我的网站目录是在 /usr/share/下,并不是官方代码注释里的 /home, /root, /run/user,大概是没列出来?

    ubuntu 还是 7.0,arch 系升级需谨慎啊

    18 replies  •  2020-02-11 01:16:03 +08:00
    daya
    daya
    Jan 7, 2020
    1
    追求稳定还是不要用 Arch 系的发行版
    iamverylovely
    iamverylovely
    Jan 7, 2020
    2
    我依然毫不犹豫地输入了 sudo pacman -Syyu
    Evilk
    Evilk
    Jan 7, 2020
    3
    目前阶段维持在 7.2,较为稳妥
    mitu9527
    mitu9527
    Jan 7, 2020
    4
    PHP 7.4 刚发布没多久,还不稳定,自己尝鲜的话倒是可以用用;如果是生产环境,建议使用 7.3 ;如果非常追求稳定就用 PHP 7.2,已经是 Security Support 阶段了。
    ashong
    ashong
    Jan 7, 2020 via iPhone
    5
    7.3 都不能直接用,老项目边界版本 7.2,上周被坑苦了
    fstab
    fstab
    Jan 7, 2020
    6
    这么说来,我用着 5.6 不打算升级了。感觉异常稳定呀。
    kingwkb
    kingwkb
    Jan 7, 2020❤️1
    7
    任何版本都保持在 home 目录是好习惯
    ben1024
    ben1024
    Jan 7, 2020
    8
    正准备上 7.4.1
    acrisliu
    acrisliu
    Jan 7, 2020
    9
    每天一次 yay 的路过。
    sagaxu
    sagaxu
    Jan 7, 2020 via Android
    10
    ProtectHome 是 systemd 的功能,而且早在 3 年前就加入 php 的服务脚本了,https://github.com/php/php-src/commit/40c4d7f1820df1872a71ab07fd26da45a203e37f

    所以这跟 PHP 7.4 有什么关系呢?没看明白
    Mac
    Mac
    Jan 7, 2020 via Android
    11
    宝塔面板里 7.4 没有 opcache,所以还在用 7.3
    GG668v26Fd55CP5W
    GG668v26Fd55CP5W
    Jan 7, 2020 via iPhone
    12
    ProtectHome 为什么会把 /usr/share 也列进去了?
    spirit1431007
    spirit1431007
    Jan 7, 2020 via Android
    13
    我目录放 /var/www 的,没出现这种情况🤔
    zjsxwc
    zjsxwc
    Jan 7, 2020 via Android
    14
    docker 一把梭
    KENNHI
    KENNHI
    Jan 7, 2020
    15
    毫不犹豫 pacman -Syyu +1
    我不光用 Arch,还要在服务器上用,还默认用 root 用户,从来懒得干切到普通用户在 sudo 的蛋疼事,除非要装 aur
    自己 high 完事了,反正自己的服务器建几个小东西玩,也不是什么生产环境
    lobtao
    lobtao
    Jan 9, 2020
    16
    一直用着 php 7.0 :)
    flashrick
    flashrick
    Jan 15, 2020
    17
    一直用着 php 7.1 :)
    7gugu
    7gugu
    Feb 11, 2020 via Android
    18
    @flyz 如果是新项目就用 7.2 吧,性能上会好很多的,太老的项目在 7.2 上会不能用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1021 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 78ms · UTC 22:55 · PVG 06:55 · LAX 14:55 · JFK 17:55
    ♥ Do have faith in what you're doing.