Saltar al contenido principal

Cómo instalar un sitio basado en Laravel

La instalación se realiza usando composer. El dominio usado como ejemplo es example.com y el usuario del sitio es user.

Preparación

Instalación de Composer

Instale composer en FASTPANEL® en la sección "Aplicaciones"

Menú de gestión de aplicaciones en FASTPANEL

Instalación de composer en FASTPANEL

Creación de un sitio web

Cree un sitio web en FASTPANEL® y especifique el subdirectorio public en la configuración del sitio en la sección "Directorio del sitio".

Especificación del subdirectorio public

Creación de un proyecto

Para crear un proyecto, debe conectarse al servidor mediante SSH usando los datos del propietario del sitio. El propietario del sitio se muestra en la tarjeta del sitio en FASTPANEL

Comprobación del propietario del sitio en FASTPANEL

Después de establecer la conexión SSH, debe limpiar el directorio del sitio usando el siguiente ejemplo de comando (en lugar de example.com especifique el nombre de su sitio)

rm -rf /var/www/user/data/www/example.com/*

Luego vaya al directorio del sitio

cd /var/www/user/data/www/example.com

Y cree un proyecto

composer create-project laravel/laravel ./
Ejemplo de salida en caso de instalación correcta
73 package suggestions were added by new dependencies, use `composer suggest` to see details.
Package fruitcake/laravel-cors is abandoned, you should avoid using it. No replacement was suggested.
Package swiftmailer/swiftmailer is abandoned, you should avoid using it. Use symfony/mailer instead.
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: facade/ignition
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/sanctum
Discovered Package: laravel/tinker
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
76 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
No publishable resources for tag [laravel-assets].
Publishing complete.
No security vulnerability advisories found
> @php artisan key:generate --ansi
Application key set successfully.

Instalación de una versión específica de Laravel

Para instalar una versión específica, al crear un proyecto, debe especificar la versión al final del comando entre comillas

composer create-project laravel/laravel ./ "5.8.*"

Conexión a la base de datos

  • Para Artisan, especifique los datos para conectarse a la base de datos en el archivo .env en el directorio del sitio
  • Para el sitio, especifique los datos para conectarse a la base de datos en el archivo ./config/database.php

Para editar el archivo .env puede usar un editor de texto llamado nano mediante SSH:

nano .env
Ejemplo de .env
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=site_db
DB_USERNAME=db_user
DB_PASSWORD=0j9vd3qATwTsXW7C

Para editar el archivo ./config/database.php mediante SSH:

nano ./config/database.php
Ejemplo de ./config/database.php
    'mysql' => [
'driver' => 'mysql',
'url' => env('DATABASE_URL'),
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'site_db'),
'username' => env('DB_USERNAME', 'db_user'),
'password' => env('DB_PASSWORD', '0j9vd3qATwTsXW7C'),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => null,
'options' => extension_loaded('pdo_mysql') ? array_filter([
PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
]) : [],
],

En el editor nano, Ctrl+O se usa para guardar los cambios, Ctrl+X se usa para salir del editor.

Conexión de Memcached (opcional)

Debe instalar el módulo PHP memcached para la versión de PHP usada en el sitio, así como instalar la aplicación.

Instalación del módulo PHP memcached

Menú de gestión de PHP en FASTPANEL

Instalar módulo PHP memcached en FASTPANEL

Instalación de la aplicación memcached

Menú de gestión de aplicaciones en FASTPANEL

Instalar aplicación memcached en FASTPANEL

Edición de un archivo de configuración

Especifique los datos para conectarse a memcached en el archivo ./config/cache.php

Ejemplo de ./config/cache.php
'memcached' => [
'driver' => 'memcached',
'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
'sasl' => [
env('MEMCACHED_USERNAME'),
env('MEMCACHED_PASSWORD'),
],
'options' => [
// Memcached::OPT_CONNECT_TIMEOUT => 2000,
],
'servers' => [
[
'host' => env('MEMCACHED_HOST', '127.0.0.1'),
'port' => env('MEMCACHED_PORT', 11211),
'weight' => 100,
],
],
],

Uso de Artisan en una versión no predeterminada de PHP

Para usar artisan en una versión no predeterminada de PHP, debe especificar la ruta completa al archivo ejecutable. Ejemplo de uso de una versión alternativa de PHP 8.2:

/opt/php82/bin/php artisan list

Comandos básicos de Artisan

Los comandos deben ejecutarse en el directorio raíz de su proyecto (example.com en este ejemplo)

cd /var/www/user/data/www/example.com

Para ver una lista de todos los comandos Artisan disponibles, puede usar el comando

php artisan list

Iniciar un servidor de desarrollo local de Laravel. Puede especificar las claves --host y --port

php artisan serve

Iniciar migración

php artisan migrate

Activación del modo de mantenimiento en el sitio, clave --redirect=/ para especificar la página del modo de mantenimiento

php artisan down

Desactivación del modo de mantenimiento en el sitio

php artisan up