GNU/Linux >> Znalost Linux >  >> Linux

Jak přepnout verzi PHP

Nedávno jsem diskutoval o různých tématech týkajících se konfigurace různých webových serverů a provozu aplikací PHP, jako je WordPress. Webové servery, jako je OpenLiteSpeed, vám umožňují změnit verzi pomocí WebAdmin Console, ale pokud používáte Apache, zde je návod, jak přepnout verzi PHP na Linuxu.

Verze PHP

Jak zkontrolovat verzi PHP v Linuxu?

Nejprve zjistěte, jaká verze PHP je aktuálně nainstalovaná a nakonfigurovaná. Pro tuto ukázku používám Debian 11. Všechny pokyny uvedené v tomto článku budou fungovat bez problémů v jakékoli distribuci Linuxu.

Jediná věc, kterou je třeba mít na paměti, že verze, na kterou se pokoušíte přejít, je správně nainstalována.

php -v

Instalace konkrétní verze PHP

Na LinuxAndUbuntu existuje podrobný průvodce, jak nainstalovat PHP 8.x na distribuce Linuxu založené na Debianu a Ubuntu. Pokud instalujete jakoukoli předchozí verzi, jako je PHP 7.4, není třeba přidávat žádné úložiště.

sudo apt install php7.4

Změnit verzi PHP

Jakmile máte nainstalovaných více verzí PHP, můžeme použít skripty a2dismod a a2enmod k deaktivaci verze PHP a povolení jiné verze PHP. Oba tyto skripty mohou povolit a zakázat jakýkoli modul Apache.

Zakázat aktuální verzi PHP

Za předpokladu, že máte PHP 8.1 aktuálně nastaveno jako výchozí verze PHP, zde je návod, jak jej zakázat –

sudo a2dismod php8.1

Povolit novou verzi PHP

Nyní můžeme přejít na jakoukoli nainstalovanou verzi PHP pomocí a2enmod –

sudo a2enmod php7.4

Po změně verze PHP nezapomeňte restartovat server apache.

sudo service apache2 restart

Běžné chyby s a2enmod

Někteří uživatelé mohou dostat chybu „bash:a2dismod:příkaz nenalezen“.

[email protected]:~$ a2dismod php8.1
bash: a2dismod: command not found

Většinou k chybě dochází při spuštění příkazu bez sudo nebo root.

Zde je výstup, který získáte po úspěšném provedení příkazu –

[email protected]:~$ sudo a2dismod php8.1
Module php8.1 disabled.
To activate the new configuration, you need to run:
  systemctl restart apache2

Totéž platí pro a2enmod. Spusťte jej pomocí sudo nebo jako uživatel root.

Další chybou, na kterou mohou uživatelé narazit, je „CHYBA:Modul php7.3 neexistuje!“.

[email protected]:~$ sudo a2enmod php7.3
ERROR: Module php7.3 does not exist!

Tato chyba znamená, že verze PHP, kterou se uživatel pokouší aktivovat, není nainstalována. V tomto případě php7.3 není nainstalováno.

Zde je návod, jak vypadá úspěšné provedení a2enmod –

[email protected]:~$ sudo a2enmod php7.4
Considering dependency mpm_prefork for php7.4:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Module mpm_prefork already enabled
Considering conflict php5 for php7.4:
Enabling module php7.4.
To activate the new configuration, you need to run:
  systemctl restart apache2


Linux
  1. Jak skrýt verzi PHP v Linuxu

  2. Jak změnit verzi PHP v cPanel

  3. Jak upgradovat verzi PHP na PHP 8.0 na Ubuntu

  1. Jak zkontrolovat verzi PHP

  2. Jak změnit verzi Pythonu v Ubuntu a Debianu

  3. Jak změnit verzi PHP

  1. Jak zkontrolovat verzi PHP na Ubuntu

  2. Jak přepínat mezi různými verzemi příkazů v Linuxu

  3. Jak nainstalovat PHP 7.4 na CentOS 8