Осылайша, жаңа Debian таратуында Сізге тұрақты тарату филиалының бөлігі болып табылмайтын ескі нұсқасы қажет болуы мүмкін. Мысалы, Debian Jessie бар серверде торапты іске қосу үшін php 5.3.
Тәуелділіктерді толығымен шешу үшін, php-ға қосымша, алдыңғы Debian-ның тұрақты таратылымына қатысты апаэ пакеттерін орнатыңыз.
Ең маңызды аспект: әрдайым барлық конфигурация файлдарының резервтік көшірмесін жасаңыз!
Егер бұрын орнатқан болсаңыз, сіз орнатқан php бумаларын тұрақты бөлімнен алып тастауыңыз мүмкін. Мұны келесі пәрменмен орындауға болады:
# aptitude тазалау `dpkg -l | grep php | grep -w 5 | awk '{print $ 2}' | xargs`
Және біз apache үшін бірдей команданы орындап, php-ді apache2-мен ауыстырдық.
Репозитарийлерді қосу
Debian Squeeze пакеттері тек мұрағаттық қоймасында ғана бар. Тізім келесідей болады:
деп http://archive.debian.org/debian/ squeeze main deb-src http://archive.debian.org/debian/ squeeze main
Оны бір пәрменмен қосыңыз:
# echo -e «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 жаңарту
Пакеттік басымдық
Содан кейін /etc/apt/preferences.d/php-apache-squeeze файлын жасаңыз, онда біз мыналарды жазамыз:
Пакет: * php5 * Pin: а = сығуды босатыңыз PIN: нұсқасы 5.3 * Pin-Priority: 1000 Пакет: * apache * Pin: а = сығуды босатыңыз Pin: нұсқасы 2.2 * Pin-Priority: 1000
Екі параметр ең көп көңіл бөледі.
Қосу: босату a = сығымдау - тарату бөлімінің атауы қалың.
Пин: нұсқасы - пакеттердің нұсқасы.
Файлды сақтап, пакеттерді стандартты түрде орнатыңыз:
# apt-get орнату apache2-mpm-prefork libapache2-mod-php5 php5-cli php5-mysql
Осы әдіспен пакеттерді қатырудың қажеті жоқ, себебі жүйені жаңарту барысында олар әсер етпейді. Сондай-ақ ескі тармақтардан кейбір пакеттер болмауы мүмкін (5.3 нұсқа үшін php5-fpm).
PS Сонымен қатар, бұл әдіс Ubuntu үшін өте ыңғайлы, бірақ пайдаланылған репозитарийлерді қайта қараумен.
Рахмет. Бұл көмектесті.
Қайырлы күн!
Libapache2-mod-php5-ні орнатқанда, ол келесідей көрсетеді:
root @ funticket: ~ # apt-get install libapache2-mod-php5
Пакеттер тізімін оқу ... Орындалды
Құрылыстың тәуелділігі
Оқу туралы мәлімет ... Орындалды
Кейбір пакеттер орнатылмады. Бұл сізде бар екенін білдіреді
тұрақсыз жағдайды сұрады
бөлу
немесе кірісінен тыс жылжытылды.
Төмендегі ақпарат жағдайды шешуге көмектесуі мүмкін:
Төмендегі бумаларда рұқсат етілмеген тәуелділік бар:
init: PreDepends: systemd-sysv
ол орнатылмайды немесе болмайды
жоғары көтерілу түйесі
initscripts: байланысты: sysv-rc немесе
ол орнатылмайды
Ұсынылады: e2fsprogs
libapache2-mod-php5: байланысты: libssl0.9.8 (> = 0.9.8m-1), бірақ ол жүрмейді
Байланыстары: apache2-mpm-prefork (> 2.0.52)
apache2-mpm-itk
Байланысты: apache2.2-жалпы, бірақ ол орнатылмайды
Байланысты: php5-common (= 5.3.3-7 + squeeze19)
Байланысты: ucf
Байланысты: ол орнатылмайды
Ұсыныс: php5-cli
libblkid1: байланысты: libuuid1 (> = 2.16)
libreadline6: байланысты: readline-common
logrotate: байланысты: cron немесе
анакрон немесе
cron-daemon
Ұсыныс: mailx
E: Қате, pkgProblemResolver :: Пакеттермен жасалынған шешіңіз.
Мен кез келген көмекті алғысымды білдіремін! 8-ке дебианға пехуды іске қосу мүмкін емес
Қазіргі уақытта libapache2-mod-php5 модулінің орнына php5-cgi пайдалануды ұсынамын.
Алдымен, apache қойыңыз:
Осылайша, тіпті ескі апаэтті сығымдау репозиторийінен де орната алмайсыз.
Содан кейін php қойыңыз:
Mod_actions:
Apache теңшеліміндегі виртуалды хост теңшеліміне келесі жолдарды қосыңыз:
Жауап бергеніңіз үшін рақмет!
Мен тек apache модулі ретінде жұмыс істеу үшін php-ге қажет.
Debian 7-ні шығару арқылы мәселені шешті.