Предисловие
В связи с требованиями проекта необходимо загрузить фотографии в Aliyun OSS. Мой интерфейс Api и фоновый проект разделены. Оба они разработаны с использованием фреймворка laravel. Доступ Api к ОС здесь не обсуждается. Здесь мы в основном говорим о проблеме загрузки Aliyun OSS от laravel-администратора.
Некоторые онлайн-уроки также очень хороши, но только о процессе использования, редко о возникающих проблемах и так далее. Здесь в основном рассказывается о некоторых проблемах, с которыми я столкнулся, когда получил доступ ко всем операционным системам в laravel-admin. Когда все еще будут проблемы, они будут обновлены здесь.
среда разработки
Вот мой composer.json
Контент (перечислите только то, что нужно для этой статьи):
"require": { "php": ">=7.0.0", "encore/laravel-admin": "^1.6", "jacobcyl/ali-oss-storage": "^2.1", "laravel/framework": "5.5.*", ... }
Конкретный процесс
1. Загрузите соответствующие пакеты сторонних производителей
оставайтесь composer.json
Требуются дополнения в файлах "jacobcyl/alioss-хранилище": "^2.1"
;
Или запустить напрямую композитору требуется jacobcyl/alioss-хранилище:^2.1
Также.
2. Добавление поставщиков услуг
останься config/app.php
Увеличение в разделе документы Jacobcyl\Псевдонимы\Поставщик услуг псевдонимов::класс,
Как показано на следующем рисунке:
3.config/filesystems.php Увеличение информации о конфигурации операционной системы
Следующим образом:
'disks' => [ 'local' => [ 'driver' => 'local', 'root' => storage_path('app'), ], 'public' => [ 'driver' => 'local', 'root' => storage_path('app/public'), 'url' => env('APP_URL').'/storage', 'visibility' => 'public', ], 's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), ], // Here's a new addition 'oss' => [ 'driver' => 'oss', 'access_id'=>// Here's your OSS's access Id. 'access_key'=>// Here's your OSS access key. 'bucket'=>//Here is your OSS custom storage space name. 'endpoint'=>'oss-cn-hangzhou.aliyuncs.com', //Take Hangzhou as an example 'cdnDomain'=>', // When using cdn, you need to write, https:// plus Bucket domain name 'ssl'=> true, // true uses'https://'false'and'http://'. Default false, 'isCName'=> false, // whether to use a custom domain name, true: Storage. URL () will use a custom CDN or domain name to generate a file url, false: using external nodes to generate URL 'debug' => false, ], ],
4.config/filesystems.php измените информацию о конфигурации “по умолчанию”
Следующим образом:
'default' => env('FILESYSTEM_DRIVER', 'oss'),
Также может быть в env
Определение в файле ФАЙЛОВАЯ СИСТЕМА_ДРАЙВЕР
Также.
5.config/admin.php измените загрузку, Чтобы настроить
Следующим образом:
'upload' => [ // Disk in `config/filesystem.php`. 'disk'=>'oss', // Here is the OSS configuration pointing to disks // Image and file upload path under the disk above. 'directory' => [ 'image' => 'images', 'file' => 'files', ], ],
Шаги в Интернете, как правило, здесь, ссылка на приведенный выше процесс: laravel-загрузка файлов администратором ОС;
Возникают проблемы
Но тогда возникает проблема. laravel-администратор
В целях быстрой разработки разработчиками мы выполнили некоторые из наших собственных функций при использовании учетной записи по умолчанию. администратор
После входа в систему изображение головы по умолчанию отображается в правом верхнем и левом верхнем углу фоновой страницы. Изображение головы по умолчанию хранится локально. локально
Под поставщиком/на бис/laravel-администратор/ресурсы/просмотры/частичные
ниже header.blade.php
и sidebar.blade.php
Как показано в двух файлах представления, см. Следующий рисунок:
Но тогда возникает проблема. || laravel-администратор || В целях быстрой разработки разработчиками мы выполнили некоторые из наших собственных функций при использовании учетной записи по умолчанию. || администратор || После входа в систему изображение головы по умолчанию отображается в правом верхнем и левом верхнем углу фоновой страницы. Изображение головы по умолчанию хранится локально. || локально || Под || поставщиком/на бис/laravel-администратор/ресурсы/просмотры/частичные || ниже || header.blade.php || и || sidebar.blade.php || Как показано в двух файлах представления, см. Следующий рисунок:
Но тогда возникает проблема. || laravel-администратор || В целях быстрой разработки разработчиками мы выполнили некоторые из наших собственных функций при использовании учетной записи по умолчанию. || администратор || После входа в систему изображение головы по умолчанию отображается в правом верхнем и левом верхнем углу фоновой страницы. Изображение головы по умолчанию хранится локально. || локально || Под || поставщиком/на бис/laravel-администратор/ресурсы/просмотры/частичные || ниже || header.blade.php || и || sidebar.blade.php || Как показано в двух файлах представления, см. Следующий рисунок:
И мы Конкретный процесс//5 шагов загруженной конфигурации были изменены на oss, затем при доступе к фоновому, это вызовет исключение:
Сначала я подумал, что да. config/filesystems.php
Из по умолчанию
Также написано локально
Она будет решена, но результата нет. Из-за времени я не изучил его подробно. Я все еще новичок в принципе загрузки файлов laravel framework, но вот мое решение. Если есть лучшее решение, пожалуйста, исправьте его ниже. Спасибо!
Решать
удержание header.blade.php
и sidebar.blade.php
Изображения в двух файлах просмотра src
Перейдите в ОС Aliyun для хранения изображений, таких как: https://xxx.oss-cn-hangzhou.aliyuncs.com/xxx/xxx/5c77a20012963.jpg
Это изображение-адрес изображения, которое вы хотите загрузить. Вот только пример. Конечно, так писать неудобно. В случае будущих изменений нам все равно нужно найти изменения, внесенные вручную в эти два файла. Это очень хлопотно. Мы можем разделить и оптимизировать их в соответствии с нашими собственными потребностями. Это здесь не обсуждается.
Дорога перекрыта и длинная, а нам все равно нужно двигаться дальше!
Reference: [https://blog.csdn.net/zxdf123/article/details/82752145][6] [https://blog.csdn.net/guyaofei/article/details/79918697][7]