Встановіть PHP5 на Ubuntu 18.04


20

У мене працює старий інструмент PHP, який не легко адаптується до PHP7. Тому мені потрібно запустити PHP5 на своєму сервері.

Як я можу встановити PHP5 на Ubuntu Bionic Beaver?

Відповіді:


33

Не рекомендується продовжувати PHP 5.6, що є EOL З січня 2010 року!

Але ви можете встановити PHP5.6 з PPA:

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt install php5.6

джерело: /ubuntu//a/762161/34298


спочатку вам потрібно встановити "sudo apt install software-properties-commo", щоб отримати команду "add-apt-repository"
ZFNerd

Для мене в ubuntu sudo apt-get install php5.6працював лише 19.04
Гаян

2

Ви можете розглянути можливість запуску інструменту PHP 5 в контейнері, наприклад Docker. PHP 5 наближається до кінця життя, і якщо ви використовуєте PHP 7 на одній машині, ви можете зіткнутися з конфліктами.

Для PHP 5 доступні кілька офіційних зображень Docker: https://hub.docker.com/_/php/


Це більш безпечно, ніж просто встановити PHP 5? Мені не потрібен PHP 7 на цій машині
rubo77

Вам не потрібно середовище контейнера, якщо PHP 7 вам зовсім не потрібен, просто видаліть PHP 7 та встановіть PHP 5 з репортажу ondrej в іншому відповіді в цьому випадку.
RedScourge

1

Як згадували інші відповіді, кілька варіантів:

  • Використовуйте репо-файл Ondrej / php PPA для установки PHP 5.6:

Подобається це:

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt install php5.6
  • Використовуйте контейнерні системи Docker або LXD для створення невеликого середовища PHP 5, запустіть його всередині Ubuntu 18.04 та переадресуйте всі веб-запити, що вимагають PHP 5. Я чую, що ви можете фактично перетворити цілий VM Ubuntu 12.04 або 14.04 в контейнер з lxd-p2c і запустити його всередині Ubuntu 18.04, як це робиться в цій презентації: "Перетворення фізичних систем у контейнери, міграція до системних контейнерів"

  • Ви також можете встановити другий сервер (або VM) і просто мати Apache в основній системі 18.04 для проксі-запитів для сайтів, для яких потрібен PHP 5. Ця система не потребує доступу до Інтернету, оскільки система 18.04 буде тією, що піддається зовнішньому світу. Якщо вам потрібні register_globals, ви можете використовувати Ubuntu 12.04 з PHP 5.3.2, який офіційно більше не підтримується, або Ubuntu 14.04 з PHP 5.5.9 з фрагментом коду на початку всіх ваших файлів для імітації register_globals. Я забуваю фрагмент коду, але ви можете подивитися його. Ось відповідні конфігураційні файли, які, ймовірно, повинні працювати для доступу до SSL-сайту з одного сервера на інший, якщо припустити, що решта конфігурації є правильною та потрібні моди включені:

На сервері Ubuntu 18.04 Apache, який здійснює проксі, на 192.168.1.2:

#requires mod_remoteip and mod_proxy
RemoteIPHeader X-Forwarded-For
TrustedProxy 192.168.1.2

SSLProxyEngine On
ProxyPreserveHost On
ProxyPass / https://example.org/ retry=0
ProxyPassReverse https://example.org/ retry=0

На сервері Ubuntu 14.04 з проксі-сервером на 192.168.1.3:

#requires mod_proxy
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 192.168.1.2 
RemoteIPInternalProxy 192.168.1.1 #assuming your router IP is 1.1
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.