Community
    • Categories
    • Recent
    • Popular
    • Users
    • Search
    • Register
    • Login

    PHP update von 8.0 auf 8.1

    Scheduled Pinned Locked Moved Allgemein
    4 Posts 2 Posters 662 Views 2 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D Offline
      Detlev.Runge 0
      last edited by

      ich habe versucht Debian10 (Buster) php von 8.0 auf 8.1 upzudaten
      habe mich an diverse Anleitungen gehalten
      es wird auch mit php -v die aktuelle Version angezeigt, ich bekomme aber keine
      Loginmaske mehr.
      Ich habe auch neu gestartet und im Firefox den Cache geleert
      wo müsste man jetzt ansetzen.
      Alternative wäre eine neue Installation von Debian 12 (Bookworm)

      StefanP74S 1 Reply Last reply Reply Quote 0
      • StefanP74S Offline
        StefanP74 @Detlev.Runge 0
        last edited by

        Servus @Detlev-Runge-0

        ich habe mir irgendwann mal die Updateprozedur zusammengeschrieben.
        Vielleich erkennst du, woran es bei deiner Vorgehensweise scheitert.

        PHP-Update
        Es können mehrere PHP-Versionen nebeneinander betrieben werden.
        Zu finden unter /etc/php/
        Zur Sicherheit ist eine Liste der verwendeten PHP-Module in ein File zu schreiben, diese Liste wird später benötigt.

        dpkg -l | grep php | tee packages.txt
        

        Das System auf Letztstand bringen

        apt-get update && apt-get upgrade
        

        Vorbereiten und Installieren der neuesten PHP-Version als Vorbereitung

        sudo apt install apt-transport-https lsb-release ca-certificates wget -y
        
        sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
        
        sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main"> /etc/apt/sources.list.d/php.list'
        
        apt-get update && apt-get upgrade
        

        Installation der gewünschten PHP-Version

        apt-get install php8.1
        

        Installieren der PHP-8 Module lt. anfänglich erstellter Liste (einzeln ... oder unten alle auf einmal)

        apt-get install php8.1-common
        apt-get install php8.1-fpm
        

        💡 Es lohnt sich, folgende Befehle als Erleichterung abzusetzen, da mit dieser Variante 99% aller benötigten Module installiert werden.

        apt install -y php8.1-{common,fpm,xml,zip,mysql,curl,mbstring,gd,intl,xsl,bcmath,imap,soap,readline,sqlite3,pgsql,gmp}
        
        systemctl restart php8.1-fpm
        
        systemctl restart apache2
        

        Vorherige PHP-Version deaktivieren, neue aktivieren

        sudo a2dismod php7.4
        
        sudo a2enmod php8.1
        

        Anhand der Modulliste nochmals kontrollieren, ob Module fehlen und nachinstallieren.

        PHP-Cli aktivieren

        sudo update-alternatives --set php /usr/bin/php8.1
        
        sudo update-alternatives --set phar /usr/bin/phar8.1
        
        sudo update-alternatives --set phar.phar /usr/bin/phar.phar8.1
        

        Diese Beiden stoßen vermutlich auf einen Fehler, das ist aber nicht von Interesse.

        sudo update-alternatives --set phpize /usr/bin/phpize8.1
        
        sudo update-alternatives --set php-config /usr/bin/php-config8.1
        

        php.ini
        Alle php.ini Dateien im Verzeichnis /etc/php/[Version] anpassen. Zumeist sind nur folgende Parameter zu korrigieren bzw. zu aktivieren:

        max_input_vars = 15000
        post_max_size = 256M
        upload_max_filesize = 125M

        Ein Vergleich der alten und neuen php.ini via notepad++ ist von Vorteil.

        💡 Die alten Versionen nicht entfernen!

        i-doit Anpassen
        Das File /etc/apache2/sites-enabled/i-doit.conf editieren.
        Die php-Version darin anapsssen. (php8.0-fpm.sock --> php8.1-fpm.sock)

        <FilesMatch ".php$">
        <If "-f %{REQUEST_FILENAME}">
        SetHandler "proxy:unix:/var/run/php/php8.0-fpm.sock|fcgi://localhost"
        </If>
        </FilesMatch>
        

        Abschluss
        Am Ende die Services neustarten.

        systemctl restart php8.1-fpm
        
        systemctl restart apache2
        

        LG Stefan

        1 Reply Last reply Reply Quote 1
        • D Offline
          Detlev.Runge 0
          last edited by

          danke erstmal für die schnelle Antwort
          ich habe ein paar Fehlermeldungen bekommen

          E: Fehlschlag beim Holen von https://packages.sury.org/php/dists/buster/InRelease Durch Clearsign signierte Datei ist nicht gültig, »NOSPLIT« erhalten (erfordert das Netzwerk eine Authentifizierung?)
          E: Das Depot »https://packages.sury.org/php buster InRelease« ist nicht mehr signiert.
          N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert.
          N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8).

          StefanP74S 1 Reply Last reply Reply Quote 0
          • StefanP74S Offline
            StefanP74 @Detlev.Runge 0
            last edited by

            Hallo @Detlev-Runge-0,

            hmmmmm ... ich habe erst jetzt gelesen, dass du noch auf Debian 10 bist.
            oa. Anleitung funktioniert unter Debian 11 einwandfrei.

            LG

            1 Reply Last reply Reply Quote 0
            • First post
              Last post