搜尋

首頁  >  問答  >  主體

laravel是否應該把上傳檔案目錄定義在storage而非public

並且public設定為不可寫入才能做到安全
上傳檔案到publi對系統的危害有多大?

给我你的怀抱给我你的怀抱2739 天前911

全部回覆(2)我來回復

  • 巴扎黑

    巴扎黑2017-06-30 10:02:09

    同意 @chekun 的回答,請仔細觀看官方文件:文件儲存

    公開磁碟# 「公開磁碟」就是指你的檔案將可被公開訪問,預設下, public 磁碟使用 local 驅動且將檔案存放在
    storage/app/public 目錄下。為了能透過網路訪問,你需要建立 public/storage 到
    storage/app/public 的符號連結。這個約定能讓你的可公開存取檔案保持在同一個目錄下,這樣在不同的部署系統間就可以輕鬆共享,如
    Envoyer 的「不停服」部署系統。

    你可以使用 storage:link Artisan 指令建立符號連結:

    php artisan storage:link 當然了,當檔案放好且符號連結創建完畢後,你就可以用 asset 輔助函數建立 URL 了:

    echo asset('storage/file.txt');

    回覆
    0
  • PHP中文网

    PHP中文网2017-06-30 10:02:09

    laravel 預設就是:

    儲存配置裡的public 儲存目錄就是 storage/app/public
    然後透過 php artisan storage:link link 到 public 目錄下的

    回覆
    0
  • 取消回覆