Instalación

Instalación

Requisitos del servidor

The Laravel framework has a few system requirements. Of course, all of these requirements are satisfied by the Laravel Homestead virtual machine:

  • PHP >= 5.5.9
  • Extensión PHP OpenSSL
  • Extensión PHP Mbstring
  • Extensión PHP Tokenizer

Installing Laravel

Laravel utilizes Composer to manage its dependencies. So, before using Laravel, make sure you have Composer installed on your machine.

Vía el Instalador Laravel

First, download the Laravel installer using Composer:

composer global require "laravel/installer=~1.1"

Asegúrese de colocar el directorio ~/.composer/vendor/bin en la variable de sistema PATH para que el ejecutable laravel pueda ser encontrado en el sistema.

Una vez instalado, el simple comando laravel new creará una nueva instalación de Laravel en el directorio que especifiques. For instance, laravel new blog will create a directory named blog containing a fresh Laravel installation with all of Laravel's dependencies already installed. Este método de instalación es mucho más rápido que la instalación vía Composer:

laravel new blog

Vía Composer create-project

También puedes instalar Laravel utilizando el comando create-project de Composer en tu terminal:

composer create-project laravel/laravel --prefer-dist

Configuración

Basic Configuration

Todos los archivos de configuración del framework de Laravel se pueden localizar en la carpeta app/config. Cada opción está documentada. Siéntete libre para observar a través de los archivos y familiarizarte con todas las opciones disponibles.

Directory Permissions

After installing Laravel, you may need to configure some permissions. Directories within the storage and the bootstrap/cache directories should be writable by your web server. If you are using the Homestead virtual machine, these permissions should already be set.

Application Key

The next thing you should do after installing Laravel is set your application key to a random string. If you installed Laravel via Composer or the Laravel installer, this key has already been set for you by the key:generate command. Normalmente, esta cadena debe ser contener 32 caracteres. La clave puede establecerse en el archivo de entorno .env. If you have not renamed the .env.example file to .env, you should do that now. Si no se establece una clave de aplicación, ¡las sesiones de usuario y otros datos cifrados no serán seguros!

Additional Configuration

Laravel casi no necesita configuración para comenzar a trabajar. ¡Eres libre de comenzar a desarrollar! Sin embargo, es recomendable revisar el archivo app/config/app.php y su documentación. Contiene varias opciones como timezone (zona horaria) y locale (localización) que puedes querer cambiar de acuerdo a tu aplicación.

You may also want to configure a few additional components of Laravel, such as:

Once Laravel is installed, you should also configure your local environment.

URLs amigables

Apache

El framework viene con un archivo public/.htaccess que se utiliza para permitir URLs sin index.php. Si utilizas Apache para servir tu aplicación Laravel, asegúrate de activar el módulo mod_rewrite.

Si el archivo .htaccess que viene con Laravel no funciona con tu instalación de Apache, prueba con éste:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]

Nginx

En Nginx, la siguiente directiva en la configuración de tu sitio permitirá URLs "amigables":

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

Of course, when using Homestead, pretty URLs will be configured automatically.

Configuración del entorno

A menudo es útil tener diferentes valores de configuración basados en el entorno en el que la aplicación está ejecutándose. Por ejemplo, digamos que quieres usar en el equipo local un driver de caché distinto al del servidor de producción. Es sencillo usando la configuración basada en el entorno.

Para hacer esto tan sencillo, Laravel emplea la librería PHP DotEnv creada por Vance Lucas. En una instalación nueva de Laravel, el directorio raíz de tu aplicación contendrá un archivo llamado .env.example. Si instalas Laravel través de Composer, el archivo será renombrado a .env automáticamente. De lo contrario, tendrás que renombrar el archivo de forma manual.

Todas las variables que están registradas en este archivo se cargarán en la variable global de PHP $_ENV cuando tu aplicación reciba una petición. Puedes usar el helper env para obtener el valor de estas variables. De hecho, si revisas los archivos de configuración de Laravel, verás que varias opciones ya utilizan este helper.

Tienes toda la libertad para modificar las variables de entorno que necesites para tu servidor local, así como para tu entorno de producción. Sin embargo, tu archivo .env no debería ser incluido en el control de versiones de tu aplicación, ya que cada desarrollador o servidor que use tu aplicación puede necesitar diferentes valores en la configuración.

Si desarrollas con un equipo, es recomendable seguir incluyendo el archivo .env.example con la aplicación. Colocando comentarios y valores de ejemplo en el archivo de configuración, los demás integrantes del equipo podrán ver claramente las variables de entorno que necesitan para ejecutar la aplicación.

Accediendo al entorno actual de la aplicación

The current application environment is determined via the APP_ENV variable from your .env file. You may access this value via the environment method on the App facade:

$entorno = App::environment();

You may also pass arguments to the environment method to check if the environment matches a given value. You may even pass multiple values if necessary:

if (App::environment('local')) {
    // The environment is local
}

if (App::environment('local', 'staging')) {
    // The environment is either local OR staging...
}

An application instance may also be accessed via the app helper method:

$environment = app()->environment();

Caché de configuración

To give your application a speed boost, you should cache all of your configuration files into a single file using the config:cache Artisan command. Esto combinará todas las opciones de configuración en un único archivo que será cargado más rápidamente por el framework.

Normalmente deberás ejecutar el comando config:cache para tu rutina de puesta en producción.

Acceder a los valores de configuración

You may easily access your configuration values using the global config helper function. The configuration values may be accessed using "dot" syntax, which includes the name of the file and option you wish to access. A default value may also be specified and will be returned if the configuration option does not exist:

$value = config('app.timezone');

To set configuration values at runtime, pass an array to the config helper:

config(['app.timezone' => 'America/Chicago']);

Nombrando tu aplicación

Después de instalar Laravel, quizás quieras "nombrar" tu aplicación. El directorio app se encuentra bajo el espacio denombres App por defecto, y Composer lo carga automáticamente a través de la auto carga estándar de PSR-4. Sin embargo, tu podrías cambiar el namespace para que coincida con el nombre de tu aplicación, lo cual es muy fácil de hacer usando el comando Artisan app:name.

Por ejemplo, si tu aplicación se llama "Horsefly", puedes ejecutar el siguiente comando desde la raíz de tu instalación:

php artisan app:name Horsefly

Cambiar el nombre de la aplicación es completamente opcional. Si lo deseas puedes mantener el espacio de nombres por defecto App sin ningún problema.

Modo de mantenimiento

Cuando la aplicación está en modo de mantenimiento, se mostrará una vista personalizada para todas peticiones a tu aplicación. Esto permite "desactivar" fácilmente tu aplicación mientras se está actualizando o estás realizando mantenimiento. La comprobación de este modo está incluida en la pila de middlewares por defecto para tu aplicación. Si la aplicación está en modo de mantenimiento, se lanzará una HttpException con un código de estado 503.

Para activar el modo mantenimiento, simplemente ejecuta el comando down de Artisan:

php artisan down

Para desactivar el modo de mantenimiento, utiliza el commando up:

php artisan up

Plantilla de respuesta del modo mantenimiento

La plantilla predeterminada para las respuestas del modo de mantenimiento se encuentra en resources/views/errors/503.blade.php.

Modo mantenimiento y colas de tareas

While your application is in maintenance mode, no queued jobs will be handled. Los trabajos comenzarán a ejecutarse normalmente una vez la aplicación haya salido del modo de mantenimiento.