Skip to main content

Ўстаноўка php 5.3 на Debian 7



Бывае так, што ў свежым дыстрыбутыве 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 Таксама гэты спосаб цалкам падыходзіць і для Убунту, але з пераглядам выкарыстоўваюцца рэпазітароў.



Як вы ацэніце артыкул?
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (1 адзнак, сярэдняе: 5,00 з 5)
Загрузка ...

” 4 Каментары "Усталяванне php 5.3 на Debian 7"

  1. Добры дзень!
    Пры ўстаноўкі 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

    1. У дадзены момант магу парэкамендаваць замест модуля libapache2-mod-php5 выкарыстоўваць php5-cgi.

      Спачатку ставім apache:

        aptitude install apache2-mpm-itk -t squeeze 

      Такім чынам можна нават не ставіць стары apache з рэпазітара squeeze.

      Затым ставім php:

        aptitude install php5-cgi php5-cli php5-mysql -t squeeze 

      Ўключаем mod_actions:

        a2enmod actions 

      У конфіг віртуальнага хаста ў конфіге apache дадаем радкі:

        ScriptAlias ​​/ local-bin / usr / bin
       AddType application / x-httpd-php .php .php3
       Action application / x-httpd-php / local-bin / php5-cgi 

Дадаць каментар

Ваш e-mail не будзе апублікаваны.