我在我的机器上使用 Ubuntu 14.04 。我在文档根目录中安装了composer然后 laravel ,即 / var / www
我还将 -R 777 延迟提供给目录 / var / www
中的文件夹 laravel然后我使用 cd / var / www / laravel 转到目录 laravel 并运行以下命令 php artisan ,我看到了那里有所有可用的命令。
然后我输入 php artisan key:generate 并收到错误
[ErrorException] file_get_contents(/var/www/laravel/.env): failed to open stream: No such file or directory
感谢。
答案 0 :(得分:37)
将laravel根文件夹中的.env.example
重命名为.env
答案 1 :(得分:4)
.env
文件尚未出现,因为您首先需要创建和配置它。
执行以下操作
# Navigate to the correct folder
$ cd /var/www/laravel
# Copy the example file to make a .env file
$ cp .env.example .env
# Set the parameters
$ vi .env
答案 2 :(得分:3)
将.env.example重命名为.env并填充所有属性。 https://laravel.com/docs/5.0/configuration#environment-configuration
答案 3 :(得分:1)
可能您错过了laravel项目文件夹中的.env
文件。因此,.env.example
为.env
个文件。还提供所需的数据库连接。
.env
文件如下所示:(填写所需的数据库连接)
APP_ENV=local
APP_DEBUG=true
APP_KEY=SomeRandomString
APP_URL=http://localhost
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
希望这会对你有所帮助。谢谢。
答案 4 :(得分:1)
如果像我一样 拥有.env
文件,您可能会发现它的权限太紧,无法让当前用户写入该文件(并暗示php artisan命令当前用户正在尝试运行)。我已将所有Laravel文件更改为www-data:www-data
所有并使我当前的用户成为www-data
组的成员,因此对此错误感到有点困惑。
但是,我很快意识到我的.env
文件具有以下权限:
-rw-r--r--
...意味着拥有该文件的用户获得了读写权限,但该组和世界只能读取。由于我当前的用户是组 www-data
的成员,因此它只能读取而不能写入。
(您可以通过$ ls -la
)
如果情况相同,则有两种选择;放宽该文件的文件权限(使用chmod
)或使用sudo
运行您的php artisan命令。我选择后者,因为这对我来说是一个生产服务器,我喜欢严格的权限。
答案 5 :(得分:0)
您可以创建它并重新运行命令。
# cd /var/www/laravel
# touch .env
# php artisan key:generate
Application key set successfully.