Пошаговая Настройка Apache С Выбором Версий Php + Nginx В Качестве Обратного Прокси (С Mod_Pagespeed) На Ubuntu 16.04

В Интернете есть много статей по настройке сервера, настройке Apache, Nginx и т. д. В этой статье мы шаг за шагом настроим простой виртуальный хостинг.

Все операции выполняются через консоль.

В посте будут решены и описаны следующие задачи: 1. Установите Apache + PHP. 2. Возможность выбора версии PHP. 3. Возможность управления сайтами от разных пользователей, с ограничением чтения каталогов других сайтов.

4. Установка Nginx с модулем PageSpeed от Google 5. Настройка Nginx в качестве обратного прокси Все этапы будут содержать описания и пояснения.

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

Ubuntu 16.0.4 устанавливается как сервер только с SSH. ЭШАГ 1 (Установите Apache + PHP) Запускаем оболочку с root-правами:

  
  
  
  
  
  
  
  
  
  
  
   

sudo -i

Установите апач:

apt install -y apache2

Ключ

-y

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

apt install apache2

затем в процессе установки нас спросят, действительно ли мы хотим установить.

Установите php (как mod_php)

apt install -y php libapache2-mod-php

На этом этапе мы установили PHP версии 7 в качестве модуля Apache. ЭШАГ 2 (Возможность выбора версии PHP) На первом этапе мы установили сервер Apache + PHP, при этом PHP работал как модуль Apache. Существует несколько режимов работы PHP; подробную информацию можно прочитать по ссылке «Коротко о CGI, FastCGI, PHP-FPM и mod_php» .

Если лень читать, объясню проще: 1. mod_php — Apache сам выполняет PHP-скрипт. Плюсы: работает быстро, требует минимум настроек и знаний.

Минусы: скрипты выполняются от пользователя apache (обычно www-данные) 2. CGI/FastCGI. Сервер Apache запускает сценарий приложения-интерпретатора php-cgi, который, в свою очередь, выполняет сценарий php. Плюсы: скрипты выполняются произвольным пользователем, можно использовать совместно с другими приложениями (Nginx + PHP), настройку PHP можно сделать индивидуальной Минусы: скорость, дополнительная настройка.

3.PHP-FPM — это обновленный сервер fast-cgi, который постоянно поддерживает готовность процессов пула к работе.

Плюсы: скорость работы, скрипты выполняются произвольным пользователем, можно использовать совместно с другими приложениями (наиболее распространенная реализация — Nginx + PHP-FPM).

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

Мы будем придерживаться CGI/FastCGI. На самом деле многих может напугать то, что он самый медленный, но на большинстве шаред-хостингов именно такой режим работы (ispmanager использует именно этот режим работы).

Нам нужно будет собрать нужные нам версии PHP из исходного кода.

2.1 Сборка PHP из исходников Обновите репозиторий:

apt update

Установите необходимые для сборки пакеты:

apt install -y make \ git autoconf \ lynx \ wget \ build-essential \ libxml2-dev \ libssl-dev \ libbz2-dev \ libcurl4-openssl-dev \ libpng12-dev \ libfreetype6-dev \ libxpm-dev \ libmcrypt-dev \ libmhash-dev \ libmysqlclient-dev \ libjpeg62-dev \ freetds-dev \ libjson-c-dev \ re2c \ zlib1g-dev \ libpcre3 \ libpcre3-dev \ unzip \ libxslt1-dev

Символ \ используется в качестве разрыва строки для удобства чтения.

Создайте папки для php:

mkdir -p /opt/source/php mkdir -p /opt/php/

Перейдите в каталог, в котором будут храниться исходники PHP.

cd /opt/source/php

Скачайте нужную версию php и распакуйте ее:

wget -c http://php.net/get/php-5.6.18.tar.bz2/from/this/mirror -O php-5.6.18.tar.bz2 tar xvjf php-5.6.18.tar.bz2

В последней команде мы скачали по ссылке php-5.6.18 и сохранен как php-5.6.18.tar.bz2. Потом архив распаковал.

Перейдите в директорию скачанного и распакованного php.

cd /opt/source/php/php-5.6.18

Настройка PHP

.

/configure --enable-cli \ --prefix=/opt/php/php-5.6.18

Теги: #Nginx #Хостинг #php #Apache #системное администрирование Linux #fastcgi #apache2 #suexec #pagespeed Insights

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.