php artisan storage:laravelフレームワークのリンクでソフトリンクコマンドをすばやく作成



Php Artisan Storage Link Laravel Framework Quickly Create Soft Link Command



なぜソフト接続を作成するのですか?

プロジェクトのルートディレクトリpublicこれは公的にアクセス可能なリソースが保存される特別なディレクトリだからです。



公的にアクセス可能なものは何ですか? 'http://ドメイン名/ファイルパス'の形式でアクセスできます。

Laravelを介してファイルをアップロードする場合と同様に、アップロードしたリソースファイルをローカルに保存すると、Laravelはデフォルトでそれを内部に配置しますstorage/app内部ですが、このディレクトリは表示されません。プロジェクトのルートディレクトリpublicこれがソフトリンクを作成する理由です。



php artisan storage:linkコマンドを実行すると、プロジェクトのパブリックディレクトリに追加のストレージディレクトリが作成されます。このディレクトリは、storage / app / publicディレクトリへのソフトリンクです。

簡単な例:ドメイン名がhttp://myweb.comの場合

プロジェクトのディレクトリ構造は次のとおりです。



ストレージ

----アプリ

- - - - 公衆

------------ avatar.png

公衆

- - ストレージ

http://myweb.com/storage/avatar.pngにアクセスすると、ファイルstorage / app / public /avatar.pngにアクセスできます。

このコマンドを実行すると、セキュリティ上の理由からシンボリックリンク()が無効になっているというエラーが報告されました。

これは、関数symlink()が無効になっているためです。

php.iniファイルを開き、disable_functionsを検索します

シンボリックリンクを削除した後、php-fpmサービスを再起動し、コマンドphp artisan storage:linkを実行します。

何かがおかしい場合は、私を訂正するためにメッセージを残してください、ありがとう!