Настраиваем сервер для LiveStreet. Приложение A. Переход на PHP 5.4
Предыдущие части:
PHP 5.3 Reaching End of Life
Замечание: PHP 5.4 уже 20+ релизов пережило, так что «сырым» продуктом его назвать нельзя. Кроме того там куча оптимизаций и фиксов непосредственно влияющих на потребление памяти и общую производительность. Так что даже без учёта того что PHP 5.3 мёртв — смысл в переходе есть и большой.
Для начала останавливаем apache, чтобы не мешался пока суть, да дело:
Сносим всё PHP которое установлено:
Лезем в конфигурационный файл /etс/apt/sources.list стираем там 2 старые строки посвященные dotdeb.org и вместо них вписываем такие:
Обновляемся:
И ставим всё новое:
Замечания:
Если вы установили новые конфиги, то вносим в них изменения упомянутые в «Часть VI.PHP». Номера строк в конфигах будут другие. На всякий случай перечисляю директивы, на которые необходимо обратить внимание.
/etc/php5/fpm/php.ini:
/etc/php5/fpm/pool.d/www.conf:
/etc/php5/cli/php.ini:
Теперь правим конфигурации apache (потому что этинехорошие люди, по неведомым мне причинам, переименовали /usr/sbin/php-fpm в /usr/sbin/php5-fpm ). Итак, в /etc/apache2/sites-available/superls.ru находим и правим две строки:
Было:
Cтало:
Далее в /etc/apache2/mods-available/fastcgi.conf меняем строку:
Было:
Cтало:
Cтартуем всё:
И всё. Должно работать :)
- Часть I. Введение, хостинг и PuTTY.
- Часть II. Vim, файловая система, hostname.
- Часть III. Некоторые настройки ядра, репозитории и базовые утилиты.
- Часть IV. MySQL.
- Часть V. Apache.
- Часть VI. PHP.
- Часть VII. NGINX.
- Часть VIII. APC, Memcached & Sphinx.
- Часть IX. LiveStreet.
PHP 5.3 Reaching End of Life
11-Jul-2013 The PHP development team announces the immediate availability of PHP 5.3.27. About 10 bugs were fixed, including a security fix in the XML parser (Bug #65236).Новости уже сто лет в обед. Поддержка PHP 5.3 завершена. Всем заинтересованным лицам предлагается переходить на PHP 5.4 или PHP 5.5. Продолжать жить на больше не поддерживаемой версии, мысль не очень хорошая, хотя бы из соображений безопасности (фиксы дыр в безопасности это то, что надо бы постоянно ставить). Учитывая, что следование инструкции устанавливало именно PHP 5.3, я решил описать что нужно сделать чтобы перевести установку на использование PHP 5.4.
Please Note: This will be the last regular release of the PHP 5.3 series. All users of PHP are encouraged to upgrade to PHP 5.4 or PHP 5.5. The PHP 5.3 series will receive only security fixes for the next year.
Замечание: PHP 5.4 уже 20+ релизов пережило, так что «сырым» продуктом его назвать нельзя. Кроме того там куча оптимизаций и фиксов непосредственно влияющих на потребление памяти и общую производительность. Так что даже без учёта того что PHP 5.3 мёртв — смысл в переходе есть и большой.
Для начала останавливаем apache, чтобы не мешался пока суть, да дело:
/etc/init.d/apache2 stop
Сносим всё PHP которое установлено:
apt-get remove php5-cli php5-common php5-suhosin php5-mcrypt php5-mysql php5-gd php5-dev php-pear php5-curl php-apc php5-memcache php5-fpm apt-get autoremove
Лезем в конфигурационный файл /etс/apt/sources.list стираем там 2 старые строки посвященные dotdeb.org и вместо них вписываем такие:
deb http://packages.dotdeb.org squeeze-php54 all deb-src http://packages.dotdeb.org squeeze-php54 all
Обновляемся:
apt-get update
И ставим всё новое:
apt-get install php5-cli php5-common php5-mcrypt php5-mysql php5-gd php5-dev php-pear php5-curl php5-apc php5-memcache php5-fpm apt-get autoremove
Замечания:
- php5-suhosin для PHP 5.4 не нужен и не рекомендован.
- APC берём тоже с dotdeb, поэтому пакет называется php5-apc, a не php-apc как раньше.
- По ходу дела пару раз спросят что делать с конфигами (php.ini и т.п.)- решайте сами. Можно оставить старые, можно взять новые из устанавливаемых пакетов, можно посмотреть различия. Я советую ставить новые, хотя это и означает что все изменения которые в них вносились придётся делать заново
Если вы установили новые конфиги, то вносим в них изменения упомянутые в «Часть VI.PHP». Номера строк в конфигах будут другие. На всякий случай перечисляю директивы, на которые необходимо обратить внимание.
/etc/php5/fpm/php.ini:
expose_php mail.add_x_header sendmail_path disable_functions error_log session.save_path
/etc/php5/fpm/pool.d/www.conf:
listen pm.max_children pm.start_servers pm.min_spare_servers pm.max_spare_servers pm.max_requests
/etc/php5/cli/php.ini:
expose_php mail.add_x_header sendmail_path
Теперь правим конфигурации apache (потому что эти
Было:
Action php-fastcgi /usr/sbin/php-fpm.fcgi ScriptAlias /usr/sbin/php-fpm.fcgi /usr/sbin/php-fpm
Cтало:
Action php-fastcgi /usr/sbin/php5-fpm.fcgi ScriptAlias /usr/sbin/php5-fpm.fcgi /usr/sbin/php5-fpm
Далее в /etc/apache2/mods-available/fastcgi.conf меняем строку:
Было:
FastCGIExternalServer /usr/sbin/php-fpm -socket /var/run/php5-fpm.socket -idle-timeout 30
Cтало:
FastCGIExternalServer /usr/sbin/php5-fpm -socket /var/run/php5-fpm.socket -idle-timeout 30
Cтартуем всё:
/etc/init.d/php5-fpm restart /etc/init.d/apache2 start
И всё. Должно работать :)
Вам просто необходима раскрутка группы в facebook, если вы хотите найти новых клиентов. Наша компания сможет подготовить для вас грамотный социальный маркетинг.
12 комментариев
мистика )))
Кстати проверить просто — с помощью PHP функции «error_log».
Например, на хостинге, который вообще не предоставляет доступа к логам, пришлось настроить вывод ошибок PHP в отдельный файл с помощью следующего набора директив в файле ".htaccess"
Ошибки apache все равно не доступны, но хоть так.
Подробнее: смотрите видео www.youtube.com/watch?v=xQYOihHLmu4