Установка и настройка Apache, PHP, MySQL на CentOS

Если Вы заказали VPS/VDS сервер и не знаете как корректно его настроить для работы с сайтами то данная статья как раз для вас.
В данной статье мы рассмотрим как установить и настроить полноценный веб сервер.  Следую всем указаниям и примерам в статье Вы получите настроенный веб сервер с установленным  Apache, PHP, MySQL.
Для начала ном нужно подключится к нашему серверу. Если Вы не знаете как это сделать то подробнее про подключение к серверу вы можете почитать в статье SSH подклчючение к серверу VPS/VDS .

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

# yum update

 

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

Для этого воспользуемся утиллитой setup (если ее нет, то ставим #yum install setuptool).
Запускаем # setup.
Вылезет окошко, в котором очень просто разобраться. Там можно либо отключить iptables, либо открыть нужные порты. Рекомендую сделать второе. Выбираем все нужные нам веб, фтп, ssh и прочие соединения.
Если не помогло, то просто отключаем его

# service iptables stop && chkconfig iptables off


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

# yum -y install httpd mod_ssl

Редактируем конфиг апача Открываем в любимом редакторе файл
/etc/httpd/conf/httpd.conf В ServerName вносим свой адрес или имя сервера.

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

# chkconfig httpd on

Запускаем Apache:
# service httpd start

Создаем тестовую страницу:
# echo '<h1>It Works!</h1>' > /var/www/html/index.html

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

http://IP-адрес_сервера/

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

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

# yum -y install php php-common php-gd php-mysql php-xml php-mbstring

Перезагружаем Apache:
# service httpd restart

Проверяем PHP:
Создадим php скрипт выводящий информацию о php:
# echo '' > /var/www/html/inf.php
Смотрим по адресу http://IP-адрес_сервера/inf.php
Если информация отобразилась, продолжаем дальше.

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

# yum -y install mysql mysql-server

Прописываем MySQL в автозапуск:
# chkconfig mysqld on

Запускаем MySQL:
# service mysqld start

Устанавливаем root пароль MySQL:
# mysqladmin -u root password 'new-password'
Где new-password — ваш новый root пароль для MySQL.

6. Настраиваем Apache.

После того, как мы убедились, что все основные веб-службы у нас хорошо работают, можно переходить к созданию директорий сайтов.
Структура у нас будет такая:
/home/ — директория с сайтами
/home/site.ru/ — директория отдельного сайта
/home/site.ru/www/ — файлы этого сайта
/home/site.ru/logs/ — логи этого сайта
/home/site.ru/tmp/ — временные файлы этого сайта

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

После этого прописываем их в конфиг апача:
/etc/httpd/conf.d/ — В эту директорию будем создавать отдельный конфиг фаил для каждого сайта (так удобнее).
Файл site1.conf:

<VirtualHost *:80>
    ServerName site1.ru
    ServerAlias www.site1.ru
    DocumentRoot /home/site1.ru/www
    <Directory /home/site1.ru/www>
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        Allow from all
    Directory>
    #лог ошибок
    ErrorLog /home/site1.ru/logs/error.log
    #
    #лог обращений выключен по умолчанию, для включения уберите #
    #CustomLog /home/site1.ru/logs/access.log common
    #
    # php safety options
    #
    php_admin_flag register_globals 1
    php_admin_value date.timezone 'Europe/Moscow'
    php_admin_value open_basedir /home/site1.ru
    php_admin_value max_execution_time 60
    php_admin_value upload_max_filesize 50M
    php_admin_value upload_tmp_dir /home/site1.ru/tmp
    php_admin_value session.save_path /home/site1.ru/tmp
VirtualHost>

Такой-же фаил надо создать для каждого сайта из директории /home/
После этого, перезапускаем апач:
# service httpd restart
Если апач вдруг не запустился, лог ошибок всегда можно посмотреть в /var/log/httpd/

Примечание:
Необходимо убедиться, что в файле /etc/sysconfig/selinux значение SELINUX равно disabled, если нет, то выставить.

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

Добавляем туда строчку:
192.168.1.5 site1.ru
Где 192.168.1.5 — ip адрес вашего сервера.
Далее, создаем в /home/site1.ru/www/ фаил index.html с каким нибудь текстом.
Октрываем в браузере http://site1.ru/
Если видим там его содержимое, то продолжаем.

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

Ставить будем вручную. Для этого нам потребуется менеджер загрузок wget.
Если у вас нет, то ставим:
# yum -y install wget
Идем на http://www.phpmyadmin.net/home_page/downloads.php и копируем ссылку на самую последнюю мультиязычную версию PhpMyAdmin со сжатием .tar.gz (На данный момент это — http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.6/phpMyAdmin-3.5.6-all-languages.tar.gz/download#!md5!aa6c996d264f4c04c00cbb2e97f3972a).
Идем в /var/www/html/:
# cd /var/www/html/
Скачиваем PMA:
# wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.5.6/phpMyAdmin-3.5.6-all-languages.tar.gz/download#!md5!aa6c996d264f4c04c00cbb2e97f3972a
В директории появится архив phpMyAdmin-3.5.6-all-languages.tar.gz, распаковываем его:
# tar xzf phpMyAdmin-3.5.6-all-languages.tar.gz
Переименуем директорию phpMyAdmin-3.5.6-all-languages в phpmyadmin:
# mv phpMyAdmin-3.5.6-all-languages phpmyadmin
Удалим архив phpMyAdmin-3.5.6-all-languages.tar.gz т.к. он нам больше не нужен:
# rm phpMyAdmin-3.5.6-all-languages.tar.gz

По идее у нас уже полностью рабочий PhpMyAdmin должен быть доступен по адресу — https://IP-адрес_сервера/phpmyadmin/

На этом можно завершить базовую настройку VPS/VDS сервера под управлением CentOS

  • 222 Пользователи нашли это полезным
Помог ли вам данный ответ?

Связанные статьи

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

В этой статье вы ознакомитесь с информацией о настройке подключения к локальной сети на CentOS,...

CentOS - Как добавить дополнительный IP адрес

Для того что бы добавить дополнительный IP адрес на Ваш сервер под управлением ОС CentOS нам...

Установка SSL сертификата на Nginx

1. Скопируйте файлы сертификата на сервер. Скопируйте ваш сертификат (your_domain_name.crt) и...

Как сменить root пароль?

Для смены root пароля, подключитесь к серверу и выполните следующие команды  user@srv:~$ sudo...

Установка и настройка ConfigServer Security and Firewall

ConfigServer Security and Firewall (CSF) – это свободное программное обеспечение с открытым...