crear acces directe de storage en hosting compartit
Quan executes php artisan storage:link, aquest comandament crea un enllaç simbòlic entre public/storage i storage/app/public. Aquest error indica que l'enllaç simbòlic ja existeix, per tant no el pot tornar a crear.
Solució:
rm public/storage
php artisan storage:link
En un entorn de desenvolupament local, normalment faries servir el comandament següent per crear un enllaç simbòlic del directori storage/app/public al directori public/storage:
php artisan storage:link
Això crea un enllaç simbòlic perquè els fitxers emmagatzemats a storage/app/public siguin accessibles públicament a través de public/storage.
En molts entorns de hosting compartit, és possible que no puguis crear enllaços simbòlics amb el comandament php artisan storage:link a causa de les limitacions del servidor (per exemple, deshabilitació d'enllaços simbòlics per seguretat).
Pas 1: Copia el Contingut Manualment
Com que pot ser que no puguis crear enllaços simbòlics, la solució consisteix a copiar manualment el contingut del directori storage/app/public al directori public/storage.
Pas 2: Configura el Directori Correctament
És important que cada vegada que afegeixes o modifiques fitxers a storage/app/public, repliquis aquests canvis manualment a public/storage.
Si prefereixes no fer-ho manualment cada vegada, pots crear un simple script PHP o utilitzar un script en el teu servidor que faci la còpia de fitxers automàticament.
Exemple de script en PHP per copiar fitxers:
<?php
$source = __DIR__.'/../storage/app/public';
$destination = __DIR__.'/storage';
function copyFiles($source, $destination)
{
$directory = opendir($source);
@mkdir($destination);
while ($file = readdir($directory)) {
if ($file != '.' && $file != '..') {
if (is_dir($source . '/' . $file)) {
copyFiles($source . '/' . $file, $destination . '/' . $file);
} else {
copy($source . '/' . $file, $destination . '/' . $file);
}
}
}
closedir($directory);
}
copyFiles($source, $destination);Instruccions:
Amb aquests passos, podràs crear un accés directe al directori storage en un hosting compartit, fins i tot si no pots utilitzar enllaços simbòlics. La solució manual és senzilla però efectiva, i pots automatitzar el procés si cal.
Editor del blog
nstal·lant PHP i l'instal·lador Laravel Abans de crear la vostra primera aplicació Laravel, assegureu-vos que la vostra màquina local tingui PHP , Composer i l'instal·lador Laravel instal·lats. A més, hauríeu d'instal·lar Node i NPM o Bun perquè pugueu compilar els actius d'interfície de la vostra aplicació.
Una manera adequada de nomenar aquesta consulta PDO podria ser "ObtenirPàginesPerCategoriaIEtiqueta" o "LlistarPàginesFiltrades". Aquest nom reflecteix que la consulta selecciona posts associats a una categoria i etiqueta específica. També pot ser útil considerar la claredat de la consulta en el context de l'aplicació, per exemple:
pagina /post/543 del projecte laravel12.test
pagina /post/317 del projecte larpreline.test
pagina /bootstrap_gallery del projecte larpreline.test
pagina indexgallery del projecte larpreline.test/