Настройка apache centos 6

Обновлено: 04.07.2024

Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на . Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

Недавно я уже рассказывал о том как получить бесплатный ssl сертификат для подтверждения доменного имени. Мы его использовали для организации ssl/tls соединений в почтовом сервере. Теперь его же мы будем использовать для того, чтобы перевести наш сайт на работу по ssl протоколу.

О том, как получить бесплатный сертификат от let's encrypt и настроить apache на работу с ним читайте в моей статье по настройке web сервера apache на centos 8.

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

В качестве сервера у нас выступает apache на CentOS, хотя это не принципиально, настройка на других linux дистрибутивах будет идентичной. Рабочим web сервером является apache. Использовать ssl протокол в apache мы будем с помощью мода mod_ssl. Первым делом проверим, установлен ли он:

Если нет, то устанавливаем:

Создание виртуального хоста с поддержкой ssl

После сохранения проверяем конфигурацию apache:

Если появляется предупреждение:

Онлайн курс "DevOps практики и инструменты"

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Проверьте себя на вступительном тесте и смотрите программу детальнее по .

Помогла статья? Подписывайся на telegram канал автора

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

Автор Zerox

16 комментариев

Здравствуйте не подскажите можно ли получить сертификат lets encrypt если например будет два сервера с внешними ip и при этом один плавающий будет на два сервера, доменное имя к нему будет прикручено к плавающему ip?

Можно. Сервер же клиентам все равно будет отвечать с какого-то ip. Let's encrypt во время выпуск сертификата делает проверку обычным запросом на web сервер.

Для чего прописывать дважды SSLCertificateFile и SSLCertificateKeyFile, сначала в ssl.conf а потом в VirtualHost?
попробовал удалить из VirtualHost, рабоает, но не наоборот. А если на сервере несколько доменов?

Зачем дважды? В статье у меня этого нет. Есть глобальные настройки для всех виртуальных хостов, а есть настройки конкретного виртуального хоста. Настраивают обычно каждый виртуальный хост в отдельности, так как сертификаты для них уникальные.

День добрый!
Прекрасно зашли ваши установка CentOS и LAMP, а вот тут ну никак. Вероятно, я чего-то недопонимаю. Хочу мигрировать с Ubuntu на CentOS с имеющимися сайтами и сертификатами.
Можно как-то по-подробнее, с нюансами?

А в чем проблема? Тут фактически надо только указать сертификат в конфиге и все. Нюансов нет.

Да, действительно. Ложная тревога. На второй день нашел пару своих ошибок и одно небольшое недопонимание. Всё ок. Спасибо за Ваши статьи.

Стиль изложения - 5 баллов! Четко и по существу. Спасибо.

Так же как и везде в апаче. Заббикс никаких нюансов не приносит - это обычный сайт на php.

И так, к нам в руки попал новый сервер с только что установленной CentOS.

Задача — сделать из него полноценный веб сервер.

Все действия мы выполняем из под пользователя root.

1. Обновляем систему.

2. Устанавливаем любимые редакторы.

Лично я люблю пользоваться mcedit, который встроен в Midnight Commander, по этому его и ставлю:

3. Настройка брэндмауера (iptables).

4. Устаналвиваем Apache, SSL.

В ServerName пишем ip адрес или имя сервера.

Строчку IncludeOptional conf.d/*.conf переносим в самый конец файла.
А перед ней добавляем главный виртуалхост:

Создаем тестовую страницу:

Проверяем результат, открыв в браузере с другой машины IP-адрес сервера:

Если надпись It Works! появилась, продолжаем дальше

5. Устанавливаем PHP с некоторыми его доп. компонентами

Проверяем PHP:
Создадим php скрипт выводящий информацию о php:

6. Устанавливаем MySQL или MariaDB.

В связи с тем, что MariaDB набирает все большую популярность за свои выдающиеся характеристики и полную совместимость с mysql приложениями, рассмотрим оба варианта:

Ставим MySQL

Или ставим MariaDB

Подключаем и проверяем

ini_set ( 'display_errors' , 1 ) ; //включаем вывод ошибок на страницу $dbname = "mysql" ; //база данных, которая создается по умолчанию при установке $dbcnx = @ mysql_connect ( $dblocation , $dbuser , $dbpasswd ) ;

7. Настраиваем хосты в Apache.

И так, создаем в /home/ директории сайтов и в каждом из них папки www, logs, tmp.

php_admin_value upload_tmp_dir / home / site1 . ru / tmp php_admin_value session . save_path / home / site1 . ru / tmp

Проверяем:
Для проверки совершенно не обязательно менять NS записи домена, достаточно отредактировать файл hosts на компьютере, с которого вы производите настройку. В windows он обычно лежит в C:\Windows\System32\drivers\etc\, в nix системах в /etc/

8. Установка и настройка PhpMyAdmin (PMA)

9. Установка и настройка FTP клиента

Лично мне нравится использовать ProFTPD.
Как его установить и настроить на CentOS читаем тут — Установка и настройка ProFTPD на CentOS.

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

Требования

Для выполнения данного руководства необходимы привилегии root; чтобы узнать, как создать пользователя с такими привилегиями, читайте руководство «Начальная установка сервера CentOS 6». В данном руководстве пользователь будет называться www, но для него можно выбрать любое удобное имя.

Кроме того, понадобится предварительно установленный и запущенный сервер Apache. Если Apache еще не установлен, используйте команду:

1: Создайте новый каталог

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

Это так называемый root-каталог сайта (раздел Document Root в конфигурационном файле Apache). При помощи флага -p команда автоматически создаст все необходимые каталоги высшего порядка для нового каталога.

Теперь нужно указать подтвержденное доменное имя или IP-адрес, чтобы проверить, работает ли виртуальный хост.

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

2: Передайте привилегии

Теперь нужно передать все права на только что созданный каталог ранее созданному пользователю (см. раздел Требования):

Кроме того, необходимо убедиться, что все желающие имеют право на чтение новых файлов.

sudo chmod 755 /var/www

3: Создайте страницу сайта

На данном этапе нужно создать новый файл с именем index.html в конфигурационном каталоге.

Внесите в данный файл некоторый текст, чтобы при переходе на IP на странице отображался контент.

Сохраните и закройте файл.

4: Активируйте виртуальный хост

Далее нужно открыть конфигурационный файл Apache:

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

Перейдите в конец файла и найдите раздел Virtual Hosts:

Самыми важными являются строки NameVirtualHost, Virtual Host, Document Root и Server Name; рассмотрим их подробнее:

Остальные строки в этом блоке кода нужны уже не для настройки виртуального хоста:

  • Server admin указывает адрес электронной почты вебмастера.
  • ErrorLog и CustomLog – это логи, которые отслеживают сервер на возникновение ошибок. ErrorLog охватывает проблемы, возникшие при поддержке сервера, а CustomLog отслеживает запросы к серверу. В строках ErrorLog и CustomLog можно задать пользовательские логи.
  • Убедитесь, что строка VirtualHost раскомментирована; затем сохраните и закройте файл

5: Перезапустите Apache

В ходе настройки виртуального хоста было внесено немало изменений, но ни одно из них не вступит в силу до тех пор, пока веб-сервер Apache не будет перезапущен.

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

sudo apachectl -k stop

Затем запустите Apache снова:

Может появиться следующая ошибка:

Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

Тем не менее, это просто предупреждение; теперь можно без проблем получить доступ к виртуальному хосту.

6: Настройка локальных хостов (дополнительно)

Если вы направили доменное имя на IP-адрес виртуального сервера, можете пропустить этот шаг – устанавливать локальные хосты не нужно. Но чтобы проверить работу новых виртуальных хостов, не подключаясь при этом к домену, можно настроить на компьютере локальные хосты.

Для выполнения этого раздела нужен пароль администратора компьютера, в противном случае для проверки виртуальных хостов придется использовать имя домена.

Пользователям Mac или Linux нужно войти в систему как пользователь root (su) и открыть файл hosts:

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

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

7: Итоги

Чтобы добавить больше виртуальных хостов, просто повторите вышеописанный процесс, создав новый document root с соответствующим доменным именем и активировав новый файл виртуального хоста.

После настройки виртуальных хостов можно приступить к созданию SSL-сертификата или установить FTP-сервер.

install apache php mysql phpmyadmin centos


Имеем только что купленный VPS сервер на CentOS 6. Необходимо настроить его для работы с сайтами. В данной статье рассмотрим как установить и настроить полноценный веб сервер в связке Apache, PHP, MySQL.

Обновляем систему

Открываем порты

Устанавливаем Apache, SSL

Редактируем конфиг апача, в ServerName пишем ip адрес или имя сервера.

Строчку Include conf.d/*.conf переносим в самый конец файла.
А перед ней добавляем главный виртуалхост:

Прописываем Apache в автозапуск

Создаем тестовую страницу

Устанавливаем PHP

Проверяем PHP
Создадим php скрипт выводящий информацию о php:

Устанавливаем MySQL

Добавляем MySQL в автозапуск

Устанавливаем root пароль MySQL

Где my-password — ваш новый root пароль для MySQL.

Подключаем и проверяем

Устанавливаем модуль php для работы с БД

Проверяем MySQL
Создаём и редактируем проверочный фаил mysqltest.php

Копируем в него следующий код:

Настраиваем хосты в Apache

И так, создаем в /home/ директории сайтов и в каждом из них папки www, logs, tmp.

Такой-же файл надо создать для каждого сайта из директории /home/
После этого, перезапускаем апач

Установка PhpMyAdmin (PMA)

В директории появится архив phpMyAdmin-4.6.3-all-languages.zip, распаковываем его:

Переименуем директорию phpMyAdmin-4.4.15.7-all-languages в pma:

Удалим архив phpMyAdmin-4.4.15.7-all-languages.zip т.к. он нам больше не нужен:

Настройка PhpMyAdmin

1) Идем в корневую в директорию нашего PMA и создаем там папку config с правами на запись (chmod 777)

Хранение конфигурации. Тут везде жмем на карандашик.

pma__bookmark
pma__central_columns
pma__column_info
pma__favorite
pma__history
pma__navigationhiding
pma__pdf_pages
pma__recent
pma__relation
pma__savedsearches
pma__table_coords
pma__table_info
pma__table_uiprefs
pma__tracking
pma__userconfig
pma__usergroups
pma__users

После этого, эту вкладку можно закрыть. Возвращаемся на вкладку с настройками конфигурации. Жмем сохранить.

Читайте также: