Как устранить ошибку "[Исключение ошибки] файл получает содержимое (/var/www/laravel/.env): не удалось открыть поток: Такого файла или каталога нет"?


Я использую Ubuntu 14.04 на своей машине. Я установил composer, а затем laravel в корневом каталоге документа, т. Е. /var/www

Я также дал -R 777 разрешение на доступ к папке laravel, присутствующей в каталоге /var/www

Затем я перехожу в каталог laravel с помощью cd/var/www/laravel и запускаю следующую команду php artisan, и я должен увидеть все доступные команды там.

Затем я набрал ключ php artisan: сгенерировал и получил ошибку

[ErrorException]  file_get_contents(/var/www/laravel/.env): failed to open stream: No such file or directory

enter image description here Здесь я застрял на самом деле, может кто-нибудь, пожалуйста, помочь мне в этом отношении?

Спасибо.

Author: user2839497, 2016-04-21

5 answers

Переименуйте .env.example в .env в корневой папке laravel

 33
Author: Vinod VT, 2016-04-21 06:56:25

Файл .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
 4
Author: Peter, 2016-04-21 07:08:53

Переименуйте .env.пример в .env и заполните все свойства. https://laravel.com/docs/5.0/configuration#environment-configuration

 3
Author: kejsu, 2016-04-21 06:54:55

Возможно, вы пропустили свой файл .env в папке проекта laravel.Поэтому сделайте .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

Надеюсь, это поможет вам.Спасибо.

 1
Author: Chonchol Mahmud, 2016-04-21 06:58:24

Если, как и я, у вас был файл .env, вы можете обнаружить, что у него слишком жесткие разрешения, чтобы позволить вашему текущему пользователю писать в него (и, следовательно, команда php artisan, которую пытается запустить ваш текущий пользователь). Я изменил все свои файлы Laravel, чтобы они принадлежали www-data:www-data, и сделал своего текущего пользователя членом группы www-data, и поэтому был немного озадачен этой ошибкой.

Однако вскоре я понял, что мой файл .env содержит следующее разрешения:

-rw-r--r--

...это означает, что пользователь, которому принадлежит файл, получает возможность чтения и записи, но группа и мир могут только читать. Так как мой текущий пользователь является членом группы www-data, он может только читать, но не писать.

(Вы можете проверить свои права доступа к файлам, выполнив $ ls -la)

Если у вас такая же ситуация, у вас есть два варианта: ослабить права доступа к этому файлу (с помощью chmod) или использовать sudo для выполнения ваших команд php artisan. Я выбрал последнее, так как это рабочий сервер для меня, и мне нравятся жесткие разрешения.

 1
Author: jeff-h, 2018-06-09 08:09:30