miércoles, 16 de noviembre de 2022

Laravel: Conexión con base de datos

Para conectar nuestro proyecto Laravel con una BD de MySQL.

Dentro del archivo database.php en el directorio config configuramos el driver de la conexión, por defecto vendrá con mysql, si queremos cambiarlo por otro motor de base de datos tendremos que cambiar el valor mysql por sqlite, pgsql, sqlsrv.

'default' => env('DB_CONNECTION', 'mysql')

Tendremos que configurar el archivo .env ubicado en la raíz del proyecto.

DB_HOST=localhost --- indicar el servidor propio local
DB_DATABASE=test  --- nombre de la base de datos 
DB_USERNAME=root  --- usuario de conexión a la base de datos
DB_PASSWORD=123   --- password del usuario 

Una vez que tengamos todo configurado, nos dirigimos a la terminal y ejecutamos el comando php artisan migrate para crear las migraciones, si todo ha salido bien tendremos que ver las tablas:

  • migrations
  • password_resets
  • users

En Laravel, los nombres de las tablas siempre son escritos en plural, esto  es parte de una convención: Convención de la configuración, que nos evita realizar configuraciones y pasos extras de la asociación de Modelos con tablas entre otras cosas.

Instalación de Framework Laravel

Laravel necesita un servidor web. No importa cuál sea pero la mayoría de la comunidad usa Apache o Nginx, por lo que es recomendable instalar uno de los dos para cuando se necesite buscar información sobre solucionar problemas.

Instalación de XAMPP (Windows)

XAMPP es un programa que nos ofrece una distribución de Apache, MySQL, PHP y Perl muy simple de instalar, administrar y utilizar. Podemos descargarlo aquí.

Instalación de LAMP (Linux)

LAMP es el conjunto de aplicaciones Apache, MySQL, PHP o Python en entornos Linux que nos facilitan el desarrollo de sistemas.

En Ubuntu o derivadas podemos instalarlo con los siguientes comandos:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install lamp-server^
sudo apt-get install php5-mcrypt
sudo php5enmod mcrypt

Después de tener instalado nuestro Servidor web, es necesario instalar Composer el cuál es un gestor de dependencias php muy útil y del cuál se hablará más tarde.

Instalación de composer (Windows)

La forma más sencilla de instalar Composer en tu ordenador Windows consiste en descargar y ejecutar el archivo Composer-Setup.exe, que instala la versión más reciente de Composer y actualiza el PATH de tu ordenador para que puedas ejecutar Composer simplemente escribiendo el comando composer.

Instalación de composer (Linux)

En ubuntu bastará con ejecutar los siguientes comandos en la terminal.

sudo apt-get install curl
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo echo 'PATH=$PATH:~/.composer/vendor/bin' >> ~/.profile

Instalación de Laravel

Existen diferentes formas de instalar laravel en nuestra computadora.

  • Podemos clonar el repositorio Laravel de github.
  • Usando el instalador:
    composer global require "laravel/installer=~1.1"
    laravel new Proyecto
    
  • Usando composer:
    composer create-project laravel/laravel --prefer-dist Proyecto
    
    Una vez instalado laravel es recomendable situarse en la raíz del proyecto y ejecutar:
    composer update
    php artisan key:generate
    php artisan app:name Curso

viernes, 11 de noviembre de 2022

Activar módulo rewrite de Apache en Ubuntu

El módulo rewrite es un módulo de la aplicación Apache que permite modificar la URL de un sitio. Este módulo viene desactivado por defecto.
Para activarlo en Ubuntu se utiliza el comando a2enmod que permite pasar los módulo disponibles de apache del directorio /etc/apache2/mods-available al directorio /etc/apache2/mods-enabled

$ sudo a2enmod rewrite

Se debe indicar donde se quiere aplicar el módulo, con lo cual se abre el archivo de configuración del sitio en efecto:

$ sudo gedit /etc/apache2/sites-enabled/000-default

Y se reemplaza "AllowOverride None" por "AllowOverride All" donde se quiera aplicar el cambio.
Por último se reinicia el Apache:

$ sudo /etc/init.d/apache2 force-reload