Pomoc z konfiguracją: nowy Linux, starszy PHP 5.2, Apache i MySQL

Nie jestem szalenie mocny w Linuksie, podstawowe tematy umiem rozwiązać, ale trafiłem na kamień (jak na swoje możliwości).

 

Otóż mam aplikację webową w PHP, niestety napisaną dość dawno i nie ma żadnych szans na jej przepisanie, ani szybką poprawkę, a muszę ją odpalić lokalnie, koniecznie pod Linuksem (pod Windows się da i już mi się udało na WAMP, ale z przyczyn technicznych potrzebny jest tam Linux). Maksymalnie podniesie się na PHP 5.2.17.

 

Zainstalowałem pierwsze z brzegu, co mi się nawinęło - Ubuntu. Szukając po sieci znalazłem informację o narzędziu tasksel - wybrałem tam LAMP Server, ale niestety nie ma tam żadnego wyboru wersji PHP i powitało mnie wydanie 5.4.9, a aplikacja się nie podniosła :frowning:

 

Czy jest jakiś choćby częściowo zautomatyzowany sposób, żeby postawić na świeżym systemie LAMP z PHP maksymalnie 5.2.17? Bo poza tym w sieci trafiłem jeszcze przewodniki proponujące kompilację PHP 5.2.17 ze źródeł, ale czuję, że przy tym wymięknę :( http://oleksiy.pro/2013/03/29/installing-php-5-2-17-on-ubuntu-aws/

 

Albo może jest jakaś gotowa instalka (już nawet jakiegokolwiek, byleby miał też jakieś środowisko graficzne) systemu już z LAMP i starszym PHP na pokładzie?

Zobacz w repozytorium czy jest dostępna niższa wersja, jeśli tak, zainstaluj ją. Jeśli nie, to albo instalujesz starszą wersję systemu, albo zamiast Ubuntu bierzesz CentOS, w którym można zainstalować kilka wersji PHP jednocześnie. Ewentualnie zobacz czy masz w repozytorium php-fpm, jeśli tak, zainstaluj i spróbuj uruchomić starszą wersję php.

http://virtphp.org/ + stara wersja php z repo. Ewentualnie https://puphpet.com/

Zasadniczo najpierw podaj jakiej wersji systemu używasz:

lsb_release -a

Zainteresuj się pinowaniem pakietów.

Podpowiedź @roobala mi pomogła - dzięki - wstępnie chyba to ogarnąłem. Wybrałem po prostu zły system.

 

A zrobiłem tak (może się komuś przyda):

  • ściągnąłem i wypaliłem najnowszy CentOS 6 (tą pełną wersję 2xDVD)

  • przy instalacji wskazałem zastosowanie jako WebServer

  • po instalacji odpaliłem eth0, bo domyślnie było nieaktywne (dłubnąłem przez vim w ifconf-eth0, ONBOOT na yes, restart)

  • zablokowałem iptables (do zastosowań lokalnych do niczego mi to nie potrzebne, nie bijcie :wink: )

  • ustawiłem httpd i mysqld, żeby startowały z systemem (pamiętam, że chyba doinstalowywałem jeszcze przez yum mysql-server i php-mysql, bo mi zgłaszał brak mysqld jak chciałem odpalać)

  • ściągnąłem x window i desktop, bo nie czuję się mocny w terminalu i wyedytowałem /etc/inittab, żeby ładował się desktop, tj. id:5:initdefault: )

  • odpaliłem desktop

  • php był 5.3.3, dodałem repozytorium z php 5.2.17 (nie ma już na Atomi Corp., wszędzie na sieci do nich linkowali, a przynajmniej mi zgłaszał brak, zaryzykowałem z jakimś rosyjskim repo rpm -Uhv http://rpms.southbridge.ru/southbridge-rhel6-php52.rpm))

  • wykonałem takie coś: yum downgrade $(rpm -qa --qf “%{NAME}\n” | grep -v ioncube | grep ^php | awk ‘{print $1"-5.2.17"}’) (znalezione na pomocy technicznej Parallels)

  • obraził się o libevent-2.0.so.5 - znalazłem i zainstalowałem ręcznie, odpaliłem jeszcze raz powyższe, poszło

  • /sbin/service httpd restart i mysqld tak samo, php 5.2.17 śmiga, aplikacja podniosła się po drobnych poprawkach

  • wyedytowałem yum.conf, (exclude na php*), co powinno mi zapewnić aktualizacje, ale bez php, którego wszak ruszać nie chcę :wink: mam nadzieję, że standardowe aktualizacje nie rozsypią mi php?

 

Dzięki :smiley:

 

Jeśli mogę coś jeszcze w powyższym poprawić/sprawdzić/dokonfigurować - chętnie posłucham, bo sam słabo w tym stoję, może coś nie do końca poprawnie wykonałem, ale ogólnie działa :wink: Zrobiłem restart i nadal działa, więc chyba się udało…

Może to Ci się jeszcze kiedyś przyda lub komuś innemu :arrow: http://tech-itcore.pl/2013/04/11/centos-6-4-obsluga-kilku-wersji-php-jednoczesnie-dzieki-php-fpm-5-3-x-5-4-x-oraz-5-5/ Co prawda to dla wersji od 5.3 do 5.5, ale powinno dać się zastosować dla niższych, z tym że mogą wystąpić właśnie problemy z zależnościami przy schodzeniu do niższej wersji, niż najniższa domyślna dostępna w systemie.