В следващата статия ще разгледаме Laravel и инсталирането му на Ubuntu. Става въпрос за a PHP рамка с отворен код много популярен. Той има за цел да улесни разработването на приложения. Ако търсите нова PHP рамка за развийте вашите проекти, трябва да опитате Laravel.
Laravel е рамка за уеб приложения с изразителен и елегантен синтаксис, който ще направи развитието приятно и творческо изживяване. Laravel се опитва да улесни разработването на общи задачи използва се в повечето уеб проекти, като удостоверяване, маршрутизация, сесии и кеширане.
Тази рамка има за цел да направи процеса на разработка приятен за разработчика, без да жертва функционалността на приложението. Laravel е достъпен и предоставя мощни инструменти, необходими за големи и стабилни приложения. Той ще ни предостави контролни контейнери, експресивна система за миграция и плътно интегрирана поддръжка на модулно тестване, която ще ни даде инструментите, от които всеки ще се нуждае, за да изгради повереното му приложение.
Преди да започнем, винаги е добра идея да се уверим, че съществуващите шрифтове и софтуер на нашия компютър са актуални. В терминала (Ctrl + Alt + T) ще напишем:
sudo apt-get update && sudo apt-get upgrade
Трябва да кажа, че с това, което ще напиша тук, инсталирах тази рамка в Ubuntu 16.04, 17.10 и 18.04. Преди да започнете с инсталацията на Laravel, ще трябва да инсталираме други важни компоненти.
Инсталирайте PHP 7.1
Следващата стъпка е инсталирайте PHP заедно с различни допълнителни пакети Те са полезни, ако ще работите с Laravel. В терминала (Ctrl + Alt + T) ще напишем:
sudo add-apt-repository ppa:ondrej/php sudo apt-get update && sudo apt-get install php7.1 php7.1-mcrypt php7.1-xml php7.1-gd php7.1-opcache php7.1-mbstring
Въпреки че самото хранилище на Ubuntu има наличен PHP, Намирам за по-добра идея да добавите хранилище на трети страни тук, защото се актуализира по-често. Можете да пропуснете тази стъпка и да използвате версията на Ubuntu, ако предпочитате това.
Инсталирайте Apache
Време е за инсталирайте сървър Apache. Също така ще трябва да инсталираме пакета libapache2-mod-php7.1, за да свържем Apache с PHP.
sudo apt-get install apache2 libapache2-mod-php7.1
Инсталирайте Laravel
Преди да се задълбочите в инсталацията, ще е необходимо да инсталирате Git версии.
За да инсталирате Laravel, първо трябва да инсталираме Composer. Това е инструмент за управление на зависимости в PHP, който ще ви позволи да пакетирате всички свързани необходими библиотеки. За да инсталирате Laravel и всички негови зависимости, е необходим Composer. За да инсталираме този инструмент, в терминала (Ctrl + Alt + T) ще трябва да напишем следните команди (Ctrl + Alt + T):
cd /tmp curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
Командата curl изтегля пакета композитор.фар в нашата директория / Tmp. Но тъй като бихме се интересували повече от това композиторът да се изпълнява глобално, трябва да го преместим в директорията / ЮЕсАр / местни / хамбар. Завърших всичко това сега можем да стартираме композитор от всяко място в нашата операционна система.
За да инсталираме Laravel, ще отидем в публичната html директория във вашата система. Тъй като сме на Ubuntu и използваме Apache, ще го инсталираме в директорията / Var / WWW / HTML.
cd /var/www/html sudo composer create-project laravel/laravel tu-proyecto - -prefer-dist
Горната команда ще създаде директорията «your-project» с инсталацията на Laravel. Composer използва git за изтегляне и инсталиране на всички пакети и модули, които Laravel изисква да работиш.
Конфигуриране на Apache
След като инсталирахме Laravel, преминаваме към конфигуриране на уеб сървър Apache.
Следващата стъпка е предоставете съответните разрешения на директорията на проекта. За това трябва да разрешим достъп до www-групата данни и да предоставим разрешения за запис в директорията за съхранение. В терминала (Ctrl + Alt + T) ще напишем:
sudo chgrp -R www-data /var/www/html/tu-proyecto sudo chmod -R 775 /var/www/html/tu-proyecto/storage
Сега ще отидем в директорията / etc / apache2 / sites-available и ще използваме следната команда за създайте конфигурационен файл за нашата инсталация Laravel:
cd /etc/apache2/sites-available sudo nano laravel.conf
Когато се отвори nano, ние ще добавим следното съдържание към файла. Ще има заменете yourdomain.tld с името на домейна на вашия уебсайт във файла. Ще има и преименувайте проекта чрез които сме създали преди това. В случай, че го използвате локално, напишете localhost.tld.
<VirtualHost *:80> ServerName tudominio.tld ServerAdmin webmaster@localhost DocumentRoot /var/www/html/tu-proyecto/public <Directory /var/www/html/tu-proyecto> AllowOverride All </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
Сега трябва да активираме този новосъздаден .conf файл. Ние също ще трябва деактивирайте .conf файла по подразбиране който се инсталира с инсталацията Apache. Освен това трябва активиране на mod_rewrite за да могат пермалинковете да работят правилно.
sudo a2dissite 000-default.conf && sudo a2ensite laravel.conf && sudo a2enmod rewrite
И в крайна сметка рестартираме apache с:
sudo service apache2 restart
С това вашата инсталация на Laravel вече е завършена. Посетете IP адрес или име на домейн на вашия сървър с уеб браузър (в моя случай http: // localhost). Ако всичко е минало добре, ще видите страницата Laravel по подразбиране, от която можете да получите достъп до документация от тази рамка и други опции.
Много добре до тук;
CD / TMP
къдряне -sS https://getcomposer.org/installer | php
sudo mv composer.phar / usr / local / bin / composer
Където вече не служи
Защо вече не работи от там? Каква грешка ви показва?
До този момент всичко вървеше добре
sudo composer create-project laravel / laravel your-project - -prefer-dist
При което се появява следната грешка:
Не стартирайте Composer като root / супер потребител! Вижте https://getcomposer.org/root За подробности
[Symfony \ Component \ Console \ Exception \ RuntimeException]
Опцията "-p" не съществува.
Стартирайте го без судо.
Проблемът е, че има грешка в командата. Трябва да се присъедините към 2 «-», защото ако не го вземете като «-p». Надявам се, че коментарът работи, така го накарах да работи.
Имам въпрос, всичко ми помогна, всичко, Laravel се отваря, но искам да създам друг проект, единственото, което направих, беше да направя всичко от създаването на проекта с композитор и да го кръстя LARAVEL_2 (първият проект, който създадох, беше LARAVEL), този проект В същия път / var / www / html, както в първия създаден проект, всичко е наред, докато стигна до частта, която според мен е мястото, където ми създава проблеми, която е в конфигурационния файл на виртуалния хост
За първия проект го имам така:
Име на сървър localhost.tld
ServerAdmin уеб администратор @ localhost
DocumentRoot / var / www / html / LARAVEL / public
AllowOverride All
ErrorLog $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log комбинирано
И всичко мина идеално, но когато го направя за втория проект, го имам така:
Име на сървъра homestead.test
ServerAdmin mymail@hotmail.com
DocumentRoot / var / www / html / LARAVEL_2 / public
AllowOverride All
ErrorLog $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log комбинирано
Изпълнявам следните команди, без да имам никакви проблеми, докато не завърша рестартирането на apache, проблемът е, че сега не мога да вляза в първия проект, като поставя localhost на лаптопа си, още по-малко homestead.test, където според това име е като мен Имам достъп до моя проект, така че как мога да го реша?
Тази статия беше много полезна, просто исках да направя нещо друго и се обърка малко.
Редактирайте файла / etc / hosts и в нов ред добавете:
127.0.0.1 homestead.test
рестартирайте apache и въведете в браузъра:
http://homestead.test
здравей Искам да знам дали работи в ubuntu 20.04lts след това се инсталира и той ме пита, че липсват някои зависимости като: Вашите изисквания не могат да бъдат разрешени до инсталируем набор от пакети.
laravel / framework v7.9.2 изисква ext-mbstring * -> исканото разширение PHP mbstring липсва във вашата система.
Моля помогнете
Въпреки че този урок изглежда е от няколко години, той работи за мен в средата на 2022 г. на Ubuntu Jammy Jellyfish.
Много добра работа Дамян 🙂