📦 Installation Guide
Follow these steps to install EasySign on your server.
Prerequisites
Before installing, ensure your server meets these requirements:
| Requirement | Details |
|---|---|
| PHP | Version 8.0 or higher |
| MySQL/MariaDB | Version 5.7 or higher |
| Web Server | Apache with mod_rewrite or Nginx |
| Composer | For installing PHP dependencies |
| SSL Certificate | Required for HTTPS (Let's Encrypt works) |
Required PHP Extensions
pdo_mysql # Database connectivity
openssl # Encryption features
gd # Image processing
mbstring # Multi-byte string support
zip # ZIP file operations
fileinfo # MIME type detection
curl # External API calls
Step-by-Step Installation
Download & Extract
Download the EasySign package and extract it to your web server's public directory.
# Example for Linux
unzip easysign-v1.0.0.zip -d /var/www/html/
Create Database
Create a MySQL database and user for EasySign:
CREATE DATABASE easysign CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'easysign_user'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON easysign.* TO 'easysign_user'@'localhost';
FLUSH PRIVILEGES;
Configure Environment
Copy the example environment file and edit it:
cp .env.example .env
nano .env
Update the database credentials:
DB_HOST=localhost
DB_NAME=easysign
DB_USER=easysign_user
DB_PASS=your_secure_password
ENCRYPTION_KEY=your_64_character_hex_key_here
Install Dependencies
Run Composer to install PHP packages:
composer install --no-dev --optimize-autoloader
Set Permissions
Ensure the uploads directory is writable:
chmod -R 755 uploads/
chmod -R 755 uploads/ads/
chmod -R 755 uploads/proofs/
Configure Web Server
Point your domain to the EasySign directory. For Apache, ensure .htaccess is being read.
For Nginx, add this to your server block:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Access the Application
Visit your domain in a browser. The database tables will be created automatically on first access.
Register the first user account - this will become the admin.
Post-Installation
Configure Admin Account
After registering, you'll need to manually set your account as admin:
UPDATE users SET role = 'admin' WHERE email = 'your@email.com';
Configure Email (SMTP)
Go to Admin Panel → Global Settings and configure your SMTP settings for email notifications.
Set Up Cron Jobs
For automated reminders and cleanups, add these cron jobs:
# Send signing reminders every hour
0 * * * * php /path/to/easysign/cron/send_reminders.php
# Clean expired sessions daily
0 2 * * * php /path/to/easysign/cron/cleanup.php
cPanel Installation
If you're using cPanel:
- Upload the ZIP file via File Manager
- Extract to your public_html or a subdomain folder
- Create a MySQL database via "MySQL Databases"
- Edit
.envvia File Manager - Run Composer via Terminal or SSH
- Ensure PHP version is 8.0+ in "Select PHP Version"
Troubleshooting
Common Issues
| Issue | Solution |
|---|---|
| Blank page | Check PHP error logs. Usually a missing extension. |
| Database error | Verify credentials in .env file |
| File upload fails | Check uploads/ folder permissions (755) |
| 500 Internal Server Error | Check .htaccess and enable mod_rewrite |
| Styles not loading | Clear browser cache, check file paths |