Laravel Aws S3 Link - PullRequest
       0

Laravel Aws S3 Link

1 голос
/ 14 марта 2020

Я создал учетную запись aws и связал ее с моим laravel, изображения хранятся внутри aws, а также в моей базе данных.

, но я не хочу использовать aws URL, но мой собственный веб-сайт URL для доступа к изображению, например, localhost:8000/images/uploads/image.jpg

      private function storeImage($post)
    {
        if (request()->hasFile('image')){

            $original = request()->file('image')->getClientOriginalName();

            $post->update([
                'image' => request()->file('image')->storeAs('uploads', $original),
            ]);

            $image = Image::make(request()->file('image'));
            Storage::disk('s3')->put('uploads', $image->stream(), 'public');
            $image = Storage::disk('s3')->temporaryUrl("uploads", Carbon::now()->addMinutes(5));
            $image = 'http://localhost:8000/images/';
        }
    }

Я хочу, чтобы ссылка на это изображение изменилась с нижеприведенного

@if($post->image)
        <img class="post-image rectangle" src="{{ secure_asset('https://example-bucket.s3.eu-west-2.amazonaws.com/' . $post->image ) }}">
        @endif

на что-то вроде

@if($post->image)
    <img class="post-image rectangle" src="{{ secure_asset('images/' . $post->image ) }}">
@endif

, которая отображает ссылку на изображение, как это http://localhost:8000/images/uploads/image.jpg

Обратите внимание, что изображение хранится в моей базе данных, как uploads/image.jpg

1 Ответ

1 голос
/ 14 марта 2020

Вы храните его в корзине S3, поэтому он должен быть связан с доменом корзин. Если вы хотите использовать свой собственный домен, лучше храните его на своем сайте или лучше настройте собственный домен для своего сегмента S3 .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...