🏨 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
.envsettings. - Database Connection Error: Verify credentials in
.env. - Assets Not Loading: Run
npm run buildagain. - Blank Page: Ensure
APP_KEYis 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
- Laravel Documentation
- Composer
- ViserHotel Codecanyon Page (codecanyon.net in Bing)
- Certbot SSL Guide
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.