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

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

Для начала необходимо обновить саму систему, чтобы обновились пакеты для установки:

# yum update

Если нужно установить текстовый редактор, то установите. Так как у меня система «свежая» — я установлю хороший текстовый редактор — mcedit, который встроен в Midnight Commander:

# yum -y install mc

Для безопасности нужно открыть только те порты, которые используете, а остальные закрыть. Для этого нужно воспользоваться утиллитой setup (при необходимости инсталим ее : #yum install setuptool). Запустим утилиту и начнем работать с ней:

# setup

В окне что появилось, очень легко и просто понять что делать, там можно или отключить iptables или открыть необходимые вам порты. Я советую выбрать второй вариант: выбрать FTP, SSH, WEB и другие соединения которые необходимы. Есть вариант что не поможет, тогда вырубите его просто:

# service iptables stop && chkconfig iptables off

Начнем установку apache, я установлю с SSL:

# yum -y install httpd mod_ssl

Апач установился, нужно подправить его конфиг, открыв в текстовом редакторе :

# ee /etc/httpd/conf/httpd.conf

И в поле ServerName прописываем ваш IP или имя сервера, у меня оно выглядит так:
ServerName 192.168.77.113

Чтобы Apache стартовал автоматически пропишем в автозапуск следующее:

# chkconfig httpd on

Стартуем Apache:

# service httpd start

Создадим пробную страницу, можно не выполнять это:

# echo '<h1>It's Work</h1>' > /var/www/html/index.html

Проверить можно перейдя по адресу который вы прописали в ServerName:
http://192.168.77.113/

И мы увидим строчку «It’s Work»

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

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

Ребутнем сам Apache:

# service httpd restart

Проверим работоспособность PHP: Создаем файл php скриптом который будет выводить инфу о php:

# echo '<?php phpinfo(); ?>' > /var/www/html/info.php

Смотрим перейдя по своему адресу, у меня это: http://192.168.77.113/info.php CentOS

Устанавка MySQL.

# yum -y install mysql mysql-server

Пропишем MySQL в автозапуск:

# chkconfig mysqld on

Стартуем MySQL:

# service mysqld start

Установим пароль MySQL для root :

# mysqladmin -u root password 'your-pass'

Где your-pass —  root пароль для MySQL. ВСЕ УСТАНОВИЛИ! Но для удобства добавим пару последних штрихов:

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

/home/captain/ — директория с вашими сайтами
/home/captain/test.com/ —  папка для сайта test.com
/home/captain/test.com/www/ — файлы сайта test.com
/home/captain/test.com/logs/ — логи сайта test.com
/home/captain/test.com/tmp/ — папка с временными файлами сайта test.com

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

Файл test.com.conf:

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

И так для каждого сайта что находится в директории /home/captain. Затем рестартанем апачик:

# service httpd restart

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

Настройка phpMyAdmin можно посмотреть перейдя по ссылке

Установка и настройка Apache, PHP, MySQL в CentOS закончена, советую посмотреть еще материал на моем сайте.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.