👺
Cheatsheet
  • 👋My cheatsheet
  • 🐘PHP
    • Тернарные операторы
    • Замыкания в PHP
    • Таблица сравнения типов PHP
  • 🟨JS
    • JS cheat sheet
    • Тернарные операторы || ?? &&
    • Таблица сравнения типов JS
    • Область видимости в JS
    • Перебор объектов через for(key in obj)
    • Доступ к свойству через переменную []
    • this в JS
    • Конструктор, оператор "new"
    • bind привязка контекста (this)
    • Замыкания в JS ...
  • ❤️Laravel
    • Laravel websockets
    • Загрузка файлов и пути к ним
    • Vite сборка изображений
    • Vite сборка CSS и JS
    • Vite подключение jQuery
    • Vite подключение Bootstrap
    • Laravel AJAX (with jQuery)
    • Дерево категорий Laravel
    • Laravel + CK-Editor + El FInder
    • Laravel deploy
    • Laravel фасады и сервис провайдеры
    • Отношения
      • Один-к-Одному
      • Один-ко-Многим
      • Многие-ко-Многим
      • Полиморфные отношения
    • Laravel cheatsheet (MAIN)
    • Laravel cheatsheet (BIG)
      • Artisan
      • Auth
      • Blade
      • Cache
      • Composer
      • Config
      • Container
      • Cookie
      • DB
      • Environment
      • Event
      • Eloquent Model
      • File
      • Form
      • HTML
      • Helper
      • Input
      • Lang
      • Log
      • Mail
      • Pagination
      • Queue
      • Redirect
      • Request
      • Response
      • Route
      • SSH
      • Schema
      • Security
      • Session
      • String
      • URL
      • UnitTes
      • Validation
      • View
    • Laravel cheatsheet (BIG PLAIN)
  • 📕PDO
    • SELECT
    • WHERE
    • INSERT
    • UPDATE
    • DELETE
    • JOIN
    • GROUP BY
    • Дерево
    • Дерево ООП
    • Дерево в массив
  • 🐋Docker
    • Docker hub push
    • Docker offline
  • 🥤Gulp
  • 🌊jQuery
  • 🪄Composer
  • 4️⃣Composer PSR-4
  • 🍥RegEx
  • 🐙Git
  • 🧑‍💻Node js
  • 🛍️PHPStorm
  • 💻Zsh
  • 🤖Arduino
Powered by GitBook
On this page
  1. Laravel

Laravel deploy

Last updated 2 years ago

Через FTP клиент переношу файлы сайта таким образом...

Все папки в корень на одном уровне с папкой “public_html” в папку “public_html” переносим содержимое папки “public”

В файле index.php меняем путь public_path() для “public_html”, для этого дописываем после объявления $app;

index.php
$app->bind('path.public', function() {
  return base_path().'/public_html';
});

Так же желательно прописать путь к public_html в настройках vite.config.js

vite.config.js
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';

export default defineConfig({
    build: {
        outDir: './public_html/build' // Добавляем путь для билда
    },
    plugins: [
        laravel({
            input: ['resources/css/app.css', 'resources/js/app.js'],
            refresh: true,
            publicDirectory: '/public_html', // указываем путь до public_html
        })
    ],
    server: {
        hmr: {
            host: 'localhost'
        },
        port: 3000,
        host: '0.0.0.0',
    },
});

и в настройках elfinder прописываем пути через public_path()

elfinder.php
return array(
    'dir' => ['upload'],
    'disks' => [],
    'route' => [ 'prefix' => 'elfinder', 'middleware' => null,],
    'access' => 'Barryvdh\Elfinder\Elfinder::checkAccess',
    'roots' => null,

    'options' => array(
        'roots' => array( array( 'driver' => 'LocalFileSystem', 'path' =>  public_path(), 'URL' =>  public_path() ), ) ),

    'root_options' => array(),
);

Путь для сохранения картинок будет такого вида-/home/f0634421/domains/f0634421.xsph.ru/public_html

Simlink

Можно создать simlink (символическую ссылку для сторедж в публичную папку) без консоли, просто определив роут в котором пропишем команду, и перейдём по его адресу:

Route::get('/foo', function () {
    Artisan::call('storage:link');
});

загруженная картинка будет доступна по ссылке такого вида -

❤️
http://f0634421.xsph.ru/upload/photo1638904712.jpeg