Устраняем типичные ошибки в mysql

Базовая настройка сети

Смотрим все установленные сетевые адаптеры в системе:

ip a

В результате получаем что-то подобное:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:81:28:3c brd ff:ff:ff:ff:ff:ff
    inet 192.168.156.22/22 brd 192.168.159.255 scope global ens32
       valid_lft forever preferred_lft forever
3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:50:56:81:3f:22 brd ff:ff:ff:ff:ff:ff
    inet 10.243.254.68/26 brd 10.243.254.127 scope global ens34
       valid_lft forever preferred_lft forever

* Из примера видно, что в моем CentOS есть 3 сетевых карты — lo (локальная петля), ens32 и ens34 — сетевые Ethernet адаптеры.

Если нужно настроить сеть для адаптера ens32, открываем на редактирование следующий конфигурационный файл:

vi /etc/sysconfig/network-scripts/ifcfg-ens32

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

DEVICE=ens32
BOOTPROTO=static
IPADDR=192.168.0.155
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.54
DNS2=192.168.0.11
ONBOOT=yes

… а также для CentOS 8 добавим:

NM_CONTROLLED=yes

Основные опции

Опция Описание Возможные значения
DEVICE Имя сетевого адаптера Должно совпадать с именем в системе. В данном примере ens32
BOOTPROTO способ назначения IP-адреса static: ручное назначение IP, dhcp: автоматическое получение IP
IPADDR IP-адрес адрес, соответствующий вашей сети
NETMASK Сетевая маска должна соответствовать вашей сети
GATEWAY Шлюз по умолчанию IP-адрес сетевого шлюза
DNS1 Основной DNS-сервер IP-адрес сервера имен
DNS2 Альтернативный DNS-сервер IP-адрес сервера имен
ONBOOT Способ запуска сетевого интерфейса yes: автоматически при старте сервера, no: запускать вручную командой
NM_CONTROLLED Указываем, должен ли интерфейс управляться с помощью NetworkManager yes: управляется NetworkManager, no: не может управляться NetworkManager

Чтобы настройки применились, перезапускаем сетевую службу.

а) для CentOS 7:

systemctl restart network

б) для CentOS 8 вводим 2 команды:

systemctl restart NetworkManager

nmcli networking off; nmcli networking on

* в большей степени, это основное отличие версий 7 и 8. Чтобы команды смогли поменять настройки, для интерфейсов необходима настройка NM_CONTROLLED=yes.

Дополнительные опции (не обязательны для работы сети)

Опция Описание Возможные значения
DOMAIN Указываем домен, который необходимо добавлять к имени хостов, если он не указан в запросе явно. Строковое значение, соответствующее имени домена.
IPV4_FAILURE_FATAL Отключение сетевого интерфейса, если IP-адрес (v4) имеет неверную конфигурацию yes: отключать, no: не отключать
IPV6_FAILURE_FATAL Отключение сетевого интерфейса, если IP-адрес (v6) имеет неверную конфигурацию yes: отключать, no: не отключать
IPV6_AUTOCONF Разрешает или запрещает автоконфигурирование IPv6 с помощью протокола Neighbor Discovery yes: разрешить автоконфигурирование, no: запретить
IPV6INIT Говорит о возможности использовать сетевой интерфейс для адресации IPv6 yes: адресация может использоваться, no: не используется
PEERROUTES Задает приоритет настройки шлюза по умолчанию, полученного от DHCP yes: маршрут от DHCP важнее, чем назначенный вручную, no: важнее маршрут, заданный вручную
IPV6_PEERROUTES Задает приоритет настройки шлюза по умолчанию, полученного от DHCP (для IPv6)
UUID Уникальный идентификатор сетевого интерфейса. Его можно сгенерировать самостоятельно командой uuidgen Строка из 32-х символов в формате 8-4-4-4-12.
Например: fca8cc84-6f21-4bac-9ccb-36f281321ba4

Настройка apache в CentOS 7

Теперь приступим к установке apache. В CentOS 7 это делается очень просто:

# yum install -y httpd

Добавляем apache в автозагрузку:

# systemctl enable httpd

Запускаем apache в CentOS 7:

# systemctl start httpd

Проверяем, запустился ли сервер:

# netstat -tulnp | grep httpd
tcp6       0      0 :::80                   :::*                    LISTEN      21586/httpd

Все в порядке, повис на 80-м порту, как и положено. Уже сейчас можно зайти по адресу http://ip-address и увидеть картинку:

Теперь займемся настройкой apache. Я предпочитаю следующую структуру веб хостинга:

/web раздел для размещения сайтов
/web/site1.ru/www директория для содержимого сайта
/web/site1.ru/logs директория для логов сайта

Создаем подобную структуру:

# mkdir /web && mkdir /web/site1.ru && mkdir /web/site1.ru/www && mkdir /web/site1.ru/logs
# chown -R apache. /web

Дальше редактируем файл конфигурации apache — httpd.conf по адресу /etc/httpd/conf. Первым делом проверим, раскомментированна ли строчка в самом конце:

IncludeOptional conf.d/*.conf

Если нет, раскомментируем и идем в каталог /etc/httpd/conf.d. Создаем там файл site1.ru.conf:

# mcedit /etc/httpd/conf.d/site1.ru.conf
<VirtualHost *:80>
 ServerName site1.ru
 ServerAlias www.site1.ru
 DocumentRoot /web/site1.ru/www
 <Directory /web/site1.ru/www>
 Options FollowSymLinks
 AllowOverride All
 Require all granted
 </Directory>
 ErrorLog /web/site1.ru/logs/error.log
 CustomLog /web/site1.ru/logs/access.log common
</VirtualHost>

Перезапуск apache в centos

Теперь делаем restart apache:

# systemctl restart httpd

Если возникли какие-то ошибки — смотрим лог apache /var/log/httpd/error_log. Если все в порядке, то проверим, нормально ли настроен наш виртуальный хост. Для этого создадим в папке /web/site1.ru/www файл index.html следующего содержания:

# mcedit /web/site1.ru/www/index.html
<h1>Апач настроен!</h1>
# chown apache. /web/site1.ru/www/index.html

Дальше в винде правим файл hosts, чтобы обратиться к нашему виртуальному хосту. Добавляем туда строчку:

192.168.1.25 site1.ru

где 192.168.1.25 ip адрес нашего веб сервера.

Теперь в браузере набираем адрес http://site1.ru. Если видим картинку:

значит все правильно настроили. Если какие-то ошибки, то идем смотреть логи. Причем в данном случае не общий лог httpd, а лог ошибок конкретного виртуального хоста по адресу /web/site1.ru/logs/error.log.

Сразу же обращу ваше внимание на настройку ротации логов виртуальных хостов. Частенько бывает, что если сразу не настроишь, потом забываешь

Но если сайт с хорошей посещаемостью, то логи будут расти стремительно и могут занять очень много места. Лучше настроить ротацию логов веб сервера сразу же после создания. Сделать это не сложно.

Чтобы настроить ротацию логов виртуальных хостов, необходимо отредактировать файл /etc/logrotate.d/httpd. Он создается во время установки apache и включает в себя настройку ротации стандартного расположения логов. А так как мы перенесли логи каждого виртуального хоста в индивидуальную папку, необходимо добавить эти папки в этот файл:

# mcedit /etc/logrotate.d/httpd
/web/*/logs/*.log
/var/log/httpd/*log {
 missingok
 notifempty
 sharedscripts
 delaycompress
 postrotate
 /bin/systemctl reload httpd.service > /dev/null 2>/dev/null || true
 endscript
}

Мы добавили одну строку в самое начала файла. Теперь логи всех виртуальных хостов в папке /web будут ротироваться по общему правилу.

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

Если вам необходимо организовать работу сайта по протоколу https, то воспользуйтесь руководством по настройке ssl в apache.

Настройка сервера MySQL на Windows

Сервер MySQL 8.0.19 готов к настройке. Закончите процесс, нажав кнопку Далее.

Окончание установки MySQL

1. Высокая Доступность

Первый параметр конфигурации влияет на доступность базы данных. Это позволяет вам решить, хотите ли вы настроить автономный сервер MySQL или кластер серверов InnoDB для улучшения доступности. В данном случае мы выбрали классический вариант с одним сервером.

Выбор режима базы данных

2. Тип и сеть

Раздел тип и сеть используется для определения нескольких основных функций.

Параметр тип конфигурации позволяет выбрать один из трех типов конфигурации сервера.

  • Компьютер разработки,
  • серверный компьютер
  • выделенный компьютер

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

В этом примере мы создадим выделенный сервер MySQL.

Раздел тип и сеть при установки базы данных

Вкладка Тип и Сеть также может определить порт, который прослушивает сервер MySQL. По умолчанию используется порт 3306, который может быть изменен в соответствии с вашими потребностями.

Установив флажок Показать дополнительные параметры и параметры ведения журнала, вы можете установить дополнительные параметры ведения журнала на более позднем этапе.

Нажмите кнопку Далее, когда вы выберете параметры, которые, по вашему мнению, соответствуют вашим требованиям.

Показать дополнительные параметры и параметры ведения журнала

3. Способ Аутентификации

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

Использовать надежную аутентификацию паролем

4. Учетные записи и роли в MySQL

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

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

Учетные записи и роли

5. Служба SQL в Windows

Определив MySQL как службу Windows, теперь она может запускаться автоматически при старте системы Windows.

Если вы решите запустить MySQL как исполняемое приложение, тогда вам нужно будет настроить его вручную.

Служба SQL в Windows

6. Параметры Логирования (Необязательно)

Если вы выбрали опцию Показать расширенное ведение журнала на вкладке Тип и Сеть, то теперь вы можете настроить параметры журнала MySQL.

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

Параметры Логирования Базы Данных

Нажмите кнопку Далее, чтобы перейти в раздел Дополнительные параметры.

7. Дополнительные Опции (Опционально)

Дополнительные параметры включают в себя настройку уникального идентификатора сервера и типа регистра (Нижний/Верхний), который будет использоваться для Имен таблиц.

Эти параметры доступны только в том случае, если вы установили флажок Показать дополнительные параметры на вкладке Тип и Сеть.

8. Подтвердить Конфигурацию Сервера

Вы успешно настроили сервер MySQL и должны подтвердить свои установки.

На экране появится обзор шагов установки. Нажмите кнопку Выполнить, чтобы применить конфигурацию.

Подтвердить Конфигурацию Сервера

Система нас информирует после завершения процесса установки и настройки. Нажмите кнопку Далее, чтобы продолжить процесс установки.

Далее, чтобы продолжить процесс установки

1 comment

Excelente me funciono el comando tal cual, muchas gracias.

Сегодня займемся поднятием одной из наиболее востребованных ролей любого linux сервера, которые занимают в этом функциональном сегменте лидирующую роль. Настройка web сервера CentOS 7 на базе связки популярного http сервера apache, интерпретатора php и сервера баз данных mysql, или коротко — установка lamp. Данная связка является самой популярной конфигурацией на сегодняшний день среди веб хостинга. Хотя последнее время ей на пятки наступает та же компания, но на базе nginx, возможно уже и опередила, точных данных у меня нет на этот счет.

Данная статья является частью единого цикла статьей про сервер Centos.

Шаг #2: Установка веб-сервера Nginx

Nginx (энджин экс) можно установить как минимум двумя способами. 

Способ #1: Из репозитория EPEL-release

Так как Nginx не входит в набор пакетов доступных из базового репозитория, то скачать и установить его вы сможете его из репозитория EPEL-release.
EPEL-release, в некоторых дистрибутивах, может быть не установлен по-умолчанию, поэтому для начала нужно убедится, что он у вас есть. 

или

Репозиторий Epel-release установлен

Если вы не видите никаких результатов для вышеуказанных команд, тогда EPEL репозитория у вас нет и его нужно установить.

Далее устанавливаем сам веб-сервер nginx

Минус данного способа в том, что часто в EPEL репозитории хранится устаревшая версия пакета Nginx. Установленную версию можно проверить следующей командой:

Способ #2: Из собственного репозитория Nginx

Данный способ позволит установить последнюю стабильную версию Nginx прямо с сайта http://nginx.org, который мы укажем в репозитории как источник пакета.

Для этого необходимо создать новый файл в каталоге .

Файл нужно наполнить следующим содержимым:

name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

1
2
3
4
5

nginx

name=nginx repo

baseurl=httpnginx.orgpackagescentos$releasever$basearch

gpgcheck=

enabled=1

Теперь установим Nginx, однако в качестве источника пакета автоматически будет выбран наш, только что созданный, репозиторий.

Включим Nginx и добавим его в автозапуск при перезагрузке системы.

Уже сейчас можно проверить работоспособность сервера. Наберите ip-адрес вашей машины в адресной строке браузера и вам будет выдана проверочная страница .

Nginx запущен и исправно работает

Коротко о базе данных MySQL

Представляет собой реляционную СУ базами данных. Создана посредством языков программирования С и С++. Служит прекрасным инструментом для оптимизации работы веб-ресурсов и приложений.

Чтобы новичку было проще понять, что такое база данных, приведет элементарный пример. Пользователю нужно найти изображение в телефоне. Для этого он открывает Галерею. В данном случае картинка – это данные, а Галерея – база данных.

По схожему принципу устроены многие веб-ресурсы, где наличествует подключение форм регистрации и систем оформления заказов. После прохождения регистрации на сайте в базе данных появляется личная информация, переданная пользователем ресурса. Благодаря этому юзер может вернуться на сайт в любой момент и даже отредактировать свои личные данные для входа.

Ведение веб-ресурса без базы данных – весьма трудоёмкий и нерациональный процесс. С помощью БД можно грамотно структурировать информацию и заполучить к ней быстрый доступ.

Чаще всего для администрирования данных пользователи выбирают такие инструменты, как:

  • MySQL;
  • PostgreSQL;
  • Microsoft SQL;
  • И другие.

Система управления БД MySQL особенно приходится по душе тем, кто любит упорядочивать информацию в табличном виде. Стоит выполнить запрос, и информация извлекается из таблиц. Информация, имеющаяся в таблицах, строго упорядочена. Расположение строк напрямую зависит от данных, размещенных в таблице – при необходимости оно может видоизменяться.

Процесс заполнения таблиц обеспечивает SQL (язык программирования).

Чем может MySQL:

  1. Быстрый доступ к информации;
  2. Быстрая обработка информации;
  3. Надежная защита данных;
  4. Бесплатное пользование;
  5. Понятный интерфейс;
  6. MySQL совместим с ОС Windows и Linux;
  7. Есть шифрование личных данных (паролей).

А теперь перейдем от теории к практике.

Создание пользователя

Заходим в консоль mysql от имени root.

После этого можно приступать к реализации главной идеи. То есть, добавление нового юзера посредством CREATE USER. Ниже мы распишем синтаксис этой команды.

Следуя вышеуказанному синтаксису, юзеру необходимо задать следующую информацию: имя пользователя и тот хост, откуда можно пройти авторизацию. В текущей ситуации указание символа «%» – способ обозначения всех возможных хостов.

Теперь разберем, как создать нового локального юзера через терминал. Просто вводим в строке текст следующего вида:

Соответственно, чтобы добавить юзера, доступ к которому появится со всевозможных хостов, нужно поменять в команде «localhost» на «%», как это уже упоминалось ранее.

Теперь зададим команду для просмотра всех добавленных юзеров. Она выглядит следующим образом:

Готово!

Как дать права пользователю

Далее необходимо позаботиться о том, чтобы для нового юзера MySQL были назначены правильные привилегии. Для этих целей будет применять специальная команда. Она прописывается так:

Какие права назначать пользователю системы – вопрос индивидуальный. Каких-либо чётких рекомендаций здесь быть не может. Единственное, о чем стоит упомянуть, так это о предоставлении всех прав над базой данных. Возможно, кому-то подойдет именно такой вариант. Как это сделать? Рассмотрим ниже.

Чтобы открыть окно с данными о привилегиях пользователя, необходимо выполнить следующее действие:

На этом еще не всё! После выполненных действий крайне важно произвести обновление таблицы прав пользователей. Это делается так:

Пользователями с правами root mysql

Рассмотрим еще один вероятный сценарий развития событий. На тот случай, если кому-нибудь понадобится создать пользователя с правами root MySQL. Потребуется еще раз воспользоваться терминалом для реализации задуманного:

Итак, водим текст такого вида:

Теперь пользователь имеет все необходимые привилегии. Однако остаётся маленькая загвоздка. Она заключается в отсутствии возможности предоставлять права другим пользователям от имени этого юзера. Текущая проблема может быть решена так:

Готово! Суперпользователь MySQL добавлен, все необходимые привилегии предоставлены.

Заключение

Инструкция по созданию пользователя MySQL, предоставленная в данном материале, актуальна для Ubuntu и других дистрибутивов Debian, Centos…

Установка MariaDB на сервере CentOS 7 / RHEL

MariaDB  — обновленная замена для сервера MySQL. На RHEL / CentOS 7 вместо MySQL  используется система управления базами данных MariaDB. Введите следующую yum команду для установки MariaDB сервера:

Shell

yum install mariadb-server mariadb

1 yum install mariadb-server mariadb

Для запуска MariaDB, используйте команду:

Shell

systemctl start mariadb.service

1 systemctl start mariadb.service

Чтобы убедиться, что сервис MariaDB запускается автоматически во время загрузки, введите:

Shell

systemctl enable mariadb.service

1 systemctl enable mariadb.service

Вывод команды

Shell

ln -s ‘/usr/lib/systemd/system/mariadb.service’ ‘/etc/systemd/system/multi-user.target.wants/mariadb.service’

1 ln-s’/usr/lib/systemd/system/mariadb.service»/etc/systemd/system/multi-user.target.wants/mariadb.service’

Чтобы остановить / перезапуск и отключить MariaDB используйте следующие команды:

Shell

sudo systemctl stop mariadb.service #— Остановить mariadb сервер
sudo systemctl restart mariadb.service #— Перзапусить mariadb сервер
sudo systemctl disable mariadb.service #— Отключить автозагрузку mariadb сервер
sudo systemctl is-active mariadb.service #— Проверка запущен ли сервер?

1
2
3
4

sudo systemctl stop mariadb.service#— Остановить mariadb сервер

sudo systemctl restart mariadb.service#— Перзапусить mariadb сервер

sudo systemctl disable mariadb.service#— Отключить автозагрузку mariadb сервер

sudo systemctl is-active mariadb.service#— Проверка запущен ли сервер?

Первый запуск MariaDB

Введите следующую команду:

Shell

/usr/bin/mysql_secure_installation

1 /usr/bin/mysql_secure_installation

Отвечая на вопросы Вы сможете настроить первоначальную безопасность БД

Тюнинг веб-сервера

PHP

Открываем на редактирование следующий файл:

vi /etc/php.ini

И правим следующее:

upload_max_filesize = 256M
post_max_size = 256M
short_open_tag = On
date.timezone = «Europe/Moscow»

Перезапускаем php-fpm и httpd:

systemctl restart php-fpm

systemctl restart httpd

NGINX

Открываем на редактирование следующий файл:

vi /etc/nginx/nginx.conf

И правим следующее:

worker_processes  auto;

И внутри секции http добавляем:

client_max_body_size 256M;

После перезапускаем nginx:

systemctl restart nginx

Подробнее про тюнинг NGINX в статье Практические советы по тюнингу веб-сервера NGINX.

Postfix

Чтобы отправляемая почта меньше попадала в СПАМ, необходимо выполнить следующие шаги:

  1. Прописать PTR-запись.
  2. Создать запись SPF.
  3. Настроить DKIM. 

Подключение к MySQL через консоль

Получить информацию об установленной версии MySQL

Для подключения к mysql в консоли наберите команду

  • h — хост c MySQL. Если подключаемся с локальной машины, параметр можно опустить
  • u — имя пользователя MySQL (root или другой пользователь MySQL)
  • p — пароль, который будет предложено ввести после нажатия enter

Приглашение командной строки изменится, это значит, сервер MySQL ждёт от вас команд.

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

Для отключения от MySQL нужно написать exit или (в unix-системах) нажать комбинацию клавиш ctrl+с.

Для вывода всех баз данных на сервере используйте команду show databases.

Выберите нужную базу данных командой use.

Теперь можно вводить запросы.

Чтобы подключиться к MySQL и сразу выбрать нужную базу

Установка PHP и PHP-FPM

Устанавливаем PHP и php-fpm следующей командой:

yum install php php-fpm

* В CentOS 7 будет установлена php версии 5.4. Если необходимо установить PHP 7, читайте статью Как установить PHP 7 на CentOS 7.

Запускаем php-fpm и разрешаем его автозапуск:

systemctl enable php-fpm —now

Настройка связки NGINX + PHP

Открываем файл для настройки виртуального домена по умолчанию. В зависимости от версии CentOS 7 пути могут различаться:

а) вариант 1:

vi /etc/nginx/conf.d/default.conf

б) вариант 2:

vi /etc/nginx/nginx.conf

в) вариант 3:

vi /etc/nginx/nginx.conf.default

В секции location редактируем параметр index на следующее значение:

    location / {
        index  index.php index.html index.htm;
    }

* добавляем index.php в начало списка. Если параметра index нет, создаем его.

А внутри секции server добавим следующее:

    location ~ \.php$ {
        set $root_path /usr/share/nginx/html;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $root_path$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_param DOCUMENT_ROOT $root_path;
    }

* где /usr/share/nginx/html — корневой путь хранения скриптов; unix:/run/php-fpm/www.sock — файл для взаимодействия с php-fpm.

Открываем настройки php-fpm:

vi /etc/php-fpm.d/www.conf

Проверяем, настройки параметров:

listen = /run/php-fpm/www.sock

listen.group = nginx

* listen должен иметь значение /run/php-fpm/www.sock (путь до сокетного файла, который мы указали в конфигурационном файле nginx); listen.group указывает, какую группу назначить сокетному файлу.

… иначе, меняем значение. После перезагружаем php-fpm:

systemctl restart php-fpm

* в данном примере мы указываем, что php-fpm будет использовать сокетный файл /run/php-fpm/www.sock для взаимодействия. Этот файл мы указали выше в настройке NGINX.

Проверяем правильность настроек nginx:

nginx -t

И перезагружаем его:

systemctl restart nginx

Создаем index.php в каталоге сайта по умолчанию со следующим содержимым:

vi /usr/share/nginx/html/index.php

<?php phpinfo(); ?>

Открываем в браузере IP-адрес нашего сервера. Теперь мы должны увидеть сводную информацию по PHP и его настройкам, например:

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

Работа с текстовыми файлами, find и grep

less — программа для просмотра содержимого текстовых файлов с возможностью его прокрутки. Умеет искать текст по шаблону и подсвечивать результат. Быстро работает с файлами больших размеров, т.к. не нуждается в чтении всего файла перед стартом.

После открытия текстового файла внутри утилиты можно набирать разные команды (они отображаются в левом нижнем углу), рассмотрим некоторые из них.

Для вызова справки внутри утилиты воспользуйтесь клавишей h.

Поиск внутри утилиты:

В режиме поиска:

tail — утилита, выводящая несколько последних строк файла, head — несколько первых строк.

Отображение последних 10 строк файла:

По умолчанию tail выводит именно 10 последних строк.

iconv — преобразование кодировки файла

Find — команда для поиска файлов и каталогов на основе специальных условий.

Команда grep — поиск по шаблону в файле.

Additional Tips

If you ever need to update your MySQL server, just do it though Yum by simply upgrading the package:

sudo yum update mysql-server

This update process also happens when you update the entire system using Yum. Once the server is updated, it automatically restarts, it is important to run “mysql_upgrade” in order to have MySQL perform check with its plugins to make sure that everything will continue to run smoothly.

If you need your MySQL server to run every time you boot the machine up, enter the following command:

sudo systemctl enable mysqld.service

Now when you restart your machine, your MySQL server will be automatically started.

If you have followed this tutorial correctly, your CentOS 7 machine should now have a copy of MySQL server running on it. From here, you can work with databases, add plugins and extensions to make working with these databases easier, and so on.

CentOS VPS

PS. If you liked this post, feel free to share it with your friends by using the social media share shortcuts below, or simply leave a comment. Thanks.

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
IP-файл
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: