Настройка PHP 5.2 и PHP 5.3 на одном сервере

Настройка PHP 5.2 (через fastcgi) и PHP 5.3 (как модуль Apache2) на одном сервере это возможно!

На одном сервере с одним Apache2 прекрасно заводятся и соседствуют PHP 5.2 (через fastcgi) и PHP 5.3 (как модуль Apache2). Мы далее решим проблему так, что указать какой именно PHP использовать можно будет на уровне настроек виртуального хоста.

Скачиваем дистрибутив php 5.2:

wget http://www.php.net/get/php-5.2.17.tar.gz/from/ru.php.net/mirror

Переименовываем полученный файл во что положено:

mv mirror php-5.2.17.tar.gz

Распаковываем архив:

tar zxvf php-5.2.17.tar.gz

Заходим в директорию:

cd php-5.2.17

Устанавливаем зависимости:

sudo aptitude install libxml2-dev libmysqlclient-dev libcurl4-gnutls-dev libpng12-dev libjpeg62-dev

Конфигурируем, собираем и ставим из исходников наш php 5.2 в директорию /opt/php5.2:

./configure --prefix=/opt/php5.2 --with-config-file-path=/opt/php5.2 --with-mysqli --with-mysql --with-curl --with-gd --with-jpeg-dir --enable-cli --enable-fastcgi --enable-discard-path --enable-force-cgi-redirect

Если возникают ошибки типа этих:

error: libjpeg.(a|so) not found.

Note that the MySQL client library is not bundled anymore!

Cannot find libmysqlclient under /usr

Они решаются вот таким способом

ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib/libjpeg.so

ln -s /usr/lib/i386-linux-gnu/libpng.so /usr/lib/libpng.so

точно также и с файлами для mysql ну а для особо ленивых есть вот такая команда:

sudo ln -s /usr/lib/i386-linux-gnu/* /usr/lib/

Если запускаете конфигурацию в n-ый раз то надо очистить:

sudo  rm -f config.cache

далее после удачного завершения:

make

make test

sudo make install

Данные операции займут много времени! Когда всё установиться, можно убедиться в том, что на вашем сервере теперь появилась нужная версия php такой командой:

/opt/php5.2/bin/php -v

Однако, про этот php пока ничего не знает наш уважаемый веб-сервер Apache2. Мы их познакомим через fastcgi.

Ставим:

sudo aptitude install libapache2-mod-fastcgi

Включаем нужные модули Apache2:

sudo a2enmod cgi fastcgi actions

Перезапускаем Apache, чтобы модули подцепились:

sudo service apache2 restart

Теперь создадим файл (он будет просто обёрткой, вызывающей наш исполнимый бинарник /opt/php5.2/bin/php-cgi, но с нужными настройками, которые вы можете изменить или дополнить):

sudo nano /usr/lib/cgi-bin/php52-cgi

И туда поместим буквально следующее:

#!/bin/sh

PHPRC="/opt/php5.2/"

export PHPRC

PHP_FCGI_CHILDREN=4

export PHP_FCGI_CHILDREN

PHP_FCGI_MAX_REQUESTS=5000

export PHP_FCGI_MAX_REQUESTS

exec /opt/php5.2/bin/php-cgi

Сделаем файл исполнимым:

sudo chmod +x /usr/lib/cgi-bin/php52-cgi

Теперь создадим необходимую часть конфига для виртуальных хостов, которым потребуется php 5.2:

sudo nano /etc/apache2/php52.conf

Поместим в файл следующее:

SetHandler application/x-httpd-php5

ScriptAlias /php52-cgi /usr/lib/cgi-bin/php52-cgi

Action application/x-httpd-php5 /php52-cgi

AddHandler application/x-httpd-php5 .php

Теперь давайте пойдём в конфиг того виртуального хоста, который должен работать с php 5.2 и добавим в него следующую строку (например, после DocumentRoot...):

...

Include php52.conf

...

Перезапустим Apache, чтобы подцепились новые настройки виртуального хоста:

sudo service apache2 restart

Готово! Идите на нужный хост и проверяйте: он теперь обслуживается php 5.2.

Узнать версию PHP используемую на вашем хостинге можно следующим способом. Создайте документ, вставьте этот код на страницу, установите формат ввода PHP code и сохраните документ.

Если необходимо менять стандартные настройки в файде php.ini то его надо создать в папке /opt/php5.2/

Ещё несколько комманд для тестирования php:

/opt/php5.2/bin/php -v

/opt/php5.2/bin/php -m

/opt/php5.2/bin/php --ini

php -v

php-cgi -m

You should also read:

Настройка W3 Total Cache

Добрый день, сегодня я хочу рассказать о том как настроить W3 Total Cache, но для начала немного о нем. Это плагин WordPress предназначенный для кэширования всего и вся на вашем ресурсе. Фактически нет ни одного аспекта, который бы он не задевал. Он охватывает совершенно все от кэширования на сервере, до кэширования на клиенте. Использование W3 Total Cache позволяет улучшить производительность сайта по крайней мере в 10 раз, как пишут сами создатели.

Настройка AsteriskNow после установки (Eng)

Well after much researching I have complied a procedure to help people install AsteiskNow from scratch. Hope this helps.

Install AsteriskNOW 1.5.0 from CD.

After installation first boot will prompt with Setup-Agent to enter IP address, subnet mask, and gateway.

# vi /etc/resolv.conf

(add DNS servers ex. Nameserver 192.168.1.2)

# /etc/init.d/network restart

# yum update

(reply ’y’ when prompted.)

Настройка сети в CentOS

Настройки сетевых интерфейсов в CentOS находятся в:

  1. /etc/sysconfig/network-scripts/ifcfg-ethХ

- где X номер вашего интерфеса

Настройка Ubuntu сетевым шлюзом для раздачи интернета в локальную сеть

Как машину с двумя сетевыми интерфейсами (в один поступает интернет, из другого — «выходит») сделать шлюзом.

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

ifconfig