#php #laravel-5.2
#php #laravel-5
Вопрос:
Я использую вмешательство в изображение laravel.У меня есть некоторые файлы, хранящиеся в моей папке хранения в пути /storage/app/public/images .Когда я пытаюсь сгенерировать путь к файлам с помощью
$path=Storage::disk('local')->url('screenshot1.jpg');
и, выполнив dd($path), он дает мне путь, подобный,
«/storage/screenshot1.jpg «
и я хочу путь,
«/storage/app/public/images/screenshot1.jpg «
Я также внес некоторые изменения в свой filesystem.php для того, чтобы получить требуемый путь,
'disks' => [
'local' => [
'driver' => 'local',
'root' => storage_path('app/public/images'),
],
'public' => [
'driver' => 'local',
'root' => storage_path('app/public/images'),
'visibility' => 'public',
],
's3' => [
'driver' => 's3',
'key' => 'your-key',
'secret' => 'your-secret',
'region' => 'your-region',
'bucket' => 'your-bucket',
],
],
но все равно не работает..
Ответ №1:
путь возвращается правильно, но, но чтобы получить содержимое в url, вам нужно скопировать его из хранилища в общедоступную папку на вашем пути, в противном случае вы должны вернуть клиенту base64. поскольку хранилище недоступно напрямую из общедоступного.
Вам нужно создать символическую ссылку с помощью storage / app / public /images если папка images не является общедоступной, создайте ее, прежде чем создавать символическую ссылку
ln -s storage/app/public/images public/images
Комментарии:
1. у меня эти изображения также хранятся в общей папке, но все равно он возвращает тот же путь, должен ли я вносить в это изменения filesystem.php файл
2. сделайте символическую ссылку для хранилища / приложения / общедоступных / изображений на общедоступные / изображения
3. Это то, что возвращает мой gitbash, $ ln -s storage / app/ public / images public /images ln: не удалось создать символическую ссылку ‘public / images’: нет такого файла или каталога
4. сделайте mkdir в public/images, это говорит о том, что каталог папок images в общедоступной папке не существует, затем выполните символическое