我想使用.env
文件在Laravel 5.1中配置存储路径。我的bootstrap/app.php
看起来像这样:
<?php
$app = new \Illuminate\Foundation\Application(
realpath(__DIR__.'/../')
);
$app->useStoragePath(getenv('STORAGE_PATH'));
和.env文件中的相关行是:
STORAGE_PATH=/var/www/storage
这不起作用。我发现在处理了引导程序之后,Dotenv库已初始化,因此.env
中的bootstrap.php
变量不可用。
我可以设置存储路径并且.env
变量可用吗?
答案 0 :(得分:3)
在config/filesystems.php
中,您可以设置存储路径。尝试在那里设置存储路径,看看它是否有效。请注意,下面的示例是我对config/filesystems.php
应该如何看待的建议。不介意s3设置。这是我项目的一部分。
请务必从$app->useStoragePath(getenv('STORAGE_PATH'));
app.php
return [
'default' => 's3',
'cloud' => 's3',
'disks' => [
'local' => [
'driver' => 'local',
'root' => env('STORAGE_PATH'),
],
's3' => [
'driver' => 's3',
'key' => env('AWS_KEY'),
'secret' => env('AWS_SECRET'),
'region' => env('AWS_REGION'),
'bucket' => env('AWS_BUCKET'),
],
'rackspace' => [
'driver' => 'rackspace',
'username' => 'your-username',
'key' => 'your-key',
'container' => 'your-container',
'endpoint' => 'https://identity.api.rackspacecloud.com/v2.0/',
'region' => 'IAD',
],
],
];