Установка php debian 7: Установка PHP 7.x на Debian

Содержание

Установка php 5.3 на Debian 7

В общем, понадобилась мне версия php 5.3 на новом debian 7. В репозиториях только версия 5.4. Немного гугления и решение найдено.

Для начала нужно подключить репозитории squeeze. Открываем файл /etc/apt/sources.list редактором nano или другим и добавляем туда вот это:

deb http://ftp.de.debian.org/debian/ squeeze main
deb-src http://ftp.debian.org/debian/ squeeze main

deb http://packages.dotdeb.org squeeze all
Для dotdeb.org  добавляем ключ
wget -O - http://www.dotdeb.org/dotdeb.gpg |  apt-key add -

После чего выполняем команду apt-get update.

Перед установкой необходимо удалить всё, что связано с php 5.4.

apt-get remove --purge `dpkg -l | grep php | grep -w 5.4 | awk '{print $2}' | xargs`

Далее смотрим, какая версия php 5.3.* доступна для установки:

apt-cache showpkg php5

Будет что-то вроде этого:

Provides:
5.4.35-0+deb7u2 -
5.4.4-14+deb7u14 -
5.3.29-1~dotdeb.0 -
5.3.3-7+squeeze19 -

Последняя — то, что нам нужно. Для удобства присвоим ей переменную:

VERSION="5.3.3-7+squeeze19"

Устанавливаем основные пакеты:

apt-get install php5=$VERSION php5-cli=$VERSION php5-common=$VERSION

или

apt-get install php5=5.3.3-7+squeeze19 php5-cli=5.3.3-7+squeeze19 php5-common=5.3.3-7+squeeze19

или
apt-get install -t squeeze php5

Также и с другими пакетами. Допустим, нужен модуль mysql.

apt-get install php5-mysql=$VERSION

Если php как модуль apache:

apt-get install libapache2-mod-php5=$VERSION

После установки, все пакеты нужно будет заморозить, чтобы при установке обновлений ОС php не был обновлён до последней версии 5.4. Делается это при помощи aptitude. Напечатайте aptitude hold и названия установленных пакетов:

aptitude hold php5 php5-cli php5-common

Если вдруг понадобилось разморозить эти пакеты, то hold следует заменить на unhold.

Пример:

aptitude unhold php5 php5-cli php5-common

Читайте другие интересные статьи

Установка PHP 5.3 На Debian 7 Wheezy

В репозиториях седьмого Дебиана оказалась только php 5.4.

Но для работы многих скриптов требуется Php 5.3. От себя добавлю, что данный блог и joomla выше 1.5 нормально работает как на php 5.4-5.6 так и на 5.3. Конечно придется настроить интерпетатор и возможно немного поправить расширения Джумлы, тогда понижение версии может быть излишним.

Возможно, вам понадобится удалить уже установленные пакеты php из стабильной ветки, если были установлены ранее. Это можно сделать командой:

aptitude purge `dpkg -l | grep php | grep -w 5 | awk '{print $2}' | xargs`

или командой:

apt-get remove --purge `dpkg -l | grep php | grep -w 5 | awk '{print $2}' | xargs`

Обратите внимание что при этом удаляется и вебсервер Apache, если установлен и Phpmyadmin!

Далее можно устанавливать PHP.

Для начала нужно подключить репозитории squeeze. Открываем файл /etc/apt/sources.list редактором vim или другим (можно воспользоваться редактором Notepad++ о котором я говорил водном из постов) и добавляем:

deb deb http://archive.debian.org/debian/ squeeze main 
deb-src http://archive.debian.org/debian/ squeeze main

 После чего выполняем команду apt-get update.

Cмотрим, какая версия php 5.3.* доступна для установки:

apt-cache showpkg php5
Provides:
5.4.4-14+deb7u7 -
5.4.4-14+deb7u5 -
5.3.28-1~dotdeb.0 -
5.3.3-7+squeeze18 -
5.3.3-7+squeeze17 -

Ну и теперь можно ставить PHP 5.3 и отдельные пакеты с помощю aptitude

aptitude install -t squeeze php5

При этом будет предложено установить Web-сервер Apache.

Следующие НОВЫЕ пакеты будут установлены:
apache2-mpm-prefork{a} apache2-utils{a} apache2.2-bin{a} apache2. 2-common{a} libapache2-mod-php5{a}
libapr1{a} libaprutil1{a} libaprutil1-dbd-sqlite3{a} libaprutil1-ldap{a} libdb4.8{a} libonig2{a}
libqdbm14{a} libssl0.9.8{a} php5 php5-cli{a} php5-common{a} ssl-cert{a}
0 пакетов обновлено, 17 установлено новых, 0 пакетов отмечено для удаления, и 0 пакетов не обновлено.
Необходимо получить 12,9 MB архивов. После распаковки 34,8 MB будет занято.
Хотите продолжить? [Y/n/?]

Соглашаемся и в итоге у нас будет установлен из репозитория Apache 2.2.16

После установки, все пакеты нужно будет заморозить, чтобы при установке обновлений ОС php не был обновлён до последней версии 5.4. Делается это при помощи aptitude.

aptitude hold php5

Для того чтобы не замораживать пакеты можно создать файл /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 — версия пакетов.

Обратите внимание что в Sqeeze могут отсутствовать пакеты php5-fpm, но как модуль Апача PHP ставится нормально.

Смотрим чтобы был установлен libapache2-mod-php5

apt-get install libapache2-mod-php5

Для того чтобы узнать какая версия php сейчас установлена используем команду:

php -v
← Синхронизация системных часов с NTP сервером    Настройка SSH для управления сервером →

Установка php 5.3 на Debian 7

Установка php 5.3 на Debian 7

Для начала нужно подключить репозитории squeeze. Открываем файл /etc/apt/sources.list редактором nano или другим и добавляем туда вот это:

1.        deb http://ftp.de.debian.org/debian/ squeeze main

После чего выполняем команду apt-get update.

Перед установкой необходимо удалить всё, что связано с php 5.4.

1.        apt-get remove —purge `dpkg -l | grep php | grep -w 5.4 | awk ‘{print $2}’ | xargs`

Далее смотрим, какая версия php 5.3.* доступна для установки:

1.        apt-cache showpkg php5

Будет что-то вроде этого:

1.        Provides:

2.        5.4.4-14-

3.        5.3.3-7+squeeze14

Последняя — то, что нам нужно. Для удобства присвоим ей переменную:

1.        VERSION=»5.3.3-7+squeeze14″

Устанавливаем основные пакеты:

1.        apt-get install php5=$VERSION php5-cli=$VERSION php5-common=$VERSION

Также и с другими пакетами. Допустим, нужен модуль mysql.

1.        apt-get install php5-mysql=$VERSION

Если php как модуль apache:

1.        apt-get install libapache2-mod-php5=$VERSION

После установки, все пакеты нужно будет заморозить, чтобы при установке обновлений ОС php не был обновлён до последней версии 5.4. Делается это при помощи aptitude. Напечатайте 

aptitude holdи названия установленных пакетов:

1.        aptitude hold php5 php5-cli php5-common

Если вдруг понадобилось разморозить эти пакеты, то hold следует заменить на unhold. Пример:

1.        aptitude unhold php5 php5-cli php5-common


Установка 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).

P.S. Также этот способ вполне подходит и для Убунту, но с пересмотром используемых репозиториев.

Установка php 5.

2 на VDS с Debian Wheezy — Техническая поддержка — NetAngels

В данной статье рассмотрено создание альтернативной версии PHP для определенного сайта на Облачном VDS.

Предлагаемые нами Облачные VDS поставляются с образами на базе современных ОС Debian и Ubuntu. Это так же означает, что в состав этих VDS входит php версии 5.4. Как быть, если требуется php версии 5.2, ведь между 5.2 и 5.4 есть ряд несовместимостей и старые сайты на новой версии php могут не работать?

Кроме того, на тарифах хостинга мы предлагаем возможность разные сайты запускать на разных версиях php. Возможно ли сделать что-то подобное на Облачных VDS?

Да! Это возможно и в этом нет ничего сложного. Давайте разберемся как установить php 5.2 на VDS с Debian Wheezy на базе образа Nginx + Apache2 + PHP 5.4 (FastCGI) + MariaDB 5.5 + phpMyAdmin + sftp.

Прописываем дополнительные репозитории

Php версии 5.2 мы предлагаем брать из сборок, выполняемых нашими специалистами для серверов хостинга. Обратите внимание, что мы делаем сборки только для 64 битных систем, поэтому при создании VDS вам нужно правильно выбрать разрядность ОС.

Открываем в вашем любимом текстовом редакторе файл /etc/apt/sources.list в режиме суперпользователя:

$ sudo mcedit /etc/apt/sources.list

И дописываем в конец этого файла строки:

deb http://noc.netangels.ru/debian unstable main
deb http://noc.netangels.ru/debian wheezy main

Теперь обновим список пакетов, известных системе:

$ sudo apt-get update

Устанавливаем php 5.2

Список доступных пакетов, входящих в состав php 5.2 можно посмотреть по команде:

$ apt-cache search php5.2
php5.2.17 - server-side, HTML-embedded scripting language
php5.2.17-apc - Alternative PHP Cache
php5.2.17-eaccelerator - eAccelerator module for PHP
php5.2.17-ffmpeg - ffmpeg-php module for PHP
php5.2.17-geoip - Map IP address to geographic places
php5. 2.17-imagick - Imagick module for PHP
php5.2.17-memcache - memcache module for PHP
php5.2.17-timezonedb - Alternative PHP Cache
php5.2.17-xcache - Fast, stable PHP opcode cacher
php5.2.17-xdebug - The Xdebug extension helps you debugging your script

В минимальном варианте нам нужен только пакет php5.2.17. Установим его:

$ sudo apt-get install php5.2.17

Готово. Теперь cgi-вариант php 5.2 доступен по команде /usr/bin/php-cgi5.2.17, а cli-вариант по команде /usr/bin/php5.2.17

Создаем wrapper для php 5.2

Чтобы использовать php 5.2 на каком-либо из ваших сайтов, необходимо создать для него отдельный wrapper. Wrapper для запуска основного php (5.4) находится в файле /var/www/web/cgi-bin/php. Новый wrapper для 5.2 мы разместим рядом:

$ touch /var/www/web/cgi-bin/php5.2
$ chmod +x /var/www/web/cgi-bin/php5.2

Теперь откроем этот файл в текстовом редакторе:

$ mcedit /var/www/web/cgi-bin/php5.2

И запишем в него следующее содержимое:

#!/bin/sh
export PHPRC="/var/www/web/etc/php.ini"
exec /usr/bin/php-cgi5.2.17 -- "[email protected]"

Если вы обратили внимание на вторую строку, в ней мы задаем путь к файлу php.ini для нашего php 5.2. Давайте теперь создадим этот php.ini:

$ mkdir /var/www/web/etc
$ mcedit /var/www/web/etc/php.ini

Мы предлагаем внести в него следующие строки:

[PHP]
memory_limit = 64M
upload_max_filesize = 32M
post_max_size = 32M
max_execution_time = 180
session.save_path = "/tmp"
error_log = "/var/www/web/php-error.log"
realpath_cache_size = 4096K
magic_quotes_gpc = Off
cgi.fix_pathinfo = yes
auto_prepend_file = "/etc/php5/fix_docroot.php"
date.timezone = "UTC"
allow_url_fopen = On
extension_dir = "/usr/lib/php5.2.17/"
extension=pdo.so
extension=curl.so
extension=gd.so
extension=mcrypt.so
extension=mysqli. so
extension=mysql.so
extension=pdo_mysql.so

Разумеется, вы можете их поправить по вашему вкусу. Обратите внимание на строки с error_log, extension_dir, auto_prepend_file и cgi.fix_pathinfo. Мы не рекомендуем их менять. А так же на строку date.timezone, где необходимо прописать требуемую вам временную зону, в которой будет работать ваш сайт.

Подключаем php 5.2 к вашему сайту

Php 5.2 можно подключить как ко всем сайтам одновременно, так и к какому-то отдельному сайту, либо даже к папке внутри сайта. Делается это посредством прописывания директивы Action в файле .htaccess.

Например, у вас есть сайт mysite.ru. Он размещается в папке /var/www/web/sites/mysite.ru, как рекомендуется в Инструкции, и вы хотите, чтобы этот сайт работал на php 5.2. В этом случае в папке /var/www/web/sites/mysite.ru вам необходимо отредактировать файл .htaccess и прописать в него следующую строку:

Action application/x-httpd-php "/cgi-wrapper/php5.2"

Здесь название wrapper’а php5.2 — это название файла /var/www/web/cgi-bin/php5.2, который мы с вами создали ранее. Если вы хотите установить еще какую-то версию php, например 5.3 или 5.5, вам необходимо проделать все те же самые действия, только разместив wrapper для запуска другой версии php в другом файле внутри папки /var/www/web/cgi-bin, а файл настроек php.ini в другом файле в папке /var/www/web/etc в другом файле в папке /var/www/web/etc.

Тарифы на облачные VDS и VPS

Как установить расширение php 7 gd на debian 8 jessie?



Ответ на вопрос для Ubuntu , но не работает для Debian, потому что он еще не доступен. При поиске packages.debian.org доступны только пакеты для php 5 gd.

Каков предпочтительный способ установки php7. 0-gd в Debian 8 Джесси? Какой самый лучший неофициальный источник?

php linux debian gd
Поделиться Источник Hyperfocus1337     29 ноября 2016 в 14:46

2 ответа


  • PHP5-GD в тестировании Debian отсутствует зависимость libvpx1

    Я запускаю тестирование Debian на своем dev-сервере. К сожалению, мне приходится работать с mysqli (который не входит в php7) и php-gd одновременно. кошка /etc/issue Debian GNU/Linux stretch/sid apt-get установка php5-gd Reading package lists… Done Building dependency tree Reading state…

  • Используйте jessie (Debian) для кластера Kubernetes

    Я хочу установить gcsFUSE в своем кластере. Это проще сделать в Debian Джесси, согласно странице gcsFUSE . config-default.sh , который использует kube-up.sh , содержит следующее: NODE_OS_DISTRIBUTION=${KUBE_NODE_OS_DISTRIBUTION:-${KUBE_OS_DISTRIBUTION:-debian}} что устанавливает wheezy . На что…


Поделиться Hyperfocus1337     29 ноября 2016 в 14:56



0

Он доступен на версии Stretch. Это лучшее официальное РЕПО.

php7.0-gd:   Installed: (none)   Candidate:
 7.0.12-1   Version table:
      7.0.13-2 350
         350 http://ftp.fi.debian.org/debian sid/main i386 Packages
      7.0.12-1 500
         500 http://httpredir.debian.org/debian stretch/main i386 Packages

echo 'deb http://httpredir.debian.org/debian stretch main' >> /etc/apt/sources.list.d/stretch.list

Поделиться Ipor Sircer     29 ноября 2016 в 14:57


Похожие вопросы:


Как установить последнюю версию PHP 5. 4 на Debian 8 (Jessie)?

Я пытаюсь установить PHP на Debian 8 для проекта, над которым работаю. Проект требует PHP 5.4 и не может использовать ни одну из более поздних версий PHP (5.5 и 5.6). Всякий раз, когда я…


Debian 8 Jessie UEFI Install

Я устанавливаю Debian 8 Jessie на систему UEFI. Мне нужно настроить RAID, поэтому я использую ручное разбиение на разделы. Система прекрасно устанавливается в режиме совместимости BIOS, но там,…


Установка Apache Wave на Debian Jessie

Я хочу установить Apache/Google Wave на Debian Jessie. Я проверил репозиторий SVN, но построение с ant не удается, так как требуется Java 6. Debian Джесси предлагает только Java 7 Openjdk через…


PHP5-GD в тестировании Debian отсутствует зависимость libvpx1

Я запускаю тестирование Debian на своем dev-сервере. К сожалению, мне приходится работать с mysqli (который не входит в php7) и php-gd одновременно. кошка /etc/issue Debian GNU/Linux stretch/sid…


Используйте jessie (Debian) для кластера Kubernetes

Я хочу установить gcsFUSE в своем кластере. Это проще сделать в Debian Джесси, согласно странице gcsFUSE . config-default.sh , который использует kube-up.sh , содержит следующее:…


PHP 5.6 пакет для debian-8 (Джесси)

Я пишу сценарий ansible для настройки сервера в debian 8 , наше существующее приложение находится в debian 7 (Wheezy), а пакет php используется там wheezy-php56, версия PHP на новом сервере будет…


Как установить dotnet core sdk в Debian Jessie

У меня возникли проблемы при установке dotnet ограничителя основных SDK на моей коробке Debian Джесси. Вот руководство, которому я следовал https://docs.microsoft.com/en-us/…


установите php-gd Ext на Debian

Я не могу установить расширение php-gd на свой сервер. У меня есть php 7.2: PHP 7.2.10-1+0~20181001133426.7+jessie~1.gbpb6e829 (cli) (built: Oct 1 2018 13:50:53) ( NTS ) и debian 8 linux: Debian. ..


Как решить проблему, связанную с установкой Java 8 на Debian 8 (Jessie)?

Я Linux нуб, и я пытаюсь следить за различными статьями по установке Java 8 на Debian 8 (Джесси): https://www.vultr.com/документы/how-to-install-java-8-and-dcevm-on-debian-8-jessie…


Install LAMP Stack on Debian Jessie-пакеты не найдены

Я пытаюсь установить стек LAMP на свой сервер debian jessie. Я попытался установить LAMP следующим образом: apt install apache2 libapache2-mod-php7.0 php7.0 php7.0-gd php7.0-opcache php7.0-json…

Debian Wheezy потребуется обновить php 5.4 для 5.5



[решено]

У меня есть Debian Wheezy с установленным php 5.4.18. Я хотел обновить его до 5.5.x, но стандартная процедура не работает.

Это мой файл /etc/apt/sources.list:

# deb cdrom:[Debian GNU/Linux 7.0.0 _Wheezy_ - Official amd64 NETINST Binary-1 20130504-14:43]/ wheezy main
deb http://ftp.pl.debian.org/debian/ wheezy main
deb-src http://ftp.pl.debian.org/debian/ wheezy main

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

# wheezy-updates, previously known as 'volatile'
deb http://ftp.pl.debian.org/debian/ wheezy-updates main
deb-src http://ftp.pl.debian.org/debian/ wheezy-updates main

#php 5.5
deb http://packages.dotdeb.org wheezy-php55 all
deb-src http://packages.dotdeb.org wheezy-php55 all

Я обновил источники с помощью

apt-get update

и установил php5

apt-get install php5

но после перезапуска httpd у меня все еще есть старая версия php.

php -v

возвращается:

[email protected]:/# php -v
PHP 5.4.18 (cli) (built: Aug 19 2013 04:03:40)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    with Xdebug v2. 2.1, Copyright (c) 2002-2012, by Derick Rethans

когда я искал php

find / -name php5

Я вижу только что установленные файлы

[email protected]:/usr/bin# ls -l php*
lrwxrwxrwx 1 root root      21 Dec 11 00:15 php -> /etc/alternatives/php
-rwxr-xr-x 1 root root 8956912 Nov 17 02:37 php5
[email protected]:/usr/bin# ./php5 -v
PHP 5.5.19-1~dotdeb.1 (cli) (built: Nov 17 2014 01:24:08)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
    with Xdebug v2.2.6, Copyright (c) 2002-2014, by Derick Rethans
[email protected]:/usr/bin# ./php -v
PHP 5.5.19-1~dotdeb.1 (cli) (built: Nov 17 2014 01:24:08)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
    with Xdebug v2.2.6, Copyright (c) 2002-2014, by Derick Rethans

Мой phpinfo возвращает PHP версию 5.4.18

Что я делаю не так?

//edit: Я обновил его с помощью directadmin/custombuild

[email protected]:/usr/local/directadmin/custombuild# vim options.conf

я сменил линию:

php1_release=5.4

к

php1_release=5.5

а дальше:

[email protected]:/usr/local/directadmin/custombuild# ./build update_data
# [..]
[email protected]:/usr/local/directadmin/custombuild# ./build php d
# [..]

Теперь у меня есть php 5.5.19, и я могу использовать функцию password_hash() 😉

php debian
Поделиться Источник marcin110987     11 декабря 2014 в 00:42

1 ответ


  • эквивалент password_hash для php 5.4?

    Я разработал свой сайт с использованием XAMPP с установленным php 5. 5. Я просто понимаю, что у моего хоста есть только php 5.4 (пока не могу обновить до 5.5). Моя проблема в том, что я не могу использовать новую функцию php 5.5 password_hash() . Существует ли эквивалентный метод хеширования с…

  • Как установить последнюю версию PHP 5.4 на Debian 8 (Jessie)?

    Я пытаюсь установить PHP на Debian 8 для проекта, над которым работаю. Проект требует PHP 5.4 и не может использовать ни одну из более поздних версий PHP (5.5 и 5.6). Всякий раз, когда я устанавливаю php5 с помощью apt-get, он устанавливает последнюю доступную версию PHP 5.6. Как мне установить…



36

  1. Добавьте эти источники пакетов в свой файл sources.list: введите файл через

    sudo нано /etc/apt/sources.list

и добавьте эти строки в конце файла (щелкните правой кнопкой мыши пасты):

deb http://packages.dotdeb.org wheezy-php55 all
deb-src http://packages.dotdeb.org wheezy-php55 all

Сохранить и закрыть (CTRL-X, “y”, ENTER).

  1. Сделайте обновление:

    sudo apt-get обновление

Теперь вы получите сообщение об ошибке в последней строке хода обновления.

  1. Установить PHP сейчас невозможно, так как Debian просто выдал ошибку и сказал, что эти новые источники не проверены и бла-бла — бла, открытый ключ недоступен… Я нахожу этот процесс крайне неинтуитивным, и я действительно не знаю, почему так сложно обновить PHP, но что ж, так оно и есть…

Метод #1 последняя строка этого сообщения об ошибке содержит ключ, например “E9C74FEEA2098A6E”. Скопируйте этот ключ (отметьте строку мышью, как правило, копирует ее в буфер обмена) и выполните эти команды для проверки новых источников пакета (и поместите здесь ключ YOUR):

gpg --keyserver packages.dotdeb.org --recv-key  E9C74FEEA2098A6E
gpg -a --export E9C74FEEA2098A6E | sudo apt-key add -

Метод #2 (спасибо Петру за то, что он принес это!)

wget http://www. dotdeb.org/dotdeb.gpg
sudo apt-key add dotdeb.gpg
  1. Сделайте обновление еще раз:

    sudo apt-get обновление

  2. Установите последнюю версию PHP 5:

    sudo apt-get установка php5

  3. Проверьте установленную версию PHP 5 (phpinfo() все равно будет показывать старую версию PHP до перезапуска apache):

    php -в

Наконец, перезагрузите apache:

sudo service apache2 restart

Кстати, установить PHP 5.5 на Debian 6 (без компиляции исходного кода вручную) невозможно (насколько я знаю).

Поделиться Hassan Azimi     23 марта 2015 в 00:43


Похожие вопросы:


ezPublish не генерирует кэш CSS (несовместимость php 5.4?)

У нас есть сайт, который работает на хосте Debian Squeeze (PHP 5.3.3) и должен быть продублирован на Debian Wheezy (PHP 5.4.4). При новой установке мы сталкиваемся с проблемой, что кэш таблиц стилей…


Как сохранить PHP 5.5, но использовать 5.4 (CodeIgniter устарел)

У меня есть выделенный сервер, работающий с ISPConfig 3. Он попал под Debian 7 (официально PHP 5.4). Я обновил его до PHP 5.5. Однако я не понимал, что CodeIgniter нуждается в драйвере mysql для…


OS X Mavericks как обновить PHP 5.4 до 5.5+ последней версии?

Я бы попытался обновить свою версию php до последней версии 5.5+ Когда я смотрю через /usr/local/bin/php-v в консоли, я вижу версию 5.5+ , а с помощью php-v она говорит мне, что установлена версия…


эквивалент password_hash для php 5.4?

Я разработал свой сайт с использованием XAMPP с установленным php 5.5. Я просто понимаю, что у моего хоста есть только php 5.4 (пока не могу обновить до 5.5). Моя проблема в том, что я не могу…


Как установить последнюю версию PHP 5.4 на Debian 8 (Jessie)?

Я пытаюсь установить PHP на Debian 8 для проекта, над которым работаю. Проект требует PHP 5.4 и не может использовать ни одну из более поздних версий PHP (5.5 и 5.6). Всякий раз, когда я…


Обновление libpq5 (>= 9.4~beta3) на Debian Wheezy

Я хочу обновить свою версию postgresql, родную 9.1 с debian wheezy до последней версии 9.4. Я положил трубку deb http://apt.postgresql.org/pub/repos/apt/ wheezy-pgdg main в…


DEbian выжать обновить PHP 5.3 для PHP 5.5

На Debian (Squeeze) мне нужно перейти с PHP 5.3 на PHP 5.5. Я попробовал эти команды : apt-get обновление; apt-get установка php5; также добавление : echo deb http://packages.dotdeb.org squeeze all…


Измените php 5.4 на 5.5 на Hostgator

В настоящее время на композитора установки я получаю сообщение об ошибке нужно 5.5.9 но через 5.4 но на Hostgator в cpanal он установлен 5.5 На php -v я получаю PHP 5.4.45 На php —ini я получаю…


PHP 5.6 пакет для debian-8 (Джесси)

Я пишу сценарий ansible для настройки сервера в debian 8 , наше существующее приложение находится в debian 7 (Wheezy), а пакет php используется там wheezy-php56, версия PHP на новом сервере будет…


Debian-не удалось найти пакет php7.0

Теперь я использую PHP 5.4 на своем сервере Debian 7 Wheezy. Для самой новой версии Laravel я должен обновить ее до PHP 7.0. Поэтому я последовал небольшому учебнику о том, как обновить мою версию…

Как установить PHP 7 в Debian Linux 8.7 / 7.x [jessie / wheezy]

Я хотел использовать PHP 7 в Debian 8.x. Как установить и настроить PHP 7 на сервере Debian Linux 8.x? Как установить PHP 7 на VPS-сервер Debian Linux 7.x «wheezy», размещенный в облаке?

PHP 7 — это динамический язык сценариев для доставки приложений. Вы можете получить в 2 раза более высокую производительность и на 50% лучшее потребление памяти, чем PHP 5.6, что позволяет обслуживать больше одновременных пользователей без добавления какого-либо оборудования. Однако PHP 7 не входит в состав Debian 8.x стабильная версия. В этом руководстве вы узнаете об установке PHP 7 на сервер Debian 8.7 . Обратите внимание, что Debian 9.0 «Stretch» ​​по умолчанию будет включать PHP 7.

Связанный : Как установить PHP 7 в Ubuntu Linux 14.04 LTS

Шаги по установке PHP 7 в Debian 8.7

  1. Сначала удалите старый PHP 5.6
  2. Настроить dotdeb — дополнительный репозиторий для PHP 7
  3. Установить PHP 7
  4. Перенастроить веб-сервер
  5. Перезапустить веб-сервер

Чтобы указать свою версию Debian, введите:
$ lsb_release -a
Нет доступных модулей LSB.ii / {print $ 2} ') "
$ sudo apt-get --purge remove $ x

Примеры выходных данных:

Рис. 02: Удаление старых пакетов php 5.6

Шаг № 2: Настройте dotdeb

Dotdeb - это дополнительный репозиторий, содержащий самые свежие пакеты (например, PHP 7 и другие) для ваших серверов Debian. Он поддерживает как Debian 8.x «Jessie», так и Debian 7.x «Wheezy».

Конфигурация для Debian 8.x «Джесси»

Добавьте следующие две строки в /etc/apt/sources.list как пользователь root ::
$ sudo -s
# echo 'deb http: // packages.dotdeb.org jessie all '>> /etc/apt/sources.list
# echo' deb-src http://packages.dotdeb.org jessie all '>> /etc/apt/sources.list

Сохранить и закрыть файл. Вот мой обновленный файл:
$ cat /etc/apt/sources.list
Примеры выходных данных:

Рис. 03: Обновлен /etc/apt/sources.list для Debian 8.x «jessie».

Конфигурация для Debian 7.x «Wheezy»

Добавьте следующие две строки в /etc/apt/sources.list как пользователь root:
$ sudo -s
# echo 'deb http: // packages.dotdeb.org wheezy all '>> /etc/apt/sources. list
# echo' deb-src http://packages.dotdeb.org wheezy all '>> /etc/apt/sources.list

Сохранить и закройте файл.

По состоянию на 15 февраля 2017 г. приведенные выше инструкции для Debian 7.x «Wheezy» больше не работают. Используйте следующие инструкции для компиляции PHP 7 из исходного кода:
$ sudo apt-get install git
$ cd / tmp
$ git clone https://github.com/kasparsd/php-7-debian.git
$ cd php-7-debian /
$./build.sh

Чтобы скачать и скомпилировать все, потребуется некоторое время. В конце вы должны увидеть что-то вроде этого:

 Создание phar.php
Создание phar.phar
Пакет PEAR PHP_Archive не установлен: сгенерированный phar потребует включения расширения PHP phar.
инвертированныйregexiterator.inc
pharcommand.inc
directorytreeiterator.inc
clicommand.inc
directorygraphiterator.inc
phar.inc

Сборка завершена.
Не забудьте запустить make test.Установка общих расширений: / usr / local / php7 / lib / php / extensions / no-debug-non-zts-20160303 /
Установка двоичного кода PHP CLI: / usr / local / php7 / bin /
Установка справочной страницы PHP CLI: / usr / local / php7 / php / man / man1 /
Установка двоичного файла PHP FPM: / usr / local / php7 / sbin /
Установка конфигурации PHP FPM: / usr / local / php7 / etc /
Установка справочной страницы PHP FPM: / usr / local / php7 / php / man / man8 /
Установка страницы статуса PHP FPM: / usr / local / php7 / php / php / fpm /
Установка двоичного файла phpdbg: / usr / local / php7 / bin /
Установка справочной страницы phpdbg: / usr / local / php7 / php / man / man1 /
Установка двоичного файла PHP CGI: / usr / local / php7 / bin /
Установка страницы руководства PHP CGI: / usr / local / php7 / php / man / man1 /
Установка среды сборки: / usr / local / php7 / lib / php / build /
Установка файлов заголовков: / usr / local / php7 / include / php /
Установка вспомогательных программ: / usr / local / php7 / bin /
  программа: phpize
  программа: php-config
Установка страниц руководства: / usr / local / php7 / php / man / man1 /
  страница: phpize. 1
  страница: php-config.1
/ tmp / php-7-debian / php-src / build / shtool install -c ext / phar / phar.phar / usr / local / php7 / bin
ln -s -f phar.phar / usr / local / php7 / bin / phar
Установка заголовков PDO: / usr / local / php7 / include / php / ext / pdo / 

Для установки PHP 7 в Debian 7.x:
$ sudo ./install.sh
Примеры выходных данных:

 update-rc.d: использование последовательности загрузки на основе зависимостей 

Вы можете проверить версию PHP:
$ / usr / local / php7 / bin / php --version
PHP 7.1.1 (cli) (построено: 15 февраля 2017 г., 18:49:03) (NTS)
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
с Zend OPcache v7.1.1, Copyright (c) 1999-2017, Zend Technologies

Все файлы конфигурации PHP хранятся в / usr / local / php7:

 /usr/local/php7/lib/php.ini
/usr/local/php7/etc/php-fpm.conf
/usr/local/php7/etc/php-fpm.d/www.conf
/usr/local/php7/etc/conf.d/modules.ini 

Пока сценарий инициализации Debian добавлен в:

 / etc / init.d / php7-fpm 

См. Эту страницу для получения дополнительной информации об использовании PHP 7 в Debian 7.x. Остальные инструкции относятся только к Debian версии 8.x.

Шаг № 3: Получите и установите ключ GnuPG (только «jessie»)

Введите следующие команды
$ cd / tmp
$ wget https://www.dotdeb.org/dotdeb.gpg
$ sudo apt-key add dotdeb.gpg
$ rm dotdeb.gpg

Обновите базу данных apt, чтобы включить новые пакеты:
$ sudo apt-get update
Примеры выходных данных:

 Get: 1 http: // security.debian.org jessie / updates InRelease [63,1 kB]
Игнорировать http://ftp.us.debian.org стабильную версию InRelease
Получить: 2 http://packages.dotdeb.org jessie InRelease [9 840 B]
Нажмите http://ftp.debian.org jessie-updates InRelease. 
Нажмите http://ftp.us.debian.org стабильный Release.gpg.
Получить: 3 http://packages.dotdeb.org jessie / all Sources [30,0 kB]
Получите: 4 http: //ftp.debian.org jessie-updates / main amd64 Packages / DiffIndex [5 932 B]
Нажмите http://ftp.us.debian.org стабильный выпуск.
Получите: 5 http://security.debian.org jessie / updates / main пакетов amd64 [313 kB]
Нажмите http://ftp.debian.org jessie-updates / contrib amd64 Packages.
Нажмите http://ftp.us.debian.org стабильные / основные пакеты amd64.
Получить: 6 http://packages.dotdeb.org jessie / all amd64 Packages [111 kB]
Получить: 7 http: // ftp.debian.org jessie-updates / несвободные пакеты amd64 / DiffIndex [736 B]
Нажмите http://ftp.us.debian.org stable / contrib amd64 Packages.
Получить: 8 http://security.debian.org jessie / updates / contrib amd64 Пакеты [2 506 Б]
Нажмите http://ftp.debian.org jessie-updates / contrib Translation-en.
Нажмите http://ftp.us.debian.org стабильные / несвободные пакеты amd64.
Получить: 9 http://ftp.debian.org jessie-updates / main Translation-en / DiffIndex [2 704 B]
Получите: 10 http: // security.debian.org jessie / updates / non-free пакеты amd64 [14 B]
Получить: 11 http://security.debian.org jessie / updates / contrib Translation-en [1,211 B]
Нажмите http://ftp.us.debian.org stable / contrib Translation-en.
Получите: 12 http://ftp.debian.org jessie-updates / non-free Translation-en / DiffIndex [736 B]
Получить: 13 http://security.debian.org jessie / updates / main Translation-en [168 kB]
Нажмите http://ftp.us.debian.org stable / main Translation-en.
Получите: 14 http: // security.debian.org jessie / updates / non-free Translation-ru [14 B]
Нажмите http://ftp.us.debian.org стабильный / несвободный перевод-ru.
Игн http://packages.dotdeb.org jessie / all Translation-en_IN
Игн http://packages.dotdeb.org jessie / all Translation-en
Получено 708 КБ за 10 секунд (69,8 КБ / с)
Чтение списков пакетов ... Готово 

Шаг №4: Установите PHP 7 (только «jessie»)

На шаге 1 вы создали переменную оболочки с именем $ x. Чтобы установить эквивалент пакетов php5, введите:
$ y = "$ (sed 's / php5 / php7.0 / g' << $ x)"
$ echo Старое имя пакетов PHP5: $ x
Старое имя пакетов PHP5: libapache2-mod-php5 php-pear php5 php5-cgi php5-cli php5-common php5-fpm php5-gd php5-json php5-mysql php5-readline
$ echo Имя нового пакета PHP7 : $ y
Имя нового пакета PHP7: libapache2-mod-php7.0 php-pear php7.0 php7.0-cgi php7.0-cli php7.0-common php7.0-fpm php7.0-gd php7.0-json php7.0-mysql php7.0-readline
$ sudo apt-get install $ y

Примеры выходных данных:

Рис. .04: Установка PHP7 на мой сервер Debain 8.7

Как искать пакеты PHP7 (только «jessie»)?

$ apt-cache search php7.0 - \ *
$ apt-cache search php7.0 - \ * | grep -i mysql

Примеры выходных данных 1-й команды:

 libapache2-mod-php7.0 - серверный язык сценариев, встроенный в HTML (модуль Apache 2)
libphp7.0-embed - встроенный язык сценариев HTML (встроенная библиотека SAPI)
php-all-dev - пакет, зависящий от всех поддерживаемых пакетов разработки PHP
php7.0 - серверный язык сценариев со встроенным HTML (метапакет)
php7.0-apcu - Пользовательский кэш APC для PHP
php7.0-apcu-bc - модуль обратной совместимости APCu
php7.0-bcmath - модуль Bcmath для PHP
php7.0-bz2 - модуль bzip2 для PHP
php7.0-cgi - серверный язык сценариев со встроенным HTML (двоичный код CGI)
php7.0-cli - интерпретатор командной строки для языка сценариев PHP
php7.0-common - документация, примеры и общий модуль для PHP
php7.0-curl - модуль CURL для PHP
php7.0-dba - модуль DBA для PHP
php7.0-dbg - символы отладки для PHP7.0
php7.0-dev - Файлы для разработки модуля PHP7.0
php7.0-enchant - Модуль чар для PHP
php7.0-fpm - серверный язык сценариев со встроенным HTML (двоичный код FPM-CGI)
php7.0-gd - модуль GD для PHP
php7. 0-geoip - модуль GeoIP для PHP
php7.0-gmp - модуль GMP для PHP
php7.0-igbinary - сериализатор igbinary для PHP
php7.0-imagick - предоставляет оболочку для библиотеки ImageMagick.
php7.0-imap - модуль IMAP для PHP
php7.0-interbase - модуль Interbase для PHP
php7.0-intl - Модуль интернационализации для PHP
php7.0-json - модуль JSON для PHP
php7.0-ldap - модуль LDAP для PHP
php7.0-mbstring - модуль MBSTRING для PHP
php7.0-mcrypt - модуль libmcrypt для PHP
php7.0-memcached - модуль расширения memcached для PHP, использует libmemcached
php7.0-mongodb - драйвер MongoDB для PHP
php7.0-msgpack - сериализатор MessagePack для PHP
php7.0-mysql - модуль MySQL для PHP
php7.0-odbc - модуль ODBC для PHP
php7.0-opcache - модуль Zend OpCache для PHP
php7.0-pgsql - модуль PostgreSQL для PHP
php7.0-phpdbg - серверный язык сценариев, встроенный в HTML (двоичный файл PHPDBG)
php7.0-pspell - модуль pspell для PHP
php7.0-readline - модуль readline для PHP
php7.0-recode - модуль перекодирования для PHP
php7.0-redis - расширение PHP для взаимодействия с Redis
php7.0-snmp - модуль SNMP для PHP
php7.0-soap - модуль SOAP для PHP
php7.0-sqlite3 - модуль SQLite3 для PHP
php7.0-ssh3 - привязки для библиотеки libssh3
php7.0-sybase - модуль Sybase для PHP
php7.0-tidy - аккуратный модуль для PHP
php7.0-xdebug - Модуль Xdebug для PHP
php7.0-xml - модуль DOM, SimpleXML, WDDX, XML и XSL для PHP
php7.0-xmlrpc - модуль XMLRPC-EPI для PHP
php7.0-xsl - модуль XSL для PHP (пустышка)
php7.0-zip - Zip-модуль для PHP 

Как установить пакеты PHP7 по отдельности?

В качестве альтернативы вы можете просто установить необходимые пакеты PHP7.В этом примере установите php7, php-fpm, php7-mysql и php7-gd:
$ sudo apt-get install php7.0 php7.0-fpm php7.0-gd php7.0-mysql
Давайте проверим Версия PHP, запуск:
php -v
php --version

Шаг № 5: Перенастройте веб-сервер и php 7 (только «jessie»)

Ваши файлы конфигурации php7 расположены в каталоге /etc/php/7. 0/ следующим образом:

  • /etc/php/7.0/apache2/ - PHP 7 с Apache 2
  • /etc/php/7.0/fpm/ - PHP 7 fpm для Nginx / Lighttpd / Apache2 и других серверов.
  • /etc/php/7.0/mods-available/ - Весь файл конфигурации php ini для модулей PHP, таких как gd / mysql / memecached и других.

Вам необходимо отредактировать файлы и настроить веб-сервер в соответствии с вашими настройками.

Примеры: настройка веб-сервера Lighttpd для использования PHP 7

Отредактируйте файл /etc/lighttpd/conf-enabled/15-fastcgi-php.conf, введите:
$ sudo vi /etc/lighttpd/conf-enabled/15-fastcgi-php.conf
Добавить / отредактировать как следует (примечание обновлено / run / php / php7.0-fpm.sock путь):

 fastcgi.server + = (".php" =>
((
"bin-path" => "/ usr / bin / php-cgi",
"socket" => "/run/php/php7.0-fpm.sock",
"max-procs" => 1,
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "4",
"PHP_FCGI_MAX_REQUESTS" => "10000"
),
"bin-copy-environment" => (
«ПУТЬ», «ОБОЛОЧКА», «ПОЛЬЗОВАТЕЛЬ»
),
"broken-scriptfilename" => "включить"
))
) 

Сохраните и закройте файл. Перезагрузите веб-сервер, как описано в шаге №6.

Примеры: настройка веб-сервера Nginx для использования PHP 7

Отредактируйте файл / etc / nginx / sites-enabled / default, введите:
$ sudo vi / etc / nginx / sites-enabled / default
Сначала добавьте следующее вверху файла:

 # От восходящего к абстрактному бэкэнд-соединениям для PHP 7.(. +? \. php) (/.*) $;
        if (! -f $ document_root $ fastcgi_script_name) {
                возврат 404;
    }
# Это надежное решение проблемы безопасности информации о пути и работает с "cgi.fix_pathinfo = 1" в php.ini (по умолчанию) #
    включить / etc / nginx / fastcgi_params;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;
    fastcgi_pass myphpsevenbackend;
} 

Сохраните и закройте файл. Перезагрузите веб-сервер, как описано в шаге №6.

Примеры: настройка веб-сервера Apache 2 для использования PHP 7 (только «jessie»)

Для включения PHP 7.0 FPM в Apache2, введите:
$ sudo a2enmod proxy_fcgi setenvif
С учетом прокси зависимости для proxy_fcgi:
Включение прокси модуля.
Включение модуля proxy_fcgi.
Модуль setenvif уже включен
Для активации новой конфигурации необходимо запустить:
service apache2 restart

$ sudo a2enconf php7.0-fpm
Включение conf php7.0-fpm.
Чтобы активировать новую конфигурацию, вам необходимо запустить:
service apache2 reload

Перезапустить веб-сервер согласно шагу №6.

Шаг № 6: Перезагрузите веб-сервер

Если вы используете веб-сервер lighttpd, введите:
$ sudo systemctl restart lighttpd.service
Если вы используете веб-сервер Nginx, введите:
$ sudo systemctl restart nginx.service
Если вы используете Apache 2, введите:
$ sudo systemctl reload apache2.service

Проверьте свою установку

Создайте файл с именем test.php в своем DocumentRoot (например, / var / www / html / test.php):

  

Сохраните и закройте файл. Запустите веб-браузер и введите url:
http: //your-domain/test.php
ИЛИ
http://server.ip.address.here/test.php
Примеры выходных данных:

Рис.05: phpinfo () в действии, отображающая информацию о PHP 7

Как остановить / запустить / перезапустить php7.0-fpm (только «jessie»)?

Синтаксис следующий:
$ sudo systemctl stop php7.0-fpm.service
$ sudo systemctl start php7.0-fpm.service
$ sudo systemctl restart php7.0-fpm.service
$ sudo systemctl reload php7. 0-fpm.service

Примечание о файле конфигурации php7.0-fpm (только «jessie»)

  • /etc/php/7.0/fpm/php.ini - файл конфигурации PHP 7.
  • /etc/php/7.0/fpm/php-fpm.conf - Файл конфигурации PHP 7 FPM.
  • /etc/php/7.0/fpm/pool.d/www.conf - пул по умолчанию для PHP 7 FPM.Здесь вы можете определить пользователя / группу, путь запроса FastCGI, значения диспетчера процессов и дочерних элементов, файл ошибок php, ограничение памяти и многое другое.

Каждый раз, когда вы вносите изменения в любой из вышеуказанных файлов, перезагрузите / перезапустите php7.0-fpm.service, используя следующий синтаксис:
$ sudo systemctl reload php7.0-fpm.service

Итак, у вас есть PHP 7, активированный и успешно настроенный на сервере Debian Linux 7.x или 8.x.



Установите php7. * На Debian 7 Wheezy · GitHub

Установите php7.* в Debian 7 Wheezy · GitHub

Мгновенно делитесь кодом, заметками и фрагментами.

Установите php7. * В Debian 7 Wheezy

 apt-get install apache2-thread-dev 

Скачать исходный код PHP

 sudo apt-get install git
cd / tmp
git clone https: // github.com / kasparsd / php-7-debian.git
компакт-диск php-7-debian / 

Добавить APSX2 в Build.sh

Используйте команду vim build.sh для редактирования скрипта build.sh

Вам нужно добавить строку --with-apxs2 = / usr / bin / apxs2 \ в свою CONFIGURE_STRING и поместить make clean перед командой make.

Измененная часть файла

build.sh :
 CONFIGURE_STRING = "- prefix = / usr / local / php7 \
                  --enable-huge-code-pages \
                  --with-apxs2 = / usr / bin / apxs2 \
                  --with-config-file-scan-dir = / usr / local / php7 / etc / conf. г \
                  --enable-bcmath \
                  --with-bz2 \
                  --enable-calendar \
                  --enable-intl \
                  --enable-exif \
                  --enable-dba \
                  --enable-ftp \
                  --with-gettext \
                  --with-gd \
                  --with-jpeg-dir \
                  --enable-mbstring \
                  --with-mhash \
                  --enable-mysqlnd \
                  --with-mysqli \
                  --with-mysql-sock = да \
                  --with-pdo-mysql \
                  --with-openssl \
                  --enable-pcntl \
                  --with-pspell \
                  --enable-shmop \
                  --enable-soap \
                  --enable-сокеты \
                  --enable-sysvmsg \
                  --enable-sysvsem \
                  --enable-sysvshm \
                  --enable-wddx \
                  --with-zlib \
                  --enable-zip \
                  --with-readline \
                  --with-curl \
                  --enable-fpm \
                  --with-fpm-user = www-data \
                  --with-fpm-group = www-data "

./ настроить $ CONFIGURE_STRING

очистить
make -j "$ JOB_COUNT" 

Скомпилируйте и установите php

  1. Выполнить ./build.sh

  2. Для установки PHP 7 в Debian 7.x используйте команду sudo ./install.sh

Настроить альтернативы

 $ update-alternatives --install / usr / local / bin / php php / usr / bin / php5 10x
альтернативы обновления: использование / usr / bin / php5 для предоставления / usr / local / bin / php (php) в автоматическом режиме
$ update-alternatives --install / usr / local / bin / php php / usr / local / php7 / bin / php 20
альтернативы обновления: использование / usr / local / php7 / bin / php для предоставления / usr / local / bin / php (php) в автоматическом режиме 

Целевые альтернативы обычному контейнеру

Используйте / usr / local / bin / php вместо / usr / bin / php

 $ судо rm / usr / bin / php
$ update-alternatives --config php
update-alternatives: предупреждение: / etc / alternatives / php болтается; он будет обновлен лучшим выбором
Есть 2 варианта альтернативного php (предоставление / usr / local / bin / php). Статус приоритета пути выбора
-------------------------------------------------- ----------
  0 / usr / local / php7 / bin / php 20 автоматический режим
  1 / usr / bin / php5 10 ручной режим
Нажмите Enter, чтобы сохранить текущий выбор [*], или введите номер выбора: 0
$ sudo ln -s / usr / local / bin / php / usr / bin / php
$ php -v
PHP 7.2.12 (cli) (построено: 15 января 2019 г., 04:15:05) (ZTS)
Авторские права (c) 1997-2018 Группа PHP
Zend Engine v3.2.0, Авторское право (c) 1998-2018 Zend Technologies
    с Zend OPcache v7.2.12, Copyright (c) 1999-2018, Zend Technologies

$ sudo a2enmod php7
Включение модуля php7.
Чтобы активировать новую конфигурацию, вам необходимо запустить:
  перезапуск службы apache2
$ sudo a2dismod php5
Модуль php5 отключен.
Чтобы активировать новую конфигурацию, вам необходимо запустить:
  перезапуск службы apache2
$ sudo /etc/init.d/apache2 перезапуск 
Вы не можете выполнить это действие в настоящее время. Вы вошли в систему с другой вкладкой или окном.Перезагрузите, чтобы обновить сеанс. Вы вышли из системы на другой вкладке или в другом окне. Перезагрузите, чтобы обновить сеанс.

Debian wheezy обновить php с 5.4 до 5.5

[решено]

У меня Debian Wheezy с установленным php 5.4.18. Я хотел обновить его до 5.5.x, но стандартная процедура не работает.

Это мой файл /etc/apt/sources.list:

  # deb cdrom: [Debian GNU / Linux 7.0.0 _Wheezy_ - Официальный amd64 NETINST Binary-1 20130504-14: 43] / wheezy main
deb http: // ftp.pl.debian.org/debian/ wheezy main
deb-src http://ftp.pl.debian.org/debian/ wheezy main

deb http://security.debian.org/ wheezy / updates main
deb-src http://security.debian.org/ wheezy / updates main

# wheezy-updates, ранее известные как "изменчивые"
deb http://ftp.pl.debian.org/debian/ wheezy-updates main
deb-src http://ftp. pl.debian.org/debian/ wheezy-updates main

#php 5.5
deb http://packages.dotdeb.org wheezy-php55 все
deb-src http://packages.dotdeb.org wheezy-php55 все
  

Я обновил исходники с помощью

  apt-get update
  

и установлен php5

  apt-get install php5
  

, но после перезапуска httpd у меня все еще осталась старая версия php.

  php -v
  

возвращает:

  корень @ xxx: / # php -v
PHP 5.4.18 (cli) (построено: 19 августа 2013 г., 04:03:40)
Авторские права (c) 1997-2013 PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    с Xdebug v2.2.1, Copyright (c) 2002-2012, Дерик Ретанс
  

при поиске php

  find / -name php5
  

Я вижу только что установленные файлы

  корень @ xxx: / usr / bin # ls -l php *
lrwxrwxrwx 1 корень корень 21 декабря 11 00:15 php -> / etc / alternatives / php
-rwxr-xr-x 1 корневой корень 8956912 17 ноября 02:37 php5
корень @ xxx: / usr / bin #./ php5 -v
PHP 5.5.19-1 ~ dotdeb.1 (cli) (построено: 17 ноября 2014 г., 01:24:08)
Авторские права (c) 1997-2014 Группа PHP
Zend Engine v2.5.0, Авторское право (c) 1998-2014 Zend Technologies
    с Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, Zend Technologies
    с Xdebug v2.2.6, Copyright (c) 2002-2014, Дерик Ретанс
корень @ xxxx: / usr / bin # ./php -v
PHP 5.5.19-1 ~ dotdeb.1 (cli) (построено: 17 ноября 2014 г., 01:24:08)
Авторские права (c) 1997-2014 Группа PHP
Zend Engine v2.5.0, Авторское право (c) 1998-2014 Zend Technologies
    с Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, Zend Technologies
    с Xdebug v2.2.6, Copyright (c) 2002-2014, Дерик Ретанс
  

Мой phpinfo возвращает версию PHP 5.4.18

Что я делаю не так?

// редактировать: Обновил с помощью directadmin / custombuild

  корень @ xxxx: / usr / local / directadmin / custombuild # vim options. conf
  

я поменял строку:

  php1_release = 5.4
  

  php1_release = 5.5
  

и следующие:

  корень @ xxxx: / usr / local / directadmin / custombuild # ./build update_data
# [..]
корень @ xxxx: / usr / local / directadmin / custombuild # ./build php d
# [..]
  

Теперь у меня php 5.5.19, и я могу использовать функцию password_hash ();)

Как установить PHP 7.3 в Debian 9 / Debian 8

Это короткое руководство предназначено для установки PHP 7.3 в Debian 9 (Stretch) и Debian 8 (Jessie). В PHP 7.3 добавлен ряд исправлений ошибок, новые функции и возможности, а также ряд устаревших рекомендаций.

Для Ubuntu 18.04 / Ubuntu 16.04 используйте:

Как установить PHP 7.3 в Ubuntu 18.04 / Ubuntu 16.04

Если вы используете систему CentOS 7, следуйте руководству по ссылке ниже:

Как установить PHP 7.3 на CentOS 7

Fedora 29 / Fedora 28: Как установить PHP 7.3 на Fedora 29 / Fedora 28

Установить PHP 7.3 на Debian 9 / Debian 8

Следуйте инструкциям ниже, чтобы установить 7.3 на Debian 9 / Debian 8

Шаг 1: Обновите систему и установите add-apt-repository

Убедитесь, что ваша система обновлена:

 sudo apt update 
sudo apt upgrade -y

Если в вашей системе нет команды add-apt-repository, установите ее, используя наше руководство ниже:

Как установить add-apt-repository в Debian 9 / Ubuntu 18.04 / 16.04

Шаг 2: Добавьте репозиторий PPA PHP 7.3

После того, как станет доступна команда add-apt-repository , добавьте репозиторий PPA PHP 7.3

 sudo apt -y install lsb-release apt-transport-https ca- сертификаты 
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php / $ (lsb_release -sc) main "| sudo tee /etc/apt/sources.list. d/php7.3.list

Шаг 3: Установите PHP 7.3 в Debian 9 / Debian 8

Последний шаг - установка PHP 7.3 в Debian 9 / Debian 8. Сначала запустите команду apt update:

 $  sudo apt update  
Hit: 2 https://packages.sury.org/php stretch InRelease
Ign: 1 http: // cdn -fastly.deb.debian.org/debian stretch InRelease
Хит: 3 http://cdn-fastly.deb.debian.org/debian stretch Release
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
4 пакета могут быть обновлены. Запустите 'apt list --upgradable', чтобы увидеть их.

Затем установите PHP 7.3 в Debian 9 / Debian 8:

 sudo apt -y install php7.3 

Проверить установленную версию

 $  php -v  
PHP 7.3.0-2 + ​​ubuntu18.04.1 + deb.sury.org + 1 (cli) (построено: 17 декабря 2018 г., 09:22:47) (NTS)
Авторское право (c) 1997-2018 гг. PHP Group
Zend Engine v3.3.0-dev, Авторское право (c) 1998-2018 гг. Zend Technologies
с Zend OPcache v7.3.0-2 + ​​ubuntu18.04.1 + deb.sury.org + 1, Copyright (c) 1999-2018, Zend Technologies

Шаг 4: Установка расширений PHP 7.3

Установите PHP 7.3 с использованием синтаксиса

 sudo apt install php7.3-  

См. Пример ниже, в котором устанавливаются стандартные расширения PHP.

 sudo apt install php7.3-cli php7.3-fpm php7.3-json php7.3-pdo php7.3-mysql php7.3-zip php7.3-gd php7.3-mbstring php7.3-curl php7.3-xml php7.3-bcmath php7.3-json 

Чтобы установить модуль Apache для PHP, запустите:

 sudo apt install libapache2-mod-php7.3 

Подтвердите одно:

  $  политика apt php7.3-cli 
php7.3-cli:
Установлено: 7.3.0-2 + ​​ubuntu18.04.1 + deb.sury.org + 1
Кандидат: 7.3.0-2 + ​​ubuntu18.04.1 + deb.sury.org + 1
Таблица версий:
*** 7.3.0-2 + ​​ubuntu18.04.1 + deb.sury.org + 1 500
500 http://ppa. launchpad.net/ondrej/php/ubuntu bionic / main Пакеты amd64
100 / var / lib / dpkg / status

Поздравляем !!. Вы успешно установили PHP 7.3 в Debian 9 / Debian 8.

Полный курс веб-разработки:

Как установить / настроить последнюю версию PHP 5.5 в Debian Wheezy 7.0 / 7.1 / 7.2 (и как исправить ошибку ключа GPG)

Обратите внимание: это нормально работает. Но этот пакет также обновит ваш apache до версии 2.4, которая имеет другие файлы конфигурации, чем apache 2.2, и даже удалит такие вещи, как / etc / apache2 / sites-available / default при обновлении. Это может привести к потере ваших настроек apache (vhost, mod_rewrite и т. Д.). Помните об этом! Это дерьмо стоило мне целых выходных. 🙁
Это точно влияет только на обновления, а не на новые установки.

Обновление по этой проблеме: это известная ошибка, я буду обновлять этот пост…
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=716880

Есть хороший способ установить самую последнюю версию PHP 5.5 на Debian Wheezy 7.0 или 7.1 с помощью некоторых команд bash.

1. Добавьте эти источники пакетов в файл sources.list: введите файл через

 судо нано /etc/apt/sources.list 

и добавьте эти строки в конец файла (вставьте правой кнопкой мыши):

 deb http: // пакеты.dotdeb.org wheezy-php55 все
deb-src http://packages.dotdeb.org wheezy-php55 все 

Сохранить и закрыть (CTRL-X, «y», ENTER).

2. Сделайте обновление:

 sudo apt-get update 

Теперь вы получите сообщение об ошибке в последней строке процесса обновления.

3. Невозможно установить PHP сейчас, так как Debian только что выдал ошибку и сказал, что эти новые источники не проверены, и бла-бла, открытый ключ недоступен ... Я считаю этот процесс очень неинтуитивным и действительно не знаю почему так сложно обновить PHP, ну да вот как…

Метод № 1
Последняя строка этого сообщения об ошибке содержит ключ, например «E9C74FEEA2098A6E». Скопируйте этот ключ (отметьте строку мышью, как правило, копирует ее в буфер обмена) и запустите эти команды, чтобы проверить новые источники пакетов (и вставить сюда ВАШ ключ):

 gpg --keyserver packages.dotdeb.org --recv-key E9C74FEEA2098A6E
gpg -a --export E9C74FEEA2098A6E | sudo apt-key добавить - 

Метод №2 (спасибо Петру за это!)

 wget http://www.dotdeb.org/dotdeb.gpg
sudo apt-key добавить dotdeb.gpg 

4. Сделайте обновление еще раз:

 sudo apt-get update 

5.Установите последнюю версию PHP 5:

 sudo apt-get install php5 

6. Проверьте установленную версию PHP 5 (phpinfo () по-прежнему будет показывать старую версию PHP до перезапуска apache):

 php -v 

Наконец, перезапустите apache:

 sudo service apache2 перезапуск 

Между прочим, невозможно (насколько я знаю) установить PHP 5.5 на Debian 6 (без компиляции исходного кода вручную).

Кстати №2, я также написал руководство «Как установить последнюю версию PHP 5.5 на Ubuntu 12.04 LTS », который отличается от приведенного здесь.

Эта статья была написана довольно давно (8 лет), пожалуйста, имейте это в виду при использовании информации, написанной здесь. Ссылки, код и команды могут быть устаревшими или поврежденными.

Командная строка

- как установить интерфейс командной строки PHP с удобной интерактивной подсказкой в ​​Debian Wheezy?

Так же просто, как sudo apt install php7.2-cli

  [lucas: ~] 20s 130% sudo apt install php7.2-cli
Чтение списков пакетов ... Готово
Построение дерева зависимостей
Чтение информации о состоянии ... Готово
Следующие пакеты были установлены автоматически и больше не требуются:
  libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libavdevice57
  libegl-mesa0: i386 libegl1: i386 libgbm1: i386 libgsasl7 libkyotocabinet16v5
  libmailutils5 libmemcached11 libntlm0 libwayland-egl1-mesa: i386
  libwayland-server0: оболочка i386 mailutils-common mysql-client-core-5. 7
  ttf-dejavu-core webhttrack-common
Используйте sudo apt autoremove, чтобы удалить их.Предлагаемые пакеты:
  php-груша
Будут установлены следующие НОВЫЕ пакеты:
  php7.2-cli
0 обновлено, 1 установлено заново, 0 удалено и 0 не обновлено.
Необходимо получить 1,407 КБ архивов.
После этой операции будет использовано 4,956 КБ дополнительного дискового пространства.
Получить: 1 http://br.archive.ubuntu.com/ubuntu bionic-updates / main amd64 php7.2-cli amd64 7.2.24-0ubuntu0.18.04.4 [1,407 kB]
Получено 1,407 КБ за 0 с (6,666 КБ / с)
Выбор ранее невыбранного пакета php7.2-cli.
(Чтение базы данных ... На данный момент установлено 320578 файлов и каталогов.)
Подготовка к распаковке ... / php7.2-cli_7.2.24-0ubuntu0.18.04.4_amd64.deb ...
Распаковка php7.2-cli (7.2.24-0ubuntu0.18.04.4) ...
Настройка php7.2-cli (7.2.24-0ubuntu0.18.04.4) ...
альтернативы обновления: использование /usr/bin/php7.2 для предоставления / usr / bin / php (php) в автоматическом режиме
альтернативы обновления: использование /usr/bin/phar7.2 для предоставления / usr / bin / phar (phar) в автоматическом режиме
альтернативы обновления: использование /usr/bin/phar.phar7.2 для предоставления /usr/bin/phar.phar (phar.phar) в автоматическом режиме
Обработка триггеров для man-db (2.8.3-2ubuntu0.1) ...
  
  [lucas: ~]% php --version
PHP 7.2.24-0ubuntu0.18.04.4 (cli) (построено: 8 апреля 2020 г., 15:45:57) (NTS)
Авторские права (c) 1997-2018 Группа PHP
Zend Engine v3.2.0, Авторское право (c) 1998-2018 Zend Technologies
    с Zend OPcache v7.2.24-0ubuntu0.18.04.4, Copyright (c) 1999-2018, Zend Technologies
  
  [Лукас: ~]% php -a
Интерактивный режим включен

php>
  

Конечно, это только PHP CLI. Он позволяет запускать Composer и все остальное в интерфейсе командной строки.Он не включает веб-сервер, такой как Apache или Nginx.

Установите Memcached на Debian 7 'Wheezy'

Memcached - это бесплатная высокопроизводительная система кэширования объектов распределенной памяти с открытым исходным кодом. Он в основном используется для ускорения веб-сайтов путем кэширования данных и объектов в ОЗУ, чтобы уменьшить количество раз, когда необходимо читать внешний источник данных (например, базу данных или API). Он работает в Unix, Linux, Windows OS и Mac OS.

Он широко используется на большинстве популярных веб-сайтов, таких как YouTube, Reddit, Zynga, Facebook, Orange, Twitter, Wikipedia и т. Д.В этой статье давайте настроим Memcached на Debian 7 «Wheezy».

Предварительные требования

Перед установкой Memcached убедитесь, что на вашем сервере установлена ​​последняя версия.

Войдите в систему как пользователь root и выполните следующие действия:

  [адрес электронной почты защищен]: ~ # apt-get update 
  [адрес электронной почты защищен]: ~ # apt-get upgrade  

Кроме того, убедитесь, что на вашем сервере установлены следующие пакеты:

  [электронная почта защищена]: ~ # apt-get install mysql-server php5-mysql php5 php5-dev php-pear  

Установить Memcached

Выполните следующую команду для установки Memcached:

  [адрес электронной почты защищен]: ~ # apt-get install memcached  

Теперь тестовая служба Memcached запущена и работает с помощью следующей команды:

  [адрес электронной почты защищен]: ~ # ps -eaf | grep memcached
   никто 7148 1 0 15:09? 00:00:00 / usr / bin / memcached -m 64 -p 11211 -u никто -l 127.0.0.1
   корень 7186 3190 0 15:13 птс / 0 00:00:00 grep memcached  

А также проверьте статистику Memcached, используя следующую команду:

  [адрес электронной почты защищен]: ~ # echo "stats settings" | NC localhost 11211
   STAT макс. Байтов 67108864
   STAT maxconns 1024
   STAT tcpport 11211
   STAT udpport 11211
   STAT между 127. 0.0.1
   Подробная информация STAT 0
   STAT самый старый 0
   STAT выселения на
   STAT domain_socket NULL
   STAT umask 700
   STAT рост_фактор 1.25
   STAT размер_груза 48
   STAT число_потоков 4
   СТАТИСТИКА num_threads_per_udp 4
   STAT stat_key_prefix:
   STAT detail_enabled нет
   STAT reqs_per_event 20
   STAT cas_enabled да
   STAT tcp_backlog 1024
   STAT binding_protocol автосогласование
   STAT auth_enabled_sasl нет
   STAT item_size_max 1048576
   STAT maxconns_fast нет
   STAT hashpower_init 0
   STAT slab_reassign no
   STAT slab_automove no
   КОНЕЦ  

Настроить Memcached

Файл конфигурации Memcached по умолчанию в Debian - / etc / memcached.конф :

  [адрес электронной почты защищен]: ~ # nano /etc/memcached.conf  

Измените ОЗУ (например, 128 ) и другие значения в соответствии с вашими требованиями:

  [...]
   # Старт с ограничением в 64 мегабайта памяти. Это разумно, и демон по умолчанию
   # Обратите внимание, что демон вырастет до этого размера, но не начнет удерживать t $
   # память

   м 128
   # Порт подключения по умолчанию - 11211
   -п 11211
   [...]  

Рекомендации по настройке см. Здесь.

Сохраните и выйдите из файла конфигурации. Перезапустите службу Memcached, чтобы изменения вступили в силу:

  [электронная почта защищена]: ~ # /etc/init. d/memcached перезапуск  

Теперь еще раз проверьте статистику конфигурации Memcached, используя следующую команду:

  [адрес электронной почты защищен]: ~ # echo "stats settings" | NC localhost 11211
   макс. Байтов STAT 134217728
   STAT maxconns 1024
   STAT tcpport 11211
   STAT udpport 11211
   СТАТИСТИКА между 127.0.0.1
   [...]  

Установить расширение PHP-Memcached

Выполните следующую команду, чтобы начать установку расширения php-memcached:

  [адрес электронной почты защищен]: ~ # pecl install memcache  

Вы увидите такой результат:

   [...]
   Установка общих расширений: /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7/usr/lib/php5/20100525+lfs/
   работает: найти "/ tmp / pear / temp / pear-build-rootGAjS9y / install-memcache-2.2,7 дюйма | xargs ls -dils
   799913 4 drwxr-xr-x 3 root root 4096 27 июля 16:20 /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7
   799917 4 drwxr-xr-x 3 root root 4096 27 июля 16:20 /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7/usr
   799918 4 drwxr-xr-x 3 root root 4096 27 июля 16:20 /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7/usr/lib
   799919 4 drwxr-xr-x 3 root root 4096 27 июля 16:20 / tmp / pear / temp / pear-build-rootGAjS9y / install-memcache-2.2.7 / usr / lib / php5
   799920 4 drwxr-xr-x 2 root root 4096 27 июля 16:20 /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7/usr/lib/php5/20100525+lfs
   798969 236 -rwxr-xr-x 1 root root 241444 27 июля, 16:20 /tmp/pear/temp/pear-build-rootGAjS9y/install-memcache-2.2.7/usr/lib/php5/20100525+lfs/ memcache.so

   Процесс сборки успешно завершен
   Установка '/usr/lib/php5/20100525+lfs/memcache.
        
	

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Theme: Overlay by Kaira Extra Text
Cape Town, South Africa