Бывае так, што ў свежым дыстрыбутыве Debian можа спатрэбіцца старая версія php, якая не ўваходзіць у стабільную галінку дыстрыбутыва. Напрыклад, php 5.3 для працы сайта на серверы з Debian Jessie.
Для поўнага дазволу залежнасцяў варта, акрамя php, ўсталёўваць пакеты apache, актуальныя для папярэдняга стабільнага дыстрыбутыва Debian.
І самы важны аспект: заўсёды рабіце бэкапы ўсіх канфігурацыйных файлаў!
Магчыма, вам спатрэбіцца выдаліць ужо ўсталяваныя пакеты php з стабільнай галінкі, калі былі ўсталяваныя раней. Гэта можна зрабіць з дапамогай каманды:
# Aptitude purge `dpkg -l | grep php | grep -w 5 | awk '{print $ 2}' | xargs`
І тую ж самую каманду выконваем для apache, адпаведна, замяняючы php на apache2.
даданне рэпазітароў
Пакеты для Debian Squeeze, у цяперашні час, даступныя толькі ў архіўным рэпазітары . Спіс будзе выглядаць так:
deb http://archive.debian.org/debian/ squeeze main deb-src http://archive.debian.org/debian/ squeeze main
Дадаем яго адной камандай:
# Echo -e "deb http://archive.debian.org/debian/ squeeze main \ ndeb-src http://archive.debian.org/debian/ squeeze main"> /etc/apt/sources.list.d /php-squeeze.list
І абнаўляем кэш пакетаў.
# Aptitude update
Вызначэнне прыярытэту пакетаў
Далей ствараем файл /etc/apt/preferences.d/php-apache-squeeze, дзе прапісваем наступнае:
Package: * php5 * Pin: release a = squeeze Pin: version 5.3 * Pin-Priority 1000 Package: * apache * Pin: release a = squeeze Pin: version 2.2 * Pin-Priority 1000
Найбольшай увагі заслугоўваюць два параметру.
Pin: release a = squeeze - паўтлустым выдзелена імя галінкі дыстрыбутыва.
Pin: version - версія пакетаў.
Захоўваем файл, усталёўваем пакеты стандартным чынам:
# Apt-get install apache2-mpm-prefork libapache2-mod-php5 php5-cli php5-mysql
Пры гэтым метадзе не патрабуецца замарожваць пакеты, так як падчас абнаўлення сістэмы, яны закрануты не будуць. Таксама варта адзначыць, што ў старых галінках могуць адсутнічаць некаторыя пакеты (php5-fpm для версіі 5.3).
PS Таксама гэты спосаб цалкам падыходзіць і для Убунту, але з пераглядам выкарыстоўваюцца рэпазітароў.
Дзякуй. Дапамагло.
Добры дзень!
Пры ўстаноўкі libapache2-mod-php5 - выдае наступнае:
root @ funticket: ~ # apt-get install libapache2-mod-php5
Reading package lists ... Done
Building dependency tree
Reading state information ... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
init: PreDepends: systemd-sysv but it is not going to be installed or
sysvinit-core but it is not going to be installed or
upstart but it is not going to be installed
initscripts: Depends: sysv-rc or
file-rc but it is not going to be installed
Recommends: e2fsprogs but it is not going to be installed
libapache2-mod-php5: Depends: libssl0.9.8 (> = 0.9.8m-1) but it is not going to be installed
Depends: apache2-mpm-prefork (> 2.0.52) but it is not going to be installed or
apache2-mpm-itk but it is not going to be installed
Depends: apache2.2-common but it is not going to be installed
Depends: php5-common (= 5.3.3-7 + squeeze19) but it is not going to be installed
Depends: ucf but it is not going to be installed
Depends: tzdata but it is not going to be installed
Recommends: php5-cli but it is not going to be installed
libblkid1: Depends: libuuid1 (> = 2.16) but it is not going to be installed
libreadline6: Depends: readline-common but it is not going to be installed
logrotate: Depends: cron or
anacron or
cron-daemon
Recommends: mailx
E: Error, pkgProblemResolver :: Resolve generated breaks, this may be caused by held packages.
Буду ўдзячны любы дапамогі! Ніяк не атрымліваецца пэху запусціць у 8-цы debian
У дадзены момант магу парэкамендаваць замест модуля libapache2-mod-php5 выкарыстоўваць php5-cgi.
Спачатку ставім apache:
Такім чынам можна нават не ставіць стары apache з рэпазітара squeeze.
Затым ставім php:
Ўключаем mod_actions:
У конфіг віртуальнага хаста ў конфіге apache дадаем радкі:
Дзякуй за адказ!
Мне трэба менавіта каб php працаваў як модуль apache.
Вырашыў пытанне паставіўшы Debian 7.