Uso de Laravel en pagina de alumno


Laravel es un framework de código abierto para desarrollar aplicaciones y servicios web con PHP 5 y PHP 7. Su filosofía es desarrollar código PHP de forma elegante y simple, evitando el "código espagueti". Fue creado en 2011 y tiene una gran influencia de frameworks como Ruby on Rails, Sinatra y ASP.NET MVC.

Es por estos motivos que Laravel es una opcion popular al momento del desarrollo web con php y en este tutorial se explicara como montar tú propio proyecto en el Labcomp.

¿Cómo crear un proyecto Laravel?

Lo primero que debes hacer es asegurarte de que cumpla con los requisitos mínimos para ejecutar Laravel, esto lo puedes ver en la documentación oficial pero como somos amigos colocare aquí los requerimientos para la ultima versión de al momento de escribir este articulo.

  • PHP >= 7.1.3
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension
  • Ctype PHP Extension
  • JSON PHP Extension

En tú maquina

Como se que no tienes Laravel en tu maquina estas son las intruciones para intalarlo en distribuciones linux mas comunes como Fedora

Fedora

Instalar php 7.2.5

- dnf install httpd php php-common - dnf install php php-common php-cli php-pdo php-mbstring php-zip php-xml - sudo systemctl restart httpd

Instalar Composer

- curl -sS https://getcomposer.org/installer | php - mv composer.phar /usr/local/bin/composer - chmod +x /usr/local/bin/composer - composer -V

Configuración de Laravel

Los siguientes comandos se deben realizar desde tu home en tu ceunta.

- composer global require "laravel/installer" - echo 'export PATH="$PATH:$HOME/.config/composer/vendor/bin"' >> ~/.bashrc

Creación y Configuracion del proyecto

- "laravel new ProjectName" o "composer create-project --prefer-dist laravel/laravel ProjectName" - cd ProjectName Una vez creado la carpeta del proyecto se debe copiar esta a tu cuenta del DI, es decir, a la cuenta con la que entras a los tarros del labcomp.

En el Labcomp

Para crear tu proyecto de forma directa en tu cuenta del DI debes preguntar a algun ayudante para que te indique que tarro cuenta con laravel disponible para crear el proyecto, para generar este debes seguir el tutorial anterior a partir del apartado Configuración de Laravel

Configuracion del Hosting en el labcomp

Ahora que la carpeta del poryecto se encuentra en tu cuenta del DI lo que debemos hacer a continuación es copiar todos los archivos que contiene carpeta public que se encuentra dentro de la carpeta de tu proyecto laravel a ~/html. De esta manera el index.php que estará allí sera el de nuestra aplicación en laravel.

Lo siguiente que debemos hacer es editar el archivo index.php en el cual ahora debemos apuntar a una nueva rutas de los require. En este archivo debes buscar en las siguientes lineas.

require __DIR__.'/../vendor/autoload.php'; $app = require_once __DIR__.'/../bootstrap/app.php';

Y debes cambiarlas apuntando a donde se encuentran actualmente, para este ejemplo.

```require __DIR__.'/../ProjectName/vendor/autoload.php'; $app = require_once __DIR__.'../ProjectName/bootstrap/app.php;

``` Ahora se deben cambiar los permisos de la carpeta storage que se encuentra dentro del proyecto para eso ejecutar el siguiente comando.

- chmod -R 777 ProjectName/storage/

Si por casualidad tus archivos JS y CSS no cargan, esto es porque hemos movido la ubicación de la carpeta public, esto se puede solucionar indicándole a Laravel una nueva ruta publica.

Esto se dentro de un ServiceProvider, para el ejemplo hemos utilizado AppServiceProvider, dentro del método register debes colocar tu nueva ruta.

- vim /ProjectName/app/Providers/AppServiceProvider Se debe añadir lo siguiente.

$this->app->bind('public', function() { return base_path('html'); });

Configuracion de .htaccess

- vim ~/html/.htaccess

Dentro del archivo se debe añadir la siguiente configuracion.

Options +FollowSymLinks -Indexes RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ /index.php [L]

Fecha: 06 Sep, 2018
Autor: labcomp