G
N
I
D
A
O
L

Установка laravel на хостинг

!!! Для правильной и продуктивной работы с laravel обязательно требуется SSH !!!


Для установки с нуля:
Например, наша папка называется laravel.
- Переходим в корневую директорию сайта (cd /var/www/html)
- Качаем сюда composer.phar:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Чтобы использовать композер глобально, везде, где захочется, выполняем:
sudo mv composer.phar /usr/local/bin/composer
 на хостингпанели таймвеб не получится, там надо по-другому:
echo -e "alias composer='/opt/php74/bin/php -d memory_limit=4096M /usr/local/bin/composer'\nalias php='/opt/php74/bin/php -d memory_limit=4096M'" >> .bash_profile

source .bash_profile

#и проверим работоспособность
composer -v


- далее установим ларавель в папку /var/www/html/dev командой:
composer create-project laravel/laravel dev --prefer-dist 
- Перейдем в созданный проект и убедимся, что все работает, запустив команду php artisan serve
cd dev
php artisan serve

- Создадим базу данных с названием "dev" (можно и через phpmyadmin)
mysql -u root -p 
# Введите свой пароль
> CREATE DATABASE `dev` CHARACTER SET utf8 COLLATE utf8_general_ci;
> CREATE USER 'dev'@'localhost' IDENTIFIED BY 'my_password';
> GRANT ALL PRIVILEGES ON dev.* TO 'dev'@'localhost';
> exit
- В файлике .env найдем строки и поставим туда новые доступы:



- После выполняем:
php artisan migrate:install


- Чтобы всё работало по-человечески сделаем так:

В файле config\database.php поменяем

strict' => true, на 'strict' => false

'charset' => 'utf8mb4', на 'charset' => 'utf8'

'collation' => utf8mb4_unicode_ci', на 'collation' => 'utf8_unicode_ci'

и после выполнить команду 

php artisan config:cache

Далее выполняем чистку всех кешей (команды выполнять по очереди):

php artisan view:clear

php artisan route:clear

php artisan cache:clear

php artisan config:cache


После всего этого нужно создать симлинк на папку public_html, тк, например, на Таймвебе не читается папка public, через которую идет заход в систему:

ln -s ~/public ~/public_html