Instalam Apache + PHP + Mysql pe CentOS

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

# yum update

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

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

# yumyinstall mc

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

Чтобы не вдаваться в долгие сложные настройки, просто отключаем его следующей командой
CentOS 6: # service iptables stop&&chkconfig iptables off
CentOS 7: # systemctl stop firewalld&&systemctl disable firewalld

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

# yumyinstall httpd mod_ssl

Редактируем конфиг апача
Открываем в любимом редакторе файл /etc/httpd/conf/httpd.conf.
Редактировать можно в mcedit (# mcedit/etc/httpd/conf/httpd.conf) или, для своего удобства, используйте следующие программы: WinSCP (для windows) или Coda (для MacOS X), которые позволяют работать с файлами на сервере через протокол SFTP (тот-же SSH, только для файлов).

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

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

 

Ещё советую закомментировать строку # CustomLog logs/access_log combined

Прописываем Apache в автозапуск:
CentOS 6: # chkconfig httpd on
CentOS 7: # systemctl enable httpd.service

Запускаем Apache:
CentOS 6: # service httpd start
CentOS 7: # systemctl start httpd.service

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

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

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

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

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

# yumyinstall php phpcommon phpgd phpxml phpmbstring

Перезагружаем Apache:
CentOS 6: # service httpd restart
CentOS 7: # systemctl restart httpd.service

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

Смотрим по адресу http://IP-адрес_сервера/inf.php
Если информация отобразилась, продолжаем дальше.

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

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

  • Ставим MySQL

    # yumyinstall mysql mysqlserver

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

    Запускаем MySQL:
    CentOS 6: # service mysqld start
    CentOS 7: # systemctl start mysqld

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

  • Или ставим MariaDB

    # yum installymariadbserver mariadb

    Прописываем MariaDB в автозапуск:
    CentOS 6: # chkconfig mariadb on
    CentOS 7: # systemctl enable mariadb

    Запускаем MariaDB:
    CentOS 6: # service mariadb start
    CentOS 7: # systemctl start mariadb

    Затем нужно запустить простой скрипт безопасной установки, который удалит некоторые опасные настройки по умолчанию и усложнит доступ к системе базы данных. Запустите интерактивный скрипт:
    # mysql_secure_installation
    Система спросит текущий root-пароль. Но поскольку система MySQL только что установлена, такого пароля пока что нет, потому просто нажмите enter. Затем вас спросят, хотите ли вы установит пароль, введите Y и следуйте инструкциям.
    На все остальные вопросы просто нажмите enter.

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

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

Проверяем MySQL (или MariaDB):
Создаём и редактируем проверочный фаил mysqltest.php
# mcedit/var/www/html/mysqltest.php
Копируем в него следующий код:

Сохраняем. Проверяем:
http://IP-адрес_сервера/mysqltest.php (после успешной проверки скрипт желательно удалить)
Если вывелась версия MySQL сервера, то продолжаем.

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

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

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

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

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

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

Проверяем:
Для проверки совершенно не обязательно менять 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/
Если видим там его содержимое, то продолжаем.

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

Для начала установим репозиторий RPMForge. Вот как это сделать.

yum install phpmyadmin Далее все посто.

# yum install phpmyadmin
phpmyadmin.conf Теперь надо провести несколько настроек. В файле /etc/httpd/conf.d/phpmyadmin.conf прописать с какого ip адреса разрешить подключение (по умолчанию прописан 127.0.0.1). Прописываем через пробел необходимый адрес.
config.inc.php В файле /usr/share/phpmyadmin/config.inc.php найдем строку:

$cfg['Servers'][$i]['auth_type'] = ‘cookies‘;

и приведем ее к виду

$cfg['Servers'][$i]['auth_type'] = ‘http‘;

Последний шаг – перезагрузим веб-сервер:

# service httpd restart

 

Sursa: http://i-leon.ru/%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-%D0%B8-%D0%BD%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0-apache-php-mysql-%D0%BD%D0%B0-centos-pma-%D0%B8-ftp/

Sursa2:http://centos.name/?page/tipsandtricks/phpmyadmin

 

Leave a Reply

Your email address will not be published. Required fields are marked *