Complete Guide to Installing and Self‑Hosting ViserHotel (Laravel Hotel Booking Solution)

This guide will walk you through installing, configuring, and running ViserHotel on your own server. By the end, you’ll have a fully functional hotel booking platform accessible via your domain.

· 4 min read #hotelbooking #laravel #serversetup

🏨 Complete Guide to Installing and Self‑Hosting ViserHotel (Laravel Hotel Booking Solution)

Introduction

ViserHotel is a modern, Laravel‑based hotel booking and management system designed for businesses that want to digitize reservations, manage rooms, and streamline customer interactions. It’s popular among small hotels, guesthouses, and property managers because it offers a responsive front‑end, an intuitive admin dashboard, and built‑in payment gateway support.

This guide will walk you through installing, configuring, and running ViserHotel on your own server. By the end, you’ll have a fully functional hotel booking platform accessible via your domain.


Prerequisites

Before starting, ensure you have the following:

  • Operating System: Ubuntu 22.04 LTS (recommended) or Windows Server with IIS.
  • Web Server: Apache or Nginx.
  • PHP: Version 8.1 or higher.
  • Database: MySQL/MariaDB.
  • Composer: PHP dependency manager.
  • Node.js & npm: For front‑end asset compilation.
  • Git: For pulling updates.
  • Domain & SSL: Optional but recommended for production.

Hardware Requirements

  • Minimum: 2 CPU cores, 4 GB RAM, 20 GB disk.
  • Recommended: 4 CPU cores, 8 GB RAM, SSD storage.

Step 1: Update Your Server

sudo apt update && sudo apt upgrade -y

Step 2: Install PHP and Extensions

sudo apt install php8.1 php8.1-cli php8.1-mysql php8.1-xml php8.1-mbstring php8.1-curl php8.1-zip unzip curl git -y

Step 3: Install Composer

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
composer --version

Step 4: Install MySQL

sudo apt install mysql-server -y
sudo mysql_secure_installation

Create a database:

CREATE DATABASE viserhotel;
CREATE USER 'viseruser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON viserhotel.* TO 'viseruser'@'localhost';
FLUSH PRIVILEGES;

Step 5: Download ViserHotel

If you purchased from Codecanyon, upload the ZIP to your server and extract:

unzip viserhotel.zip -d /var/www/viserhotel

Set permissions:

sudo chown -R www-data:www-data /var/www/viserhotel
sudo chmod -R 755 /var/www/viserhotel

Step 6: Configure Environment

Edit .env file:

APP_NAME="ViserHotel"
APP_ENV=production
APP_KEY=base64:GENERATED_KEY
APP_DEBUG=false
APP_URL=https://yourdomain.com

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=viserhotel
DB_USERNAME=viseruser
DB_PASSWORD=StrongPassword123!

Generate app key:

php artisan key:generate

Step 7: Run Migrations & Seed Data

php artisan migrate --seed

Step 8: Install Node.js & Build Assets

sudo apt install nodejs npm -y
npm install
npm run build

Step 9: Configure Web Server

Apache Virtual Host

<VirtualHost *:80>
    ServerName yourdomain.com
    DocumentRoot /var/www/viserhotel/public

    <Directory /var/www/viserhotel/public>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/viserhotel_error.log
    CustomLog ${APACHE_LOG_DIR}/viserhotel_access.log combined
</VirtualHost>

Enable site:

sudo a2ensite viserhotel.conf
sudo systemctl reload apache2

Step 10: Secure with SSL (Optional)

sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d yourdomain.com

Step 11: Access Application

Open your browser:

https://yourdomain.com

You should see the ViserHotel front‑end. Admin panel is usually at:

https://yourdomain.com/admin

Step 12: Troubleshooting

  • 500 Error: Check file permissions and .env settings.
  • Database Connection Error: Verify credentials in .env.
  • Assets Not Loading: Run npm run build again.
  • Blank Page: Ensure APP_KEY is generated.

Screenshots & Images

  • Dashboard Screenshot: Show admin panel with booking overview.
  • Booking Form Screenshot: Show customer reservation form.
  • Server Architecture Diagram: Nginx/Apache → PHP‑FPM → MySQL.

(Insert images where appropriate for clarity.)


References


Conclusion

By following this guide, you’ve successfully installed and configured ViserHotel on your own server. You now have a fully functional hotel booking solution with a responsive front‑end and powerful admin dashboard.

Next steps:

  • Configure payment gateways.
  • Add hotel rooms and pricing.
  • Secure admin panel with 2FA.
  • Scale with Docker or Kubernetes if needed.

Share:

Get new posts in your inbox

No spam. One short email per new article — practical PHP, Laravel, devops, and AI-assisted workflows.

Comments

Powered by GitHub Discussions via Giscus. A free GitHub account is required.