Как разместить сайт на сервере с LAMP |

Как разместить сайт на сервере с LAMP | Хостинг

Что такое lamp

Стек LAMP — это набор открытого программного обеспечения, который используется для создания веб-серверов. Аббревиатура является набором первых букв в названии технологий Linux, Apache, MySQL и PHP. Поскольку на VPS уже запущена операционная система Ubuntu, мы рассмотрим установку всех остальных компонентов.

Причина, по которой LAMP называют стеком, заключается в том, что каждый уровень зависит от его базового (нижнего) уровня. Ваша операционная система Ubuntu — это базовый уровень. Затем Apache, ваш веб-демон находится поверх вашей ОС. Затем база данных хранит всю информацию, обслуживаемую вашим веб-демоном, а любой язык сценариев P* используется для управления и отображения всех данных, а также для взаимодействия с пользователем.

LAMP стал де-факто стандартом разработки. Сегодня продукты, составляющие стек LAMP, по умолчанию включены почти во все дистрибутивы Linux, и вместе они создают мощную платформу для веб-приложений.

Исходная аббревиатура LAMP породила ряд других связанных акронимов, которые используют основной фокус первоначальной комбинации технологий для создания многофункциональных веб-сайтов. Некоторые из этих связанных веб-стеков включают LAPP, MAMP и BAMP.

Аналогом LAMP для Windows Server является WAMP, о его настройке можно прочитать здесь.

Основные принципы:

1. ОС — Centos-6 86_x64 потому что стабильно, удобно и легко обновляемо.

2. Никакого самосборного софта. А то как говорится «командой make && make install любой дистрибутив превращается в Slackware.»

Маленькое уточнение, на данный момент я использую тарифный план v256 у хостинг провайдера flynet.pro (256Мб оперативки) и не рассчитываю на большую нагрузку так что большая часть относится именно к такому количеству оперативной памяти, но в целом решения легко переносимы фактически на все тарифные планы разных хостинг-провайдеров.

Поехали. 1. Проверяем обновления. Установочный образ у хостинг провайдера может оказаться не особо свежим.[root@test ~]# yum updateЕсть что обновлять — обновляем. Нет — радуемся.

Читайте также:  Ускорение и оптимизация PHP-сайта. Какие технологии стоит выбирать при настройке сервера под PHP / Хабр

Lamp: типовая и дробная установки

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

                   Большой сервер / Виртуальная машина
                ----------------------------------------- 
               | Apache   PHP / Perl @ 75.126.153.206:80 |
               | Mysql@127.0.0.1: 3306 (или UNIX сокета) |
               | Pgsql@127.0.0.1: 5432 (или UNIX сокета) |
               | Netfilter для фильтрации трафика        |
                ----------------------------------------- 
                 *** Выделенный LAMP сервер ***
                 ОС: RHEL/CentOS/Debian/Ubuntu/*BSD/Unix
                 Оперативная память: 4-8GiB ECC
                 Процессор: Один или два Intel / AMD
                 Хранилище: RAID-1/5 сервер-класса SATA/SAS

Что случится в случае если, скажем, будет скомпрометирован web-сервер Apache? Злоумышленник получит доступ к вашей базе данных, кэш-памяти и, так же, к другим элементам системы или сети. В таком случае вам необходимо разделить службы сервера следующим образом:

Запуск

Чтобы удостовериться в том, что LAMP поставлен без ошибок, можно создать test-page на VPS.

Создаем файл с нужным расширением:

Внесите в него следующую строку и сохраните:

Затем сохранить и выйти.

Чтобы изменения стали актуальны, нужно заново запустить веб-сервер:

Затем перейдите в браузере по следующей ссылке, указав IP-адрес вашего сервера:

Например:

Ожидаемый результат:

Как узнать ip-адрес сервера

Адрес сервера можно найти на вкладке «Состояние» страницы «Серверы» в панели управления.

Как проверить правильность установки

Для того чтобы проверить, правильно ли выполнена установка LAMP Ubuntu, можно создать простой PHP-скрипт.

Готово, установка LAMP Ubuntu 18.04/20.04 закончена.

Модули php

Для повышения функциональности PHP вы можете дополнительно поставить некоторые модули. Посмотреть список доступных библиотек можно с помощью команды:

Ubuntu 16.04:

Ubuntu 12.04/14.04:

После этого система выдаст список, начало которого выглядит похожим образом:

Если вы решите установить какой-либо из модулей, то это можно сделать с помощью специальной команды:

Например:

После завершения этого шага LAMP-стек будет полностью установлен на вашем VPS.

Настройка apache

Настройки Apache хранятся в конфигурационных файлах в директории /etc/apache2/. Меняя конфигурационные файлы, можно настраивать Apache.

Сервер Apache имеет модульную архитектуру. Настройки всех модулей расположены в директории /etc/apache2/mods-available. Для подключения модуля используется команда a2enmod название_модуля, а для отключения — a2dismod название_модуля.

Например, для приёма и обработки запросов используются модули мультипроцессовой обработки MPM — Multi-Processing Module. Существует три основных модуля:

Пример, как настроить Apache:

Готово, вы настроили Apache.

Настройка mysql

Для обеспечения безопасности MySQL нужно задать пароль для суперпользователя и установить плагин валидации паролей Validate Password Plugin.

Все пароли, которые не удовлетворяют критериям безопасности, будут отвергаться MySQL с сообщением об ошибке. Этот плагин не подойдёт, если вы используете дефолтные пароли к программному обеспечению (конфигурируются при создании пользователей). Вы можете не включать валидацию паролей, если всегда задаёте надёжные пароли для пользователей базы данных.

Читайте также:  Аренда выделенного сервера в Екатеринбурге, хостинг серверов в Екатеринбурге | REG.RU

Готово, базы данных защищены и настроены.

Настройка php

Чтобы увеличить функциональность PHP, можно установить дополнительные расширения и выставить дополнительные настройки. Пример настройки PHP:

Готово, вы настроили PHP.

Роли каждой виртуальной машины / сервера:

Ниже приводится детальная информация о назначении машин. WordPress-блог, сайт на базе Drupal или же приложение «на заказ», размещенные на подобных серверах, могут легко обслуживать миллионы хитов в месяц.

Установка apache

Apache — один из самых популярных веб-серверов. Чтобы установить на сервер с ОС Ubuntu Apache:

Готово, вы установили и запустили Apache.

Установка apache на ubuntu

На сегодняшний день веб-сервер Apache является самым популярным веб-сервером в мире. Это отличный выбор для размещения вашего веб-сайта на Ubuntu.

Чтобы поставить Apache для LAMP вам необходимо подключиться к своему серверу (о том как это сделать можно прочитать в нашей инструкции) и ввести следующие команды:

Для тестирования успешной установки сервера, перейдите в браузере по следующей ссылке, указав IP-адрес вашего VDS:

Например:

Примечание: если у вас не получается подключиться, проверьте настройки FireWall, веб-сервер Apache по умолчанию работает на порту 80, чтобы добавить правило выполните следующую пару команд:

Установка cms

Если вы хотите развернуть новый сайт — например, в целях разработки или тестирования, воспользуйтесь следующими инструкциями по установке CMS:

Установка mysql

MySQL — это система управления базами данных, в которых сайт хранит информацию. После установки веб-сервера установите на Ubuntu MySQL.

Готово, вы установили MySQL на Apache.

Установка mysql(mariadb) на ubuntu

MySQL — это система управления базами данных (СУБД), которая используется для организации и получения контента.

Сегодня в LAMP стеке MySQL заменяется на популярный аналог — MariaDB. MariaDB имеет те же возможности, что и MySQL, и при этом является полностью бесплатной.

Примечание: если вы предпочитаете использовать базу данных MySQL в Ubuntu или ваш проект работает именно с ней, вам нужно будет добавить необходимые репозитории и установить БД с помощью инструкции.

Установите пакеты из главного репозитория Ubuntu с помощью менеджера пакетов:

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

Здесь MariaDB попросит вас задать пароль супер-пользователя БД. Затем система попросит ответить на несколько вопросов (они служебные и на каждый из них без лишних проблем можно ответить Yes).

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

Установка php

Перейдите к последнему шагу установки LAMP на Ubuntu. PHP — это скриптовый язык программирования, который применяется для разработки сайтов и веб-приложений. Для его использования нужно установить интерпретатор и модули для работы с Apache и MySQL.

Читайте также:  Мастер-хостинг для вашего сайта: пошаговое руководство

Готово, вы установили PHP на Apache.

Установка php на ubuntu

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

Ubuntu 16.04:

Ubuntu 12.04/14.04:

В процессе установки потребуется 1 или 2 раза ответить ‘Yes’ на вопросы системы.

Хватит говорить, покажи мне процесс настройки серверов

Большинство перечисленных в этой заметке действий, пишутся с предположением, что они будут выполнены root-пользователем в bash-консоли CentOS 6.x/Red Hat Enterprise Linux 6.x. Тем не менее, вы можете легко копировать настройки на любой другой *NIX подобные операционные системы.

Шаг 0. структура каталогов для размещения сайтов

Чтобы в будущем мы могли просто и непринуждённо добавлять новые сайты, настраивать FTP или sFTP-доступ для отдельных директорий, не помешает заранее определиться, как оптимально расположить их на сервере. 

Самая простая структура выглядит так:

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

Тем не менее, если вы планируете разместить на сервере только один сайт, можно не тратить время на настройки и просто загрузить файлы сайта в папку /var/www/html — сайт будет работать и так. Но в будущем это может привести к необходимости в перенастройке, например, когда потребуется разместить новый сайт.

Шаг 1. создание директории сайта и файлов логов

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

Шаг 2. создание конфигурационного файла сайта — virtualhost

Чтобы веб-сервер стал принимать запросы к нашему сайту, в первую очередь нужно добавить его конфигурационный файл — так называемый VirtualHost. Он нужен, чтобы указать веб-серверу, как обрабатывать запросы к сайту, где лежат его файлы, куда записывать сообщения об ошибках и др.

На CentOS требуется выполнить предварительную настройку.

Создадим папку для размещения конфигурационных файлов сайтов:

Шаг 3. создание базы данных

База данных — обязательный компонент для работы любого современного сайта. Одним из этапов установки большинства CMS всегда является настройка базы данных.

Чтобы создать базу для нового сайта, подключитесь к серверу баз данных:

mysql -u root -p

После ввода пароля создадим новую базу данных exampleDB:

create database exampleDB;

Шаг 4. загрузка файлов и проверка работы сайта

Осталось самое простое — загрузить файлы сайта. 

Оцените статью
Хостинги