Установка 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: 1000Package: *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 -- "$@"
Если вы обратили внимание на вторую строку, в ней мы задаем путь к файлу 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
возвращается:
root@xxx:/# 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
Я вижу только что установленные файлы
root@xxx:/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
root@xxx:/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
root@xxxx:/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
root@xxxx:/usr/local/directadmin/custombuild# vim options.conf
я сменил линию:
php1_release=5.4
к
php1_release=5.5
а дальше:
root@xxxx:/usr/local/directadmin/custombuild# ./build update_data
# [..]
root@xxxx:/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
Добавьте эти источники пакетов в свой файл 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).
Сделайте обновление:
sudo apt-get обновление
Теперь вы получите сообщение об ошибке в последней строке хода обновления.
- Установить 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
Сделайте обновление еще раз:
sudo apt-get обновление
Установите последнюю версию PHP 5:
sudo apt-get установка php5
Проверьте установленную версию 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
- Сначала удалите старый PHP 5.6
- Настроить dotdeb — дополнительный репозиторий для PHP 7
- Установить PHP 7
- Перенастроить веб-сервер
- Перезапустить веб-сервер
Чтобы указать свою версию 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):
Php / * test.php * / phpinfo (); ?>
Сохраните и закройте файл. Запустите веб-браузер и введите 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
Выполнить
./build.sh
Для установки 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.