Laravel storage link funktioniert nicht auf die Produktion

Ich bin mit storage_path zu speichern, meine Bilder und ich symbolisch meine Speicher-Ordner zu public_html

php artisan storage:link

Auf dem lokalen funktioniert alles einwandfrei, wenn ich ein Bild hochladen, wird es in den Ablageordner hochladen und link an, erscheint es in public Ordner, aber da zog ich Sie zu live-host-und-Produktion-Modus meine Bilder hochladen in den Speicher-Ordner aber nichts in meiner public_html/storage und ich bin nicht in der Lage, Sie in meine front-end.

Codes

/config/filesystems.php

'public' => [
  'driver' => 'local',
  'root' => storage_path('app/public/'),
  'url' => env('APP_URL').'/storage',
  'visibility' => 'public',
],

.env

FILESYSTEM_DRIVER=public

controller sample

if ($request->hasFile('image')) {
  $image = $request->file('image');
  $filename = 'page' . '-' . time() . '.' . $image->getClientOriginalExtension();
  $location = storage_path('app/public/images/' . $filename);
  Image::make($image)->resize(1200, 600)->save($location);
  if(!empty($page->image)){
    Storage::delete('images/' . $page->image);
  }
  $page->image = $filename;            
}

irgendeine Idee?

  • Sie sind nicht mit einem public Verzeichnis, bist du mit public_html. Ich weiß nicht, wie diese Strategie. Ein öffentliches Verzeichnis, in public_html und setzen die url zu env('APP_URL').'/public/storage'.
  • Sie müssen wieder die sym-link auf dem server, wird es nicht übertragen, es mit
  • sorry, aber ich bin verwirrt, 1) Make a public directory in public_html ich habe in meinem Ordner public_html es ist erstellt, wenn ich lief Handwerker-Befehl, 2) ich habe 'url' => env('APP_URL').'/public/storage', aber nichts geändert, noch immer kann ich nicht an meine Bilder
  • wie mache ich das? ich habe keine terminal in meinem host (nicht sicher!)
  • Sind Sie wirklich sicher, dass Sie sollten mit $image->getClientOriginalExtension();? Das würde mir erlauben, zu speichern .php-Datei auf Ihren server und führen Sie code in es.
  • es gibt ein paar Möglichkeiten, es zu tun, können Sie führen, dass Sie denselben Befehl aus einer route können Sie ftp-und in einigen ftp-Programmen können Sie machen, ein sym-link. Cpanel auch funktionieren würde -> namecheap.com/support/knowledgebase/article.aspx/9561/29/...

InformationsquelleAutor mafortis | 2018-06-06
Schreibe einen Kommentar