St. Čvn 22nd, 2022

Ušetřím vás spoustu googlení, když vám někdo dá prehistorické, neupdatované forum s prosbou o update.

Poslední verze PHPBB 3.2.x je 3.2.11. Problém je, že spousta diskusních fór se na update vykašlala, nebo se nedostala přes verzi 3.2.2 a novější, protože zde byl historicky největší problém forum updatnout na novější verzi, kdy to selhávalo s tunou chyb.

Pozor, s PHP 7.2 to řvalo errory s timeoutem, fakt jsem se nechtěl otravovat zdlouhavým procházením php.ini a řešit timeouty na kde co možné, takže jsem přiinstaloval php-fpm5.6 a na apachi jsem v definici webu řekl, ať to používá php5.6-fpm.

Zde rovnou hodím příkazy na doinstalaci php5.6-fpm pro debianí/ubuntí systémy: (bude fungovat na debian 11 a 10 a možná i debianu 9):

#!/bin/bash
apt update -y
apt install software-properties-common ca-certificates lsb-release apt-transport-https  -y
sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -
apt update -y
apt install php5.6 php5.6-cli php5.6-cgi php5.6-fpm php5.6-gd php5.6-mysql php5.6-imap php5.6-curl php5.6-intl php5.6-pspell php5.6-recode php5.6-sqlite3 php5.6-tidy php5.6-xmlrpc php5.6-xsl php5.6-zip php5.6-mbstring php5.6-soap php5.6-opcache php5.6-common php5.6-json php5.6-readline php5.6-xml -y

Pokud si to můžete dovolit, protože je to nějaký nejzapadlejší server na internetu, který můžete přepnout na php5.6 kompletně, tak je to tímto příkazem:
update-alternatives --config php
There are 4 choices for the alternative php (providing /usr/bin/php).

  Selection    Path                  Priority   Status
------------------------------------------------------------
  0            /usr/bin/php.default   100       auto mode
  1            /usr/bin/php.default   100       manual mode
  2            /usr/bin/php5.6        56        manual mode
* 3            /usr/bin/php7.2        72        manual mode
  4            /usr/bin/php7.4        74        manual mode

Press <enter> to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/php5.6 to provide /usr/bin/php (php) in manual mode

# systemctl restart apache2

V opačném případě budete muset php-fpm vložit do definice webu sem:

   <FilesMatch \.php$>
      # For Apache version 2.4.10 and above, use SetHandler to run PHP as a fastCGI process server
      SetHandler "proxy:unix:/run/php/php5.6-fpm.sock|fcgi://localhost"
    </FilesMatch>
# ověřte si, že máte nastartovaný php5.6-fpm pomocí systemctl restart php5.6-fpm

# systemctl status php5.6-fpm
● php5.6-fpm.service - The PHP 5.6 FastCGI Process Manager
     Loaded: loaded (/lib/systemd/system/php5.6-fpm.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-05-21 20:55:33 CEST; 33min ago
       Docs: man:php-fpm5.6(8)
    Process: 406567 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/5.6/fpm/pool.d/www.conf 56 (code=exited, status=0/SUCCESS)
   Main PID: 406564 (php-fpm5.6)
     Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
      Tasks: 3 (limit: 9406)
     Memory: 14.2M
        CPU: 193ms
     CGroup: /system.slice/php5.6-fpm.service
             ├─406564 php-fpm: master process (/etc/php/5.6/fpm/php-fpm.conf)
             ├─406565 php-fpm: pool www
             └─406566 php-fpm: pool www

Takže řešení v případě updatu na nejnovější 3.2.11 z prehistorické 3.2.2 (mělo by fungovat i z 3.2.0):

Spustíte update fora, stejně se vám to rozsype a bude to házet chyby. Přihlásíte se do phpmyadmina/adminera/SQLyogu do MySQL serveru a provedete tyto SQL dotazy:

TRUNCATE TABLE phpbb_migrations;
DELETE FROM phpbb_migrations WHERE migration_name = "\phpbb\db\migration\data\v310\profilefield_wlm";
DELETE FROM phpbb_modules WHERE module_langname LIKE 'ACP_CONTACT_SETTINGS';
DELETE FROM phpbb_modules WHERE module_langname LIKE 'UCP_AUTH_LINK_MANAGE';
TRUNCATE TABLE phpbb_migrations;
ALTER TABLE phpbb_user_notifications DROP INDEX itm_usr_mthd;

A kliknete na tlačítko update fora znovu a už to proběhne do 100% bez problémů.

Zkoušel jsem, jestli by provedení těchto SQL dotazů před updatem, problém vyřešilo. Nevyřešilo. Řeší až výskyt problémů po neúspěšném updatu, takže nebylo možné se na update připravit tak, aby prošel na první dobrou.

Zdroj řešení, zdroj2, zdroj3

Jinak zbytek návodu na update na PHPBB3.2.x na poslední PHPBB 3.2.11 by měl být defakto stejný, jako update na 3.2.X na 3.3.X, který sem copy&pastnu pro případ, že by např. projekt PHPBB zanikl úplně. Tímto se autorům PHPBB omlouvám, že tu copy&pastnu jejich návod s tím, že uvedu původní zdroj z jejich webu, odkud jsem čerpal právě z obav, pokud by někdy jejich web např. zaniknul, nebo návod zmizel + jsem návod prohnal DeepL strojovým překladačem.

Zdroj návodu. Další zdroj zde.

Upgrading z 3.2 na 3.3 (stejný postup z 3.2.x na 3.2.11)

Aktualizace na phpBB 3.3 může způsobit, že některé styly a rozšíření přestanou fungovat. Pokud máte vlastní logo, může být nutné ho po aktualizaci předělat. Viz Znalostní báze: Jak změnit logo nástěnky.

phpBB 3.3 by mělo být zpětně kompatibilní s verzí 3.2, nicméně některá rozšíření a vlastní úpravy již nemusí fungovat. Nejjednodušší metodou upgradu je před upgradem odstranit všechny stávající soubory a po ověření jejich správnosti znovu použít vlastní změny.

Chcete-li provést upgrade, proveďte následující kroky:

Ujistěte se, že váš server splňuje požadavky pro provoz phpBB 3.3: část 1.1, „Požadavky“.

Vytvořte zálohu původních souborů

Proveďte zálohu databáze

Deaktivujte všechny styly kromě prosilveru

Deaktivujte všechna rozšíření, která nejsou kompatibilní s phpBB 3.3. Ověřte si u autora rozšíření, zda je kompatibilní, nebo ne.

Nastavte britskou angličtinu jako jediný jazykový balíček

Stáhněte si archiv kompletního balíčku phpBB 3.3 (v případě updatu na 3.2.11 nejnovější 3.2.11 v zájmu stejné verze 3.2.x)

Rozbalte obsah archivu do počítače a otevřete adresář phpBB3.

Z balíčku odstraňte následující soubory:

Soubor config.php

adresář images/

Adresář files/

Adresář store/

Na svých webových stránkách odstraňte všechny soubory z desky kromě:

Soubor config.php

adresáře ext/

adresáře images/

adresáře files/

adresáře store/

Nahrajte obsah adresáře phpBB3 z vašeho počítače do adresáře vašeho fóra. Můžete být vyzváni k přepsání zbývajících souborů. Pokud budete vyzváni ke sloučení nebo přepsání adresářů, zvolte sloučení.

Aktualizujte databázi:

Tip
U rozsáhlých fór můžete místo webového prohlížeče provést aktualizaci přes příkazový řádek. V kořenovém adresáři nástěnky spusťte následující příkaz: php ./bin/phpbbcli.php db:migrate –safe-mode

Pomocí webového prohlížeče navštivte install/ v kořenovém adresáři své nástěnky. (např. http://www.example.com/yourforum/install).

Klikněte na záložku Aktualizace

Klikněte na tlačítko Aktualizovat

Vyberte možnost „Aktualizovat pouze databázi“ a klikněte na tlačítko Odeslat

Počkejte, až ukazatel průběhu dosáhne 100 % a zobrazí se zpráva, že aktualizace byla dokončena.

Odstraňte adresář install/

Poznámka
Ujistěte se, že je při nahrávání zahrnut soubor .htaccess kořenové úrovně. Někteří klienti FTP nezobrazují soubory, jejichž názvy začínají tečkou, a možná bude nutné povolit zobrazení skrytých souborů.

Poznámka:
Pokud vaše nástěnka používala jiné jazykové balíčky než britskou angličtinu, budete si muset stáhnout verzi kompatibilní s phpBB 3.3 ze stránky https://www.phpbb.com/languages/.

Důležité
Při nahrávání souborů verze 3.3 na server NEPŘEpisujte soubor config.php.

Důležité
Při zálohování souborů se ujistěte, že váš FTP klient je v binárním režimu nebo přenáší soubory bez přípon v binárním režimu.

Další informace naleznete na adrese: Znalostní báze: Přenos souborů s přílohami pomocí aplikace Filezilla

zdroj

Po upgradu na 3.2.11 je upgrade na 3.3.7 už naprosto bez problémů

viz obrázek.

Upgrade z 3.2.11 na 3.3.7 už proběhl na první dobrou bez problémů. (i přesto si však udělejte zálohu před upgradem a to jak souborů, tak databáze)

Avatar

By mirra

Hardwaru a počítačům se věnuji již od roku 2003. Za tu dobu jsem poskládal stovky počítačů, opravil tisíce počítačů a vyřešil nespočetně problémů, vad a chyb, se kterými se setkávali uživatelé. Od roku 2005 se zabývám servery, zejména těmi herními, v roce 2007 jsem se začal věnovat Valve Source SDK level designu, který šel od roku 2009 k ledu kvůli studiu Informatiky na univerzitě. Podílel jsem se chvíli i na provozu síťové laboratoře MENDELU, dnes spravuji cca 30 serverů/diskových polí na univerzitě, řeším IT v malých a středních firmách tak, aby firmy ušetřily nemalé částky při zlepšení kvality a soustředím se na snižování nákladů na IT od licencí až po hardware, software, provádím konsolidace a audity platnosti licencí, které firmám šetří rovněž nemalé peníze. Z velkých firem spravuji s dalšími kolegy 8000 serverů po celé Evropě a tato práce mě nesmírně baví, protože se vše musí automatizovat a nabízí mi to možnost trénovat další evropské jazyky od Angličtiny, přes Němčinu až po Italštinu.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.

5 × one =