В Laravel команда storage:linkобычно используется для создания символических ссылок из каталога publicв каталог storage. Это позволяет вам получать доступ к файлам, хранящимся в каталоге storage, непосредственно из Интернета. Однако, если вы предпочитаете не использовать командную строку, существуют альтернативные методы достижения того же результата. В этой статье мы рассмотрим пять простых способов создания ссылок на хранилище Laravel без использования командной строки.
Метод 1: использование команды artisan
Хотя этот метод по-прежнему использует командную строку, он устраняет необходимость непосредственного использования команды storage:link. Откройте терминал, перейдите в каталог вашего проекта и выполните следующую команду:
php artisan tinker
Попав в интерактивную оболочку, запустите следующий код:
\File::link(storage_path('app/public'), public_path('storage'));
Это создаст для вас ссылку на хранилище.
Метод 2: создание маршрута
Вы также можете создать маршрут в своем приложении Laravel, который инициирует создание ссылки на хранилище. Откройте файл routes/web.phpи добавьте следующий маршрут:
Route::get('/create-storage-link', function () {
\Artisan::call('storage:link');
return 'Storage link created successfully!';
});
Теперь при доступе к /create-storage-linkв веб-браузере для вас будет создана ссылка на хранилище.
Метод 3: использование пользовательской команды Artisan
Вы можете создать собственную команду Artisan для создания ссылки на хранилище. Запустите следующую команду в своем терминале, чтобы создать новый командный файл:
php artisan make:command CreateStorageLink
Откройте сгенерированный файл CreateStorageLink.phpв каталоге app/Console/Commandsи замените метод handle()следующим кодом:
public function handle()
{
$this->call('storage:link');
$this->info('Storage link created successfully!');
}
Теперь вы можете запустить следующую команду, чтобы создать ссылку на хранилище:
php artisan create:storage-link
Метод 4: использование контроллера
Вы можете создать контроллер, который будет обрабатывать создание ссылки на хранилище. Запустите следующую команду в своем терминале, чтобы создать новый контроллер:
php artisan make:controller StorageLinkController
Откройте сгенерированный файл StorageLinkController.phpв каталоге app/Http/Controllersи добавьте следующий метод:
public function createStorageLink()
{
\Artisan::call('storage:link');
return 'Storage link created successfully!';
}
Далее добавьте маршрут в файл routes/web.php:
Route::get('/create-storage-link', 'App\Http\Controllers\StorageLinkController@createStorageLink');
Теперь при доступе к /create-storage-linkв веб-браузере будет создана ссылка на хранилище.
Метод 5: создание символической ссылки вручную
Если вы предпочитаете ручной подход, вы можете создать символическую ссылку напрямую, без какого-либо кода или команд. Перейдите в каталог publicвашего проекта и создайте символическую ссылку, указывающую на каталог storage/app/public. Это можно сделать с помощью командной строки или файлового менеджера с поддержкой символических ссылок.
Создать ссылки на хранилище Laravel без использования командной строки можно различными способами. В этой статье мы рассмотрели пять простых альтернатив, включая использование команды artisan, создание маршрута, использование пользовательской команды Artisan, использование контроллера и создание символической ссылки вручную. Выберите метод, который подходит вашему рабочему процессу, и наслаждайтесь беспрепятственным доступом к файлам вашего хранилища через Интернет.