Bien, un pequeño tutorial.

Si deseamos instalar y desarrollar con Laravel en un servidor de hosting que tiene instalado Virtualmin, es necesario realizar algunos pasos.

La solución la he encontrado en https://laravel.io/forum/03-06-2015-how-to-setup-laravel-5-in-shared-hosting y en concreto ha consistido en:

  1. Partiendo de la base de que composer está instalado correctamente, y de que se ha realizado la instalación de laravel.
  2. Ejecutar en la raiz del dominio (donde se encuentra el directorio «public_html» el siguiente comando composer create-project –prefer-dist laravel/laravel ./nombre_proyecto
  3. mover los archivos de la carpeta public de «nombre_proyecto» a la carpeta «public_html»
  4. Y aqui viene la magia:
    1. Ir a public_html/index.php y cambiar en la línea 22:
      #From this
      require __DIR__.'/../bootstrap/autoload.php';
      #To this
      require __DIR__.'/../nombre_proyecto/bootstrap/autoload.php';
    2. Seguimos en index.php, cambiar en la linea 36
      #From this 
      $app = require_once __DIR__.'/../bootstrap/app.php';
      #To this
      $app = require_once __DIR__.'/../[framework-folder]/pulcro/bootstrap/app.php';
      
    3. ir a public_html/.htaccess y editarlo, en mi caso ha quedado algo así:
      <IfModule mod_rewrite.c>
          <IfModule mod_negotiation.c>
              Options -MultiViews
          </IfModule>
          #RewriteEngine On
          # Redirect Trailing Slashes If Not A Folder...
          #RewriteCond %{REQUEST_FILENAME} !-d
          #RewriteRule ^(.*)/$ /$1 [L,R=301]
      RewriteEngine On
      # Redirect Trailing Slashes...
      RewriteCond %{REQUEST_URI} !^
      RewriteRule ^(.*)$ /$1 [L]
          # Handle Front Controller...
          RewriteCond %{REQUEST_FILENAME} !-d
          RewriteCond %{REQUEST_FILENAME} !-f
          RewriteRule ^ index.php [L]
      
          # Handle Authorization Header
          RewriteCond %{HTTP:Authorization} .
          RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
      </IfModule>
      

A partir de este momento en el navegador ya se presentará la pantalla de inicio de Laravel. Si no ha ido algo bien se tendrá una bonita pantalla en blanco

ercobo Desarrollo , ,