Обновление PHP на Denwer. Причины для обновления php

26.04.2019

Если вы читаете этот пост, скорее всего, ваш сайт работает с древней версии 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 версии.

(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
Если возникнут какие-либо проблемы - откройте тикет из личного кабинета, и наши специалисты обязательно Вам помогут.

    Есть решение

    Здравствуйте, хочу установить плагин, но выдает ошибку: Требуется версия PHP >= 5.5, текущая версия 5.3.29. Как обновить php? Спасибо.

    Для этого обратитесь к вашему хостинг-провайдеру. Обычно есть переключатель версий.

    нужно поставить плагин сдэк https://www.webasyst.ru/store/plugin/shop/sdekint/, требует версию 5.6 php, как ее можно повысить?

    Подключаю Яндекс.Кассу. По непонятной причине у Яндекса плагин не в инсталлере, а "ставь сам". Попробовал по их инструкции - не получилось. Написал в техподдержку яндекса, они помогли, плагин поставили. Пробую провести тестовый платеж, выдает...

    Есть решение

    Обновился до 8 версии. Хостинг SWEB.Для брошенных корзин в CRON:для...public_html/cli.php shop cartsPluginCheck - 0 * * * *для...public_html/cli.php shop followup - */30 * * * *Заходил в настройки плагина до обновления - все ОК, CRON горит зеленым,...

    Проблема в том, что SWEB включает для сайта одну версию PHP, а в CRON работает более старая.В самом начале команды поменяйте /usr/bin/php на /usr/bin/php5.6То же советую сделать для всех заданий CRON.

    Установите в «Инсталлере» бесплатное приложение «Логи». В настройках приложения включите логирование ошибок PHP в файл php.log Добейтесь повторения ошибки, о которой требуется дополнительная информация. Обновите страницу доступных логов в...

    Добрый день.Свой интернет магазин перевел на FastCGI (Nginx + PHP-FPM) по этой инструкции, но есть вопрос.Почему если в ISPManager в настройках www домена включить кеширование, то ISPManager модифицирует конфиг, там параметр expires прописывается внизу...

    AJAX всегда возвращает "Сессия истекла. Обновите..."

    Отправляю POST запрос AJAX"ом через форму.$.ajax({ type: "POST", url: "/sendrequest.php", data: send_data, success: function(xhr){ console.debug(xhr); })постоянно в логе выводит следующее:Сессия...

    делаю вызов по тому адресу, что стоит в настройках робокассы: http://shop-script.local/payments.php/robokassa/?transaction_result=success&app_id=shop Что не правильно? Как обработать запрос из ПС? Empty module and/or action after parsing...

    Есть решение

    Собственно вопрос в заголовке.У кого-нибудь работает сайт на php 7.2 ?Как не пытался - либо пустая белая страница, либо известная всем ошибка(error) webasyst под номером "0" и надпись, свяжитесь с "App developer")

    Последнее обновление webasyst-фреймворка решило проблему.Всем спасибо!

    Dima

    Версия PHP

    Вот, например, о чем можно было бы поговорить. Требование обязательной совместимости с PHP 5.2 напрягает время от времени. Инсталлер же умеет проверять версию. Давайте уже принимать в магазин плагины/приложения для 5.3+ и 5.4+ хотя бы.Не то, чтобы мне...

    Здравствуйте.Вчера обновился до последней версии. После этого, попытался обновить дефолтную версию дизайна до 3.0. При обновлении выскочило вот такое предупреждение:Warning: Invalid theme description...

    +1 Принято

    Добрый день, тестируем вашу платформу для запускаинтернет-магазина. К сожалению, отметили следующую ошибку.Имеем: УТ Проф 10.3.45.4 (платформа: 8.2.19.130), модуль обмена 1С-Битрикс 6.5.0.1. Версия Webasyst 1.8.3.219, версия плагина...

    +1 Не принято

    Добрый день, подскажите, сайт переехал на новый хостинг, программы отличаются от старого например на старом был MySQL 5.1 сейчас MySQL 5.7, но на локальном я пробовал запускать модуль на версии MySQL 5.7 и всё ок. Но на новом выводим множество ошибок...

    +2 Не принято

    И данное выделение не сбрасывается после ухода из редактирования и попадает в рассылку.

    Есть решение

    Я создал простой плагин для приложения "Контакты", в котором пытался присосаться к хуку backend_contact_info (код для плагина взял с этой же страницы).Не знаю, что делаю не так, но плагин не работает. Посмотрите пожалуйста, в чём...

    Возможно, вы не очистили кеш Webasyst. Посмотрите также, появляются ли сообщения об ошибках в PHP-логе и в консоли браузера в момент возникновения проблемы.

    Настройки тем дизайна: обновлённый интерфейс и новые возможности

    Сегодня в ветке dev на GitHub опубликован предрелиз очередного обновления Фреймворка. В этой теме хотим рассказать и обсудить с вами изменения, которые коснулись тем дизайна. Что нового? Улучшено обновление темы Многоуровневая группировка...

    Как сделать копию статуса "Отправлен" с теми же функциями, но с другим названием "Отправлен Почтой России" и соответственно с отправкой письма клиенту с содержанием отличного от статуса "Отправлен".

    +11 Принято

    При установке/обновлении появляются 2 ошибки (по очереди)Deprecated: Function create_function() is deprecated in D:\Web\oceania\public_html\wa-installer\lib\classes\wainstaller.class.php on line 1498http://joxi.ru/YmENpLLs0PJDV2Лечится заменой на...

    Получение id по api

    Раз техподдержка послала сюда, решил все же написать:я еще раз перечитал информацию по api, но так и не нашел там решения своего вопроса. Работа с апи идет по ID товара, но как же мне найти этот айди если я знаю только наименование товара? Мне надо...

    Экспорт товаров в онлайн-сервис «Яндекс.Маркет» в Shop-Script осуществляется с помощью плагина, который можно установить с помощью приложения «Инсталлер». Плагин в магазине Webasyst: http://www.webasyst.ru/store/plugin/shop/yandexmarket/. 1....

    Есть решение

    Обновил на свою голову фреймворк на версию 1.7.12.164 и все, сайт больше не работает, какая-то проблема с правами доступа видимо потому что при обновлении ругается что не может создать файл, хотя никаких настроек никто нигде не трогалCannot write to...

    Почему-то на папки webasyst и shop стоял владельцем root, поэтому от нормального пользователя не работало. Фантастика.PS: cron насколько я знаю не настроен и не использовался.

Если вы хотите, чтобы ваш блог, чтобы нормально функционировать, идеально было бы рассмотреть вопрос об изменении или обновлении версии PHP. Новая версия PHP (PHP7) еще не является достаточно распространенным явлением, но это не задерживает, потому что эта новая версия приносит много нового и вполне вероятно, что эта версия требуется для всех хостинг WordPress.

Почему вы должны сделать обновление до PHP 7

Если вы используете WordPress сайт на сервере, вы, очевидно, установлен PHP. Так почему же обновление пока все, кажется, работает так хорошо?

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

  • Плагины и скрипты, которые установлены не совместимы с версией, которую вы используете.
  • Минимальные требования для запуска WordPress увеличится
  • В версии, которую вы используете, есть отверстия в безопасность и обновление включает патч
  • Вы должны двигаться в направлении стабильного выпуска
  • Вы хотите проверить другую версию локальной установки WordPress или тестовой среде
  • Найденные конфликты между версией вы используете и плагин, тема или сценарии, которые вы установили.

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

Также будут рассмотрены важные побочные эффекты...

Если вы хотите переключиться, все не обязательно розовые, к сожалению.

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

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

В некоторых случаях целые версии, такие как PHP 4 и более не поддерживается. Если вы используете плагин, тему или скрипты на вашем сайте, которые полагаются на устаревшем коде PHP и получить обновление до более новой версии PHP, обновление сделает устаревший код и поэтому он будет нарушать свой блог,

Несмотря на то, что это еще не так, то важно понимать, что изменения будут влиять на ваше знание. Таким образом, вы можете рассмотреть различные проблемы совместимости.

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

Проверка совместимости PHP

Вот несколько плагинов, которые можно использовать, чтобы проверить совместимость среды с обновленной версией PHP:

  • Проверка совместимости PHP - Этот плагин позволяет вам определить версию PHP и провести анализ по сравнению с текущей версией PHP на вашем хостинге. Он также создает отчет, чтобы рассказать вам, что исправить.
  • Ник PHP Compiler - Инструмент проверки PHP для проверки неопределенных функций и методов.
  • Error Log Monitor - Если есть ошибки, вы можете активировать журнал, чтобы отслеживать все ошибки, что поможет вам облегчить их устранение.

Вы также можете включить частный журнал ошибок вручную, используя " WP_DEBUG ». Вы также можете увидеть, что изменилось для каждой версии PHP до обновления:

Если вы обнаружите, что вы используете плагин, тему или сценарий, который не совместим с версией PHP вы хотите использовать, вы можете связаться с автором или разработчиком, чтобы помочь вам решить эту проблему. Если вам нужна рука, вы можете оставить свой комментарий в этой статье, я буду рад дать ответы.

Как изменить PHP версии

Резервное копирование версии выполняется автоматически при изменении версии.

Это все, что вы можете сделать, чтобы обновить окружающую среду. Если у вас есть вопросы, не стесняйтесь оставить комментарий.

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

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


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

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

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

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