There was a problem loading the comments.

Deploy Laravel on GARMTECH Hosting (Plesk deployment checklist)

Support Portal  »  Knowledgebase  »  Viewing Article

  Print

This guide helps you deploy a Laravel application on GARMTECH Web Hosting (Plesk).

Laravel’s public entry point must be public/index.php. For security, your website document root should point to the public directory (so .env and other internal files are not publicly accessible).

1) Upload the Laravel project

You can upload the project using:

  • FTP‑SSL (FTPS) (recommended for full deployments),
  • Plesk File Manager (good for archives), or
  • Git deployment (developer workflow).

Typical layout on shared hosting:

  • httpdocs/ — website root in Plesk
  • httpdocs/public/ — Laravel public directory

2) Set the correct document root in Plesk

  1. Open Plesk → Websites & Domains → your domain.
  2. Open Hosting Settings.
  3. Set Document root to httpdocs/public.
  4. Save changes.

Note: If you host multiple apps, you can use subdomains (for example app.example.com) and set their document root separately.

3) Select PHP version and enable required extensions

  • Plesk → domain → PHP Settings → select the required PHP version for your Laravel version.
  • Enable common extensions if they are available: mbstring, openssl, pdo, tokenizer, xml, ctype, json, fileinfo.

4) Create a database and user

  1. Plesk → domain → DatabasesAdd Database.
  2. Create a database user and note the credentials.
  3. Update your .env file with DB settings (DB_HOST/DB_DATABASE/DB_USERNAME/DB_PASSWORD).

5) Install dependencies (Composer) and prepare the app

Laravel requires the vendor directory. You can:

  • Run Composer install on the server (SSH or Plesk Composer tool), or
  • Run it locally and upload the complete project (including vendor).

Typical Laravel “first run” commands (SSH):

php artisan key:generate
php artisan config:cache

If your app uses storage symlinks:

php artisan storage:link

6) Fix permissions (common cause of 500 errors)

Laravel must be able to write to:

  • storage/
  • bootstrap/cache/

If you see permission errors in logs, ensure these folders are writable by your hosting system user.

7) (Optional) Schedule tasks with Cron

If your application uses the Laravel scheduler, create a cron job in Plesk:

  • Plesk → domain → Scheduled Tasks

Typical schedule command (every minute):

* * * * * php /path/to/artisan schedule:run

The exact PHP binary path can vary. If you use SSH, you can usually run php directly; otherwise use the PHP CLI path shown in your environment.

8) Troubleshooting quick checklist

  • Blank page / 500 error: check Plesk Logs for Laravel error details.
  • 404 on all routes: document root is not set to public or rewrite rules are not applied.
  • “APP_KEY missing”: run php artisan key:generate.
  • Database errors: re-check .env DB settings and database user permissions.

Share via
Did you find this article useful?  

Related Articles


Comments

Add Comment

Replying to  

Tags

© GARMTECH