Возникло острое желание создать локальный веб сервер с сайтом на Ubuntu, до этого был опыт использования open server для Windows, но он не портирован на Linux. Не теряя ни минуты залез в гугл, и что я увидел? Инструкций сотни, одна краше другой, но вот беда — не работает. Либо написаны для более ранних версий операционной системы, либо авторы просто копировали друг друга даже не проверяя. И каждую проблему приходилось решать часами.
Пройдя через все круги ада настройки, я нашел более универсальное и легкое в установке средство — xampp. Устанавливается в два клика, скачать можно отсюда. Устанавливайте лучше его.
Но раз я уже поставил себе отдельно lamp и phpmyadmin, то расскажу, как я это сделал, поехали!
Система: linux Ubuntu 16.04 LTS
Дата: Июль 2016 года
Для локального веб сервера нужны три главных компонента — Apach, MySQL и PHP.
Версии программного обеспечения на момент написания инструкции:
Apache2 — 2.4.18
MySQL — 5.7.12
PHP — 7.0
Проще всего будет установить lamp — Linux, Apache, MySQL, PHP пакет с помощью утилиты tasksel. Все в одном, очень приятно.
1) Устанавливаем tasksel, если его нет в системе.
sudo apt-get install tasksel
2) Теперь непосредственно сам lamp.
sudo tasksel install lamp-server
Во время установки MySQL предложит нам выбрать имя пользователя и пароль, стандартная процедура аутентификации.
После завершения можно проверить работоспособность, в браузере заходим на адрес локального сервера: localhost и видим стартовую страницу Apache — дело сделано.
Команды управления сервером Apache:
sudo service apache2 start sudo service apache2 stop sudo service apache2 reload sudo service apache2 restart
Минимум для локального сервера у нас готов, есть Apache и база данных. Можно создавать базу, цеплять к ней сайт и заниматься любимым делом. Ее можно создать напрямую в MySQL через консоль, а можно подсластить себе жизнь и воспользоваться графическим интерфейсом. Их на выбор целая куча, но мы будем ставить самый модный — phpmyadmin.
3) Установка phpmyadmin.
Версия на момент написания инструкции: PhpMyAdmin — 4.5.4.1
sudo apt-get install phpmyadmin php-mbstring php-gettext
Во время установки:
— выбираем apache2 и жмакаем enter;
— на вопрос «настроить базу данных phpmyadmin с помощью dbconfig-common?» отвечаем «да»;
— запрашивается пароль от базы данных — вводим пароль от MySQL, который выбрали в пункте 2;
— перезагружаем апач — sudo service apache2 reload
4) Создание базы данных для сайта.
Заходим в админку localhost/phpmyadmin. Перед нами список баз данных и обширные возможности по их администрированию, они нам пока не интересны. Вводим имя новой базы, например siteDB и жмем create. В принципе, все. Этого достаточно, переходим к настройке WordPress.
5) Настройка WordPress.
Версия на момент написания инструкции: WordPress — 4.5.3
Давайте сразу за компанию установим CMS. Чтобы появился локальный сайт нужно создать директорию /var/www/html/site, т.к. это область защищена от записи, это нужно сделать с помощью наутилуса, открытого с правами администратора.
sudo nautilus
Создаем директорию и распаковываем туда WordPress, скачанный с официального сайта. Заходим на наш сайтик localhost/site — видим приветствие от вордпреса, отвечаем на вопросы. В качестве базы данных выбираем созданную в 4 пункте, аккаунт и пароль от MySQL из 2 пункта. Вордпресс пожалуется, что директория с сайтом защищена от записи и предложит нам самим создать файлик wp-config.php, при этом предложит его содержимое. Копируем и создаем файл.
sudo gedit /var/www/html/site/wp-config.php
Возвращаемся на сайт продолжаем отвечать на вопросы и совсем скоро попадаем в админку вордпрес, поздравляю, наш сайт готов!
Возможные проблемы:
— При переходе по адресу localhost/phpmyadmin ошибка «Not found»
Решение:
Внесите в файл /etc/apache2/apache2.conf строчку Include /etc/phpmyadmin/apache.conf
Перезагрузите апач — sudo service apache2 restart
— Пустая страница по адресу localhost/phpmyadmin
Решение:
Убедитесь, что установлены пакеты php-mbstring и php-gettext.
sudo apt-get install php-mbstring php-gettext
Заключение
На этом все, локальный веб сервер установлен и готов к работе! А мы в свое очередь готовы к покорению новой дисциплины: веб-программирование. Спасибо за внимание!