NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Reviews for Laravel

Súkromné fotografie a úložisko

Nastavte photos.visibility na private a každá fotografia sa bude servírovať výlučne cez krátkodobé podpísané URL — nikdy nie cez verejné:

REVIEWS_PHOTOS_VISIBILITY=private
REVIEWS_PHOTOS_PRIVATE_DISK=local

# Or pin every photo to one explicit, non-public disk:
REVIEWS_PHOTOS_DISK=s3-private

Každá čítacia metóda určuje URL podľa viditeľnosti konkrétnej fotografie. Verejné fotografie dostanú verejné URL (vhodné pre CDN); súkromné podpísané URL — na diskoch, ktoré to podporujú, predpodpísané, inak cez podpísanú streamovaciu routu Media Library. Platí to pre firstPhotoUrl(), photoUrls(), resolvePhotoUrl(), photoSrcset(), responsivePhotos() aj ReviewResource:

// With photos.visibility = private, every reader returns short-lived signed URLs.
$review->firstPhotoUrl();                  // signed, never a public URL
$review->photoUrls();                      // each one signed
$review->responsivePhotos();               // <img> tags whose src and srcset are signed

// Choose your own expiry for one link (variant, expiry):
$review->firstPhotoTemporaryUrl('', now()->addMinutes(30));

Platnosť podpísaných odkazov sa predvolene riadi hodnotou media.temporary_url_default_lifetime z Media Library (5 minút). responsivePhotos() vygeneruje rovnaký <img> tag ako Media Library — najmenšia vygenerovaná šírka ako src, všetky šírky v srcset, sizes, alt, class a rozmazaný náhľad — všade s podpísanými URL.

Kam sa fotografie ukladajú

photos.diskphotos.visibilityOriginályVarianty
nastavenýľubovoľnáphotos.diskmedia.variants_disk, ak je nastavený, inak photos.disk
nullprivatephotos.private_disk (local)photos.private_disk — vždy, bez ohľadu na media.variants_disk
nullpublicpredvolený disk media-library (media.disk)media.variants_disk, ak je nastavený, inak media.disk

Súkromné fotografie sa nikdy neuložia na predvolený verejný disk Media Library, kde je po storage:link všetko dostupné pod /storage — jedinou cestou k nim je podpísané URL. Ak photos.disk nastavíte explicitne, použije sa pre všetky originály, preto musí byť neverejný, kým sú fotografie súkromné — a ak máte nastavený aj media.variants_disk, musí byť neverejný aj ten, pretože varianty sa ukladajú naň.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.