Продолжаем создавать хостинг для сайта на старом компе.
Скачать исходники для статьи можно ниже
Минимальные требования на установку Ubuntu Server:
Пригодиться ниже:
1. Чтобы ввести в командную строку предыдущие запросы/команды можно нажать стрелку вверх или вниз и выбрать предыдущий нужный запрос/команду.
2. Чтобы остановить ping нужно нажать Ctrl+C
Чтобы потренироваться можно установить Ubuntu Server на виртуальную машину (VirtualBox).
Почему Ubuntu?
– Используется примерно 20 миллионами пользователей.
– Является 1-м в списке самых популярных дистрибутивов Linux для веб-серверов.
– Ubuntu используется в качестве основной ОС на серверах проекта “Википедия”.
– Новые версии дистрибутива выходят каждые полгода и поддерживаются обновлениями безопасности в течение 9 месяцев.
– Версии LTS, выпускаемые раз в 2 года, поддерживаются в течение 5 лет – как серверные, так и десктопные варианты.
Так как сервера находятся в основном в серверной (для обеспечения звукоизоляции сервера, его кондиционирования и т.д.), то к серверу удобно подключаться удаленно через защищённое соединение – SSH. Для соединения с сервером через SSH часто используют бесплатную программу PuTTY:
Для того, чтобы подключиться через SSH нам нужно узнать ip адрес, для этого воспользуемся командой ifconfig:
Вводим ip в программе PuTTY:
И соединяемся с сервером через SSH принимая ключ безопасности:
А теперь приступаем непосредственно к настройке сервера!
Как только Вы установили сервер, его лучше всего обновить. Для обновления используются следующие команды:
sudo apt-get update -y
После обновления нужно перезагрузить систему с помощью команды reboot.
А выключить систему можно с помощью команды poweroff.
Как можно перемещаться между папками, смотреть содержимое папок:
Например:
ls / cd / ls /home
Также есть визуальный файловый менеджер, который нужно установить:
sudo apt-get install mc
, а после можно запустить с помощью команды mc:
sudo mc
Чтобы выйти из Midnight Commander нажимаем F-10:
Приступаем к установке Apache:
sudo apt-get install apache2
После установки Apache2, если открыть браузер и ввести в него ip адрес, то откроется следующая страница:
Узнать ip можно с помощью команды ifconfig:
Согласитесь, что людям трудно набирать ip адреса сайтов, чтобы зайти на них, поэтому придумали DNS сервера – где к ip ардесу сайта привязано доменное имя сайта, например: mnogoblog.ru. Одному ip адресу может соответствовать несколько доменных имен.
В Windows можно открыть файл C:\Windows\System32\drivers\etc\hosts
и прописать в нём следующее:
То есть на своей локальной машине мы сконфигурировали свой DNS сервер.
Теперь в браузере можно вводить не ip адрес, а имя сайта (http://site1):
Теперь выясним в какой папке лежит наш сайт, как нам его менять и как сделать на сервере несколько сайтов.
Рассмотрим следующие команды:
Сайт лежит в следующей папке:
/var/www/html/
Создадим отдельную папку для первого сайта и присвоим права 755 к папке и всем файлам, которые в ней лежат, а также сделаем пользователя admin владельцем данной папки:
sudo mkdir /var/www/site1 sudo chmod -R 755 /var/www/site1 sudo chown -R admin:admin /var/www/site1
Создадим индексный файл в папке сайта:
nano /var/www/site1/index.html
Введем следующий код:
Сохраняем файл – жмем Ctrl+O и Enter. А затем выходим F-10.
Далее нам нужно добавить и включить виртуальный хост. Для этого залазим в настройки Apache2.
Копируем файл с сохранением прав доступа:
sudo cp -p /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/site1.conf
И открываем файл:
sudo nano /etc/apache2/sites-available/site1.conf
Меняем в нём:
На следующее:
Нажимаем Ctrl+O и Enter, сохраняя изменения. Далее жмем Ctrl+X и выходим из редактора.
ПРИМЕЧАНИЕ: Когда Вы подключите статический ip адрес, то в строчке ServerName прописываем вместо site1 статический ip адрес.
Включаем виртуальный хост:
sudo a2ensite site1.conf
Перезагружаем Apache2:
sudo service apache2 restart
Теперь открываем браузер:
Далее устанавливаем php.
sudo apt-get install php
Создадим php файл на нашем сайте:
nano /var/www/site1/test.php
Вводим следующий код:
Заходим на наш сайт и видим следующее:
PHP работает!
Посмотреть версию PHP – команда phpinfo.
Устанавливаем Базы Данных – MariaDB:
sudo apt-get install mariadb-server mariadb-client
Далее запускаем настройку mysql сервера:
sudo mysql_secure_installation
Сменить ли пароль root? Y
Удалить ли анонимных пользователей? Y
Отключить ли возможность пользователя root подключаться удаленно? N
Удалить ли тестовые БД? Y
Перезагрузить ли таблицу с привилегиями? Y
Чтобы открыть доступ к БД нужно ввести следующую строчку:
Вводим следующие 2 строчки (как на картинке выше):
sudo -i echo "update user set plugin='' where User="root"; flush privileges;" | mysql -u root -p mysql
После чего должен потребовать пароль от БД, вводим пароль.
Не забываем выйти из под root:
exit
Должен написать “выход”.
А теперь с помощью данной команды можно подключится к БД:
mysql -uroot -p
Попросит ввести пароль от БД, вводим его. Всё мы вошли в БД.
Чтобы выйти из БД пишем следующее (не забываем ставить ; в конце строчки):
exit;
Должен написать Bye (пока).
Есть удобное программное обеспечение – phpMyAdmin для доступа к БД с графическим интерфейсом, установим его:
sudo apt-get install phpmyadmin php-mbstring php-gettext
В диалоговом окне на вопрос: Для какого веб-сервера мы настраиваем? выбираем apache2 (выбрать с помощью пробела) и нажат Enter.
Следующий вопрос: Настроить БД для phpmyadmin с помощью dbconfig-common? Отвечаем: Да
Далее вводим пароль и подтверджадем пароль для phpMyAdmin.
Возможно вылезет сообщение: При установке базы данных произошла ошибка: Выбираем “Игнорировать”.
Все готово, установка завершена!
Теперь phpMyAdmin открывается по адресу:
http://site1/phpmyadmin
Если виден только код, а не страничку входа, то набираем следующие команды:
sudo apt remove libapache2-mod-php* sudo apt-get install libapache2-mod-php
После этого станица входа в phpmyadmin заработает!
Далее давайте установим wordpress:
Переходим на официальный сайт wordpress:
“ru.wordpress.org/download/”
и копируем адрес ссылки “Скачать .tar.gz”:
Далее с помощью команды wget закачиваем wordpress:
wget https://ru.wordpress.org/latest-ru_RU.tar.gz
Архив скачается в домашнюю папку.
Вводим команду ls для просмотра папки:
Далее разархивируем архив с помощью команды tar:
С помощью команды ls посмотрим, что у нас получилось:
Сейчас давайте переместим содержимое папки wordpress в папку нашего сайта с помощью команды – mv:
Но сначала удалим из папки сайта ненужные файлы.
Откроем файловый менеджер Midnight Commander и перейдем в папку var/www/site1:
sudo mc
Здесь удалим ранее созданные нами файлы index.html и test.php при помощи клавиши F-8.
Нажимаем F-10, чтобы выйти из Midnight Commander.
Далее перемещаем все содержимое папки wordpress в папку нашего сайта:
mv wordpress/* /var/www/site1
Сейчас открываем браузер и обновляем страничку нашего сайта:
Откроется окно установки wordpress.
Теперь нужно создать Базу Данных (БД) и пользователя БД для сайта.
Для этого заходим в phpMyAdmin открывается по адресу:
http://site1/phpmyadmin
Переходим в верхнем меню во вкладку “Базы данных”, вводим имя БД “site1” и жмем кнопку “Создать”:
Далее в верхнем меню переходим во вкладку “Привилегии” и жмем на ссылку “Добавить учетную запись пользователя”:
Вводим имя пользователя БД, пароль и ставим галочку в пункте “Глобальные привилегии” (Отметить все):
И жмём кнопку “Вперёд”.
Всё мы создали БД (в нашем примере: site1) и пользователя БД (в нашем примере: admin с паролем admin).
Заходим в браузер:
И жмём кнопку “Вперёд” и вводим имя пользователя и пароль БД:
И жмём кнопку “Отправить”.
Откроется следующее окошко с сообщением, что нужно создать файл wp-config.php со следующим содержимым:
Нужно скопировать предлагаемый код.
С помощью команды nano создаем файл wp-config.php и вставляем в него скопированный код:
nano /var/www/site1/wp-config.php
Сохраняем файл – жмем Ctrl+O и Enter. А затем выходим F-10.
Открываем браузер и жмем “Запустить установку”:
Откроется следующее окошко, где вводим Имя сайта, пользователя, пароль, e-mail:
И жмем “Установить wordpress”.
Сайт на wordpress готов!
PS: Подключил статический ip адрес, настроил А запись, сайт работает, но вот следующую настройку не делал:
Где нужно прописать статический адрес – в файле interfaces:
sudo nano /etc/network/interfaces
Нужно ввести следующее:
Сложно, но добротное завершение. Благодарю автор