Создание CMS на Laravel: создание виртуального хоста, установка и настройка проекта
Доброго времени суток. Мы продолжаем создавать CMS используя Laravel. В этой статье у нас по плану: создание и установка проекта, создание виртуального хоста. Мы создадим один виртуальный хост на OpenServer (основная разработка), а второй на Ubuntu (мне он будет необходим для тестирования). Дальше мы настроим наш проект. Ну что, поехали?
Первое, что мы сделаем – это создадим папку, где будет наш проект и назову я ее «cms.loc». В моем случае это будет: «e:\OpenServer\domains\cms.loc»
Установка Laravel
Открываем консоль. (У меня это консоль в OpenServer) И переходим в папку с нашим проектом.
И приступаем к установке. Устанавливать будем с помощью Composer.
Выполняем в каталоге нашего проекта следующую команду.
composer create-project --prefer-dist laravel/laravel ./
Т.е. создаем проект Laravel в текущей папке.
Ждем. Все установка завершена. Следующим шагом. Давайте создадим виртуальный хост.
Создание виртуального хоста OpenServer
Заходим в настройки OpenServer, и переходим во вкладку «Домены». В поле «Имя домена» пишем наш домен в моем случае «cms.loc», а в поле «Папка домена» указываем путь к public папке нашего проекта (к папке, которая будет доступна для HTTP). И жмем «Добавить»
Жмем «Сохранить»
OpenServer предупредит нас, что он будет перезапущен. Жмем «Ок»
Все виртуальный хост OpenServer мы настроили. Осталось наш виртульный хост прописать в файле hosts, который расположен на системном диске в папке «\Windows\System32\drivers\etc\»
Для этого в конец файла добавить:
127.0.0.1 cms.loc
Сохранить файл. Проверяем в браузере в адресной строке вводим домен. В моем случае это «cms.loc»
Отлично все работает. Теперь давайте создадим виртуальный хост на Ubuntu.
Создание виртуального хоста Apache Ubuntu
У меня установлена на виртуальной машине Ubuntu 17.04
Версия php 7.0.18
Версия Apache 2.4.25
И версия MySQL 5.7.18
Отлично. Теперь давайте создадим виртуальный хост. Для этого в каталоге /etc/apache2/sites-available создаем файл конфигурации для виртуального хоста cms.conf
И добавим в него:
<VirtualHost *:80> ServerName cms.local ServerAdmin webmaster@cms.local DocumentRoot /var/www/cms ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory /> Options FollowSymLinks AllowOverride All </Directory> <Directory /var/www/cms> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
Сохраняем файл. Теперь в каталоге /var/www создадим подкаталог cms. Для этого выполним в терминале выполним команду:
mkdir /var/www/cms
Внимание скорее всего у вас будут проблемы с правами доступа. Выставьте права на каталог /var/www/
И в каталоге cms создадим файл index.php, выполнив в терминале команду:
touch /var/www/cms/index.php
В файл index.php добавим простой код:
<?php phpinfo();
Теперь включим наш виртуальный хост, для этого выполним команду
sudo a2ensite cms.conf
sudo systemctl reload apache2
И осталось только в файле /etc/hosts прописать наш хост
127.0.0.1 cms.local
Проверяем. Переходим в браузере по адресу cms.local
Открылась страница с информацией о php.
Мы с вами настроили виртуальный хост на Ubuntu. Более подробно о создании виртуального хоста на apache2 вы можете прочитать в статье «Настройка virtualhost на apache2». Теперь мы можем продолжить разработку CMS на Laravel.
Создание базы данных и настройка Laravel.
Для работы с MySQL я использую phpmyadmin. По работе с phpmyadmin вы можете посмотреть посты «Основы работы с phpMyAdmin» и «Настройка phpMyAdmin»
Открываем phpmyadmin и создаем новую базу данных cms
Дальше вводим название и жмем «Создать»
Все база данных создана. Теперь подключим наш проект к этой базе данных. В Laravel это делается очень просто.
В корне нашего проекта находится файл .env открываем его на редактирование.
- DB_CONNECTION отвечает за тип сервера с базой данных
- DB_HOST – адрес хоста, где расположен сервер с нашей базой данных
- DB_PORT – порт на котором работает наш сервер с базой данных
- DB_DATABASE – название базы данных
- DB_USERNAME и DB_PASSWORD – логин и пароль для доступа к базе данных
Меняем:
- DB_DATABASE=cms
- DB_USERNAME=root
- DB_PASSWORD=
В моем случае пользователь root и без пароля.
Сохраняем. Все мы подключили проект к базе данных.
Заключение.
Мы установили Laravel с помощью composer. Затем создали виртуальный хост на OpenServer. После наш проект стал доступен на локальной машине. Также мы с вами создали виртуальный хост на Ubuntu. Это необходимо для тестирования нашего проекта на UNIX подобных системах. Потом с помощью phpmyadmin создали базу данных и подключили к ней проект. Мы завершили этап установки и настройки. А в следующей статье мы создадим админку и сделаем так, чтобы адрес админки можно было менять из файла конфигурации.
Чтобы не пропустить выхода новых статей подписываемя: VK, twitter, facebook. И канал на youtube