php laravel ubuntu-14.04 file-get-contents laravel-5.2

php - Cómo resolver el error “[ErrorException] file_get_contents(/var/www/laravel/.env): no se pudo abrir la secuencia: ¿No existe tal archivo o directorio”?



ubuntu-14.04 file-get-contents (6)

Cambie el nombre de .env.example a .env y complete todas las propiedades. https://laravel.com/docs/5.0/configuration#environment-configuration

Estoy usando Ubuntu 14.04 en mi máquina. Instalé compositor y luego lo coloqué en la raíz del documento, es decir, / var / www

También le di -R 777 a la carpeta presente en el directorio / var / www

Luego voy al directorio laravel usando cd / var / www / laravel y ejecuto el siguiente comando php artisan y pude ver todos los comandos disponibles allí.

Luego escribí en php artesanal clave: generar y obtuve el error

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

Aquí me quedé atascado en realidad, ¿puede alguien ayudarme en este sentido?

Gracias.


Cambie el nombre de .env.example a .env en su carpeta raíz de laravel


El archivo .env aún no está presente porque primero deberá crearlo y configurarlo.

Haz lo siguiente

# 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


Probablemente te perdiste el archivo .env en la carpeta de proyectos de laravel. .env.example que .env .env.example to .env . También da la conexión de base de datos requerida.

.env archivo .env este aspecto: (Rellene con la conexión de base de datos requerida)

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

Espero que esto te ayude. Gracias.


Puedes crearlo y volver a ejecutar el comando.

# cd /var/www/laravel # touch .env # php artisan key:generate Application key set successfully.


Si, como yo, tenía un archivo .env , es posible que tenga permisos demasiado ajustados para que el usuario actual pueda escribir en él (y, por supuesto, el comando php artisan que su usuario actual intenta ejecutar). Había cambiado todos mis archivos Laravel para que fueran propiedad de www-data:www-data y convertí a mi usuario actual en miembro del grupo www-data , por lo que me sorprendió un poco este error.

Sin embargo, pronto me di cuenta de que mi archivo .env tiene los siguientes permisos:

-rw-r--r--

... lo que significa que el usuario que posee el archivo obtiene lectura y escritura, pero el grupo y el mundo solo pueden leer. Como mi usuario actual es miembro del grupo www-data , solo puede leer, no escribir.

(Puedes verificar tus permisos de archivo haciendo $ ls -la )

Si tienes la misma situación, tienes dos opciones; afloja los permisos de archivo en ese archivo (con chmod ) o usa sudo para ejecutar tus comandos php artisan. Elegí este último, ya que este es un servidor de producción para mí y me gustan los permisos ajustados.