Как изменить или обновить версию PHP для WordPress. Обновление PHP на Denwer

Все, кто пользуется ДНВР, так называемым джентльменским набором веб-разработчика, знают, что проблема обновления пакета встаёт очень редко и не доставляет особенных хлопот. Очень важный момент при работе с Denwer - обновить PHP. Обновлять его нужно вовремя и до актуальной версии, что, кстати, совсем несложно. Однако именно с этим чаще всего возникают проблемы у пользователей этого инструмента. Предлагаем вам пошаговую инструкцию, которая подробно расскажет, как обновить PHP на Denwer.

При обновлении php на Denwer надо четко следовать инструкции.


Подчищаем ошибки

Денвер не работает!

  • Первым делом проверяем, ту ли версию PHP мы скачали. Обращаем ваше внимание: необходима версия 5! Денвер обновлялся достаточно давно, поэтому 7-я версия работать на нём просто не будет.
  • Также загвоздка может быть с Apache. Его версия для Денвера - 2.2, однако сейчас для успешной работы с PHP требуется 2.4. Это решается индивидуальными настройками на вашем компьютере.
  • И ещё один простой способ для коррекции работы программы: удаляем Денвер и устанавливаем его заново. Как ни удивительно, но в большинстве случаев это помогает. И дело вовсе не в мистике, просто иногда этот инструмент оказывается банально «перенастроен»: слишком много изменений в него можно внести вручную и в хаотичном порядке. Только не забудьте перед удалением сохранить в резервную папку все файлы, хранящиеся в главной папке - собственно, файлы сайтов.

Если забыли о…


(VPS, VDS, DS) под управлением самой популярной операционной системы для веб серверов, ОС CentOS.

Предостережения. Сразу хотим предупредить Вас, многие популярные движки требовательны к версиям PHP и набору модулей. Поэтому, перед обновлением PHP на сервере, проверьте совместимость Ваших CMS с новой версией PHP. Обычно эту информацию можно найти на официальных сайтах разработчиков. Некоторые модули могут быть недоступны на более новых версиях PHP. Например Zend Optimizer работает только с версиями php до 5.2, на версии PHP 5.3 используется его аналог, Zend Guard Loader. При этом, если скрипт закодирован с помощью Zend Optimizer, Zend Guard этот скрипт обработать не сможет.

Установка SSH клиента. Вам понадобится SSH доступ к серверу и SSH клиент. Если на Вашем ПК установлена операционная система Linux - SSH клиент Вам не нужен, можете использовать для подключения по SSH стандартный Linux терминал. Владельцам компьютеров с ОС Windows мы рекомендуем использовать SSH\Telnet клиент Putty. Данная программа бесплатна и проста в использовании.

Скачать последнюю версию с официального сайта можете по ссылке:

https://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
Подключитесь к Вашему серверу по SSH от имени суперпользователя root или другого пользователя с аналогичными привилегиями. Проверка текущих версий. В первую очередь проверим текущую версию PHP и список модулей. Чтобы узнать версию PHP используйте команду: Чтобы просмотреть список модулей, используйте следующую команду: Обновление PHP. Для обновления версии PHP, подключитесь к серверу по SSH и используйте следующую команду: Возможно Вам повезет, и yum сразу предложит Вам обновление до нужно версии PHP, но это вряд ли. Скорее всего Вы получите такой ответ:
"No packages marked for update"
Значит нужно добавить репозиторий. Репозиторий - специальное удаленное хранилище, из которого будет установлен пакет. Рассмотрим процесс добавления репозитория и обновления PHP более подробно. Для обновления PHP используйте репозитории epel и remi. Эти репозитории проверенны годами верной работы администраторам виртуальных и выделенных серверов на Unix подобных системах. Из сторонних репозиториев устанавливать пакеты не рекомендуем. Выполнить установку репозитория epel можно такой командой: Чтобы добавить репозиторий remi на CentOS 6 используйте следующие команды:
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6*.rpm
Для установки репозитория remi на CentOS 7 используйте такие команды:
wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
sudo rpm -Uvh remi-release-7*.rpm
Теперь можно обновить PHP. Обновите PHP до версии 5.4 с помощью команды:
yum update - -enablerepo=remi php
Если Вам нужно обновление до версии 5.5, используйте команду:
yum update --enablerepo=remi-php55 php
Если требуется обновление до версии 5.6, используйте команду:
yum update --enablerepo=remi-php56 php
Для обновления до новой ветки PHP 7 используйте такую команду:
yum update --enablerepo=remi-php70
После обновления, обязательно перезагрузите веб сервер. Для этого используйте команду: Если на Вашем сервере нет httpd - скорее всего работает связка Nginx + PHP-FPM, тогда перезагрузите PHP-FPM: Проверьте версию PHP с помощью команды: Также рекомендуем сразу установить пакет популярных расширений PHP. Используйте для этого одну из команд (в зависимости от версии PHP) :
yum install --enablerepo=remi php-{mysql,mcrypt,mbstring,gd,xml}
yum update --enablerepo=remi-php55 php-{mysql,mcrypt,mbstring,gd,xml}
yum update --enablerepo=remi-php56 php-{mysql,mcrypt,mbstring,gd,xml}
yum update --enablerepo=remi-php70 php-{mysql,mcrypt,mbstring,gd,xml}
После установки обновлений,еще раз перезагрузите веб сервер. Для этого используйте команду: Если на Вашем сервере нет httpd - скорее всего работает связка Nginx + PHP-FPM, тогда перезагрузите PHP-FPM:

Обновление PHP до 7.2 на CentOS 7

Для обновления PHP до версии 7.2 необходимо выполнить следующие команды:

rpm -ivh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install epel-release yum-utils
yum-config-manager --enable remi-php72
yum install php php-xml php-soap php-xmlrpc php-mbstring php-json php-gd php-mcrypt php-common php-fpm php-pdo php-mysqlnd php-imap php-embedded php-ldap php-odbc php-zip php-fileinfo php-process php-opcache
Если возникнут какие-либо проблемы - откройте тикет из личного кабинета, и наши специалисты обязательно Вам помогут.

3 декабря 2015 года состоялся релиз финальной PHP версии 7.0.0. Новая версия содержит в себе множество нововведений, к примеру, увеличена производительность, добавлены анонимные классы, строгая типизация, безопасный рандом и многое другое. В этой статье мы расскажем, как можно быстро обновить веб-сервер Apache или Nginx c любой версии PHP 5 до PHP 7.

Требования

У вас должна быть установлена версия PHP 5 на операционной системе Ubuntu 14.04, и вы должны использовать либо модуль mod_php в случае веб-сервера Apache, либо PHP-FPM, если у вас веб-сервер Nginx. Также у вас должен быть создан пользователь, который не имеет root-прав, но может выполнять команды sudo для того, чтобы выполнять административные задачи.

Добавление PPA для пакетов PHP7

Персональные архивы пакетов (PPA) представляют собой пакеты, которые обычно создаются и распространяются в репозиториях, специальных серверах-хранилищах для таких файлов. launchpad.net - сервис, созданный для поддержки и развития подобных свободных проектов. Именно там вы можете найти бета-версии, модифицированные сборки и ретроподдержки для более старых версий операционной системы.

Ondřej Surý отвечает за пакеты PHP для Debian, и именно у него вы можете найти PPA для PHP 7.0 на Ubuntu . Поэтому в первую очередь авторизуйтесь в системе и добавьте PPA от Ondřej Surý в APT-утилиты операционной системы:

$ sudo add-apt-repository ppa:ondrej/php

После того, как на экране высветилось описание пакета PPA, нажмите Enter.

Примечание.
Если в вашей локали установлена не UTF-8 кодировка, тогда при установке PPA может возникнуть ошибка, связанная с обработкой букв имени автора. В качестве временного решения вы можете установить language-pack-en-base, и, когда локали сгенерированы, заместить настройки локали системы в то время, как добавляется PPA:

$ sudo apt-get install -y language-pack-en-base $ sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php

После того, как пакет PPA установлен, вам необходимо обновить кэш локального пакета. Это нужно для того, чтобы локальный пакет включал содержание PPA:

$ sudo apt-get update

После того, как вы получили доступ к пакетам PHP 7.0, можно заменить уже установленную версию PHP.

Обновление модуля mod_php на Apache

В этом разделе вы найдете информацию о том, как обновить систему, использующую в качестве веб-сервера Apache и модуль mod_php для выполнения PHP-кода.
Для начала вам необходимо установить новые пакеты. Благодаря этому будут обновлены все важные PHP-пакеты, за исключением php5-mysql, который будет удален.

$ sudo apt-get install php7.0

Примечание.
Если вы делали какие-то значительные изменения в файлах конфигурации в /etc/php5/, они будут все еще доступны. Конфигурационные файлы для PHP 7 лежат в /etc/php/7.0.

Всем пользователям MySQL необходимо повторно добавить обновленные двухсторонние биндинги PHP MySQL. Обязательно убедитесь в том, что вы это сделали:

Обновление PHP-FPM на Nginx

Инструкции, которые вы найдете в этом разделе, подойдут тем, кто использует в качестве веб-сервера Nginx, а PHP-код выполняется через менеджер процессов PHP-FPM.
Для начала установите новый пакет PHP-FPM и его зависимости:

$ sudo apt-get install php7.0-fpm

Для завершения установки вам нужно нажать Enter.

Всем пользователям MySQL необходимо убедиться, что они повторно добавили обновленные двухсторонние биндинги PHP MySQL:

$ sudo apt-get install php7.0-mysql

Примечание.
Если вы делали какие-то значительные изменения в файлах конфигурации в /etc/php5/, они будут все еще доступны. Конфигурационные файлы для PHP 7 вы можете найти в /etc/php/7.0.

Обновление пути сокета у веб-серверов Nginx

Nginx использует сокет домена Unix для того, чтобы взаимодействовать с PHP-FPM. По умолчанию установленная версия PHP 7 будет использовать тот путь, который ей указали сокеты:

PHP 5: /var/run/php5-fpm.sock
PHP 7: /var/run/php/php7.0-fpm.sock

Откройте конфигурационный файл сайта default, используя nano (или другой редактор на ваше усмотрение):

$ sudo nano /etc/nginx/sites-enabled/default

Ваша конфигурация может отличаться от написанной. Ищите блок, начинающийся с location ~ \.php$ {, и строчку, которая выглядит таким образом:

Fastcgi_pass unix:/var/run/php5-fpm.sock;

Измените ее на:

Unix:/var/run/php/php7.0-fpm.sock

После этого вам нужно выйти, а затем сохранить файл. Если вы работаете в редакторе nano, то просто нажмите Ctrl-X для выхода, y для подтверждения и Enter для того, чтобы подтвердить перезапись имени файла.
Повторите этот процесс для всех остальных виртуальных серверов, расположенных в /etc/nginx/sites-enabled, которым необходимо поддерживать PHP.

$ sudo service nginx restart

Тестирование PHP

После того, как вы настроили веб-сервер и установили новые пакеты, необходимо проверить, что PHP работает. Для начала проверьте, какая версия PHP установлена, используя команду:

На экране высветится сообщение с необходимой информацией.

Создание тестового файла возможно и в корневом каталоге документов веб-сервера. В зависимости от того, какой у вас веб-сервер и конфигурация, это может быть один из следующих вариантов:

  • /var/www/html
  • /var/www/
  • /usr/share/nginx/html

Используя редактор nano, откройте файл info.php в корневом каталоге документов. По умолчанию в Apache этот путь:

$ sudo nano /var/www/html/info.php

В Nginx этот путь выглядит так:

$ sudo nano /usr/share/nginx/html/info.php

Скопируйте туда следующий код:

Выйдите из редактора, сохранив info.php. Теперь загрузите в своем браузере следующую страницу:

http://домен_или_IP/info.php

На экране должна высветиться версия PHP, а также данные, касающиеся конфигурации для PHP 7. После того, как вы все проверите, советуем удалить info.php:

$ sudo rm /var/www/html/info.php

Если вы читаете этот пост, скорее всего, ваш сайт работает с древней версии PHP. Вы не одиноки, версия PHP 5.3 используется на 31,1% всех сайтов и 5.4 на 29% сайтов. Обе эти версии PHP уже достигли конца своей жизни и больше не будет поддерживаться. А это значит, что на вашем сайте потенциально возможны большие угрозы безопасности.

Joomla является одной из самых мощных и безопасных CMS на планете. Но одной лишь Joomla не достаточно, чтобы защитить ваш сайт, если вы используете старую версию PHP. Люди часто критикуют и обвиняют CMS, когда их сайт взломан, но они могут и не понять, что это могло произойти из-за проблемы на сервере.

В Joomla недавно подняли требования к версии PHP до PHP 5.6 или 7. Но CMS также может работать на PHP 5.3.10+.

PHP 7 уже выпустили, и это прорыв истории в PHP. Поэтому давно пора обновить серверную версию PHP до PHP 7 или, по крайней мере, до 5.6+. В этом уроке я собираюсь показать вам, как вы можете это сделать.

**Важно: если вы решили обновиться до PHP 7, убедитесь, что версия Joomla на вашем сайте 3.5+ для того, чтобы система работала должным образом.

Виртуальный хостинг или VPS

Самый простой способ

Попросите своего хостера обновить PHP версию хостинга. Скорее всего, он сделает это бесплатно, и это самый простой способ обновиться. Однако, если они отказались или не в состоянии сделать это, то пришло время перейти к надежному поставщику услуг.

Обновить PHP через cPanel

Большинство хостингов предоставляют cPanel для самостоятельного управления хостингом. CPanel позволят вам обновить версию PHP через свой интерфейс. Найдите диспетчер версии PHP или варианты конфигурации PHP и щелкните по нему.

Выберите версию PHP 5.6+ или 7 и сохраните изменения.

Обновление через.htaccess файл

Если перечисленные выше способы не работают для вас, то ваш лучший выбор - обновить версию PHP с использованием файла.htaccess.

Перейдите в cPanel, "Диспетчер файлов" и выберите корень сайта. Это можно сделать и с помощью FTP. В корневом каталоге создайте новый файл (или отредактируйте существующий) .htaccess и добавьте следующую строку:

Чтобы перейти на PHP 5.6

AddHandler application/x-httpd-php56 .php .php5 .php4 .php3

Чтобы перейти на PHP 7.0

AddHandler application/x-httpd-php70 .php .php5 .php4 .php3

Эта настройка применяется рекурсивно для всех вложенных папок. В случае, если вы хотели бы иметь другую версию PHP в подкаталоге, создайте в нем новый.htaccess файл с директивой для нужной версии PHP.

VPS или выделенный сервер

Если вы используете Ubuntu 14.04 или ниже Вы можете обновиться с помощью этой команды:

Sudo apt-get upgrade sudo apt-get dist-upgrade

Давайте добавим PHP репозиторий в наш список. Пожалуйста, выбрите соответствующую версию.

Sudo apt-add-repository ppa:ondrej/php5-5.6

Sudo apt-add-repository ppa:ondrej/php

Обновление до версии PHP 5.6

sudo apt-get install php5

Ваша версия PHP теперь повышена и необходима просто перезагрузить сервер.

Apache: sudo service apache2 restart

Nginx: sudo service nginx restart

Обновление до версии PHP 7

Обновление до версии PHP 7 требует немного дополнительной работы. Зависит от вашего веб-сервера для выполнения этой команды.

Обновление mod_php в Apache

Во-первых, необходимо установить новые пакеты (packages). Это обновит все важные файлы PHP, за исключением пакета PHP5-MySQL, которая будет удалена.

Sudo apt-get install php7.0

Если вы используете MySQL, убедитесь в том, чтобы повторно добавить обновленные версии PHP и MySQL привязки:

Обновление PHP-FPM в nginx

А теперь поговорим о процессе обновления системы с помощью nginx в качестве веб-сервера и PHP-FPM для выполнения PHP-кода.

Во-первых, установите новый PHP-FPM пакет и его зависимости:

Sudo apt-get install php7.0-fpm

После этого вам будет предложено продолжить. Нажмите клавишу Enter, чтобы завершить установку. Если вы используете MySQL, убедитесь, что повторно установили PHP привязки к MySQL:

Sudo apt-get install php7.0-mysql

Примечание: если вы внесли существенные изменения в файлы конфигурации в /etc/PHP5, то эти файлы останутся на месте, и на них можно ссылаться. Конфигурационные файлы для PHP 7.0 будут находиться в /etc/PHP/7.0.

Теперь обновите ваш сервер nginx блок с новым PHP 7.0.

Fastcgi_pass unix:/run/php/php7.0-fpm.sock;

Сохраните и закройте файл. Теперь остается просто перезагрузиться.

Sudo service nginx restart

Проверить вашу версию PHP в админ-панели Joomla, откройте Система > Информация о системе. Вы сможете увидеть там номер вашей PHP версии.

Это будет небольшая заметка для пользователей шаблоном AB-Inspiraiton

Если у вас блог на хостинге TimeWeb и вы уже давно открыли там аккаунт, то скорее всего у вас установлена устаревшая версию php 5.3. Ее нужно обязательно заменить на одну из новых 5.4, 5.5, или 5.6

Сделать это не сложно. Хостинг подгружает новые версии php но сам их не активирует. Это должны сделать вы, как владелец аккаунта.

1. При обновлении шаблона вы увидите ошибку 500, вместо блога.

Как поменять версию php в Timeweb (в новой панеле управления)

1. Зайдите на хостинг под своим логином и паролем, перейдите в в раздел «Сайты»
2. Напротив домена нажмите на иконку «Шестеренки»
3. Во всплывшем окне выберите из списка версию php
4. Сохраните настройки

Работа с тех поддержкой хостинга:

1. Если вы не можете поменять php на хостинге, напишите в тех поддержку хостинга следующее письмо (в письме укажите адрес вашего сайта):

Тема письма: Как заменить php на версию 5.4

Добрый день,
На сайте мне нужно обновить шаблон WordPress. Разработчик шаблона рекомендует установить версию php 5.4 или выше.
Как поменять версию php на хостинге?
Заранее спасибо за помощь.
С уважением,

2. Если вы поменяли версию php, но проблема осталась (скорее всего это сбой на хостинге). Напишите в тех поддержку хостинга следующее письмо (в письме укажите адрес вашего сайта):

Тема письма: Не меняется версия php!

Добрый день,
Обновляю шаблон для WordPress по инструкции разработчика. Согласно инструкции для корректной работы шаблона необходима php 5.4 или выше. Я выполнил условия и переключил php на версию 5.4 в панеле управления хостинга. После обновления шаблона появилась ошибка 500. Разработчик шаблона, советует обратиться в тех поддержку хостинга, т.к. данная ошибка свидетельствует о том, что текущая версия php все еще ниже требуемой (т.е. ниже версии 5.4). Я попробовал поменять на версию 5.5 и на 5.6 — это также не решило проблемы.
Сайт
Заранее спасибо за помощь.
С уважением,

Добавление по поводу хостинга Timeweb:

Было уже 2 случая, когда на хостинге Timeweb поменяли php, но по факту все еще оставалось версия 5.3. Из-за этого блог также выдавал ошибку 500. В итоге мне пришлось самой позвонить в Timeweb, чтобы выяснить причину подобной ошибки.

В общем ситуация такая. На некоторых серверах Timeweb по умолчанию прописывается в файле.htaccess версия php 5.3. Это правило в файле.htaccess важнее настройки на сервере. Оно как бы перезаписывает правила сервера. Поэтому даже поменяв php на другую версию, все равно использовалась 5.3.

Чтобы это исправить нужно сделать следующе.