1. Обновляем систему.
# yum update
2. Устанавливаем любимые редакторы.
Лично я люблю пользоваться mcedit, который встроен в Midnight Commander, по этому его и ставлю:
# yum–yinstall mc
3. Настройка брэндмауера (iptables).
Чтобы не вдаваться в долгие сложные настройки, просто отключаем его следующей командой
CentOS 6: # service iptables stop&&chkconfig iptables off
CentOS 7: # systemctl stop firewalld&&systemctl disable firewalld
4. Устаналвиваем Apache, SSL.
# yum–yinstall 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 переносим в самый конец файла.
А перед ней добавляем главный виртуалхост:
1
2
3
4
5
|
<VirtualHost*:80>
ServerName127.0.0.1
ServerAdminwebmaster@server.ru
DocumentRoot/var/www/html
</VirtualHost>
|
Ещё советую закомментировать строку # 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 с некоторыми его доп. компонентами
# yum–yinstall php php–common php–gd php–xml php–mbstring
Перезагружаем 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
# yum–yinstall mysql mysql–server
Прописываем MySQL в автозапуск:
CentOS 6: # chkconfig mysqld on
CentOS 7: # systemctl enable mysqldЗапускаем MySQL:
CentOS 6: # service mysqld start
CentOS 7: # systemctl start mysqldУстанавливаем root пароль MySQL:
# mysqladmin–uroot password‘new-password’
Где new-password — ваш новый root пароль для MySQL. -
Или ставим MariaDB
# yum install–ymariadb–server 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 для работы с БД
# yum–yinstall php–mysql
Проверяем 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 |
В файле /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