簡體   English   中英

Laravel Voyager 圖像上傳到服務器后損壞

[英]Laravel Voyager image broken after uploading in server

Laravel 版本:5.5 Voyager 版本:1.0 PHP 版本:7

我已經在 cPanel 中上傳了我的 Laravel 項目。 以前的圖像已成功顯示,但新添加的圖像未顯示。

在此處輸入圖片說明

在上傳到 cPanel 之前,最后 2 張圖像已經在項目中。 在 cPanel 中成功上傳項目后,我嘗試上傳圖像,但未顯示第一個圖像。

有人幫忙嗎?

我嘗試更改 config/filesystem.php

將路徑從 storage_path() 更改為 public_path()。

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

但它沒有用。 請幫我!

損壞的圖片網址 - http://example.com/storage/products/December2018/QIDyzoFg1aAf6NUGMJtZ.jpg

我找到了解決方案! 問題出在符號鏈接(存儲符號鏈接)中。 在本地主機中,我們可以輕松地從 voyager adminpannel 或終端php artisan storage:link創建符號php artisan storage:link在這種情況下,在共享托管中我們不能這樣做。請參閱下面我所做的。

1.登錄cpannel

2.轉到項目文件夾,然后轉到public->storage文件夾,然后將其重命名為storage old或somthing。

3.回到cpannel主菜單,選擇cron job

4.在常用設置中 --> 選擇 *每 5 分鍾一次

5.在命令字段中添加這個ln -s /home/cpanel_username/project_name/storage/app/public /home/cpanel_sername/project_name/public/storage

(我的網站在子域中)示例- ln -s /home/your_cpannel_user name/public_html/subdomain_foldername/storage/app/public /home/cpanel_username/public_html/subdomain_foldername/public/storage

語法--> ln -s target_path link_path

6.在cron電子郵件中輸入您的電子郵件並更新電子郵件(工作完成后,電子郵件通知將進入您的收件箱,檢查垃圾郵件文件夾

6.創建新的cronjob

7.等幾分鍾你就快完成了。! 執行后刪除cronjob

8.log 並檢查上傳路徑是否正常工作!

假設你的 Laravel 項目“public”目錄和“public_html”目錄不同,請運行以下命令:

php artisan storage:link 

此命令將創建指向 Laravel 項目的“public”目錄的符號鏈接,而不是在“public_html”中。 接下來,我們需要將“storage”鏈接移動到“public_html”目錄,為此您可以直接移動。 如果它不起作用,則進入“public”目錄並根據您的 public_html 目錄位置運行以下命令:

mv storage /home/*yourHostinInfo*/domains/*domainName*/public_html

根據您的托管信息,路徑可能會有所不同。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM