Explore complete technical guides covering installation, system requirements, performance benchmarks, customization methods, and troubleshooting.
PHP LaravelâŻ10 ⢠MySQL ⢠BootstrapâŻ5 ⢠Facebook Graph API ⢠Twilio SMS ⢠SendGrid Email
| Requirement | Minimum | Recommended |
|---|---|---|
| OS | UbuntuâŻ20.04 LTS / CentOSâŻ8 | UbuntuâŻ22.04 LTS / AlmaLinuxâŻ9 |
| Web Server | ApacheâŻ2.4 or NginxâŻ1.22 | NginxâŻ1.24 (HTTP/2 + TLS) |
| PHP | 8.1.x (with ext-mbstring, ext-openssl, ext-pdo_mysql) | PHPâŻ8.2.x (same extensions) |
| Database | MySQLâŻ5.7 / MariaDBâŻ10.3 | MySQLâŻ8.0 / MariaDBâŻ10.6 |
| Composer | 2.2.x | Latest stable |
| Node.js (optional for assets) | 14.x | 18.x (LTS) |
| SSL | Selfâsigned OK for testing | Valid CAâsigned cert (Letâs Encrypt) |
| RAM / CPU | 1âŻGB / 1 core | 2âŻGB+ / 2 cores |
| Disk Space | 2âŻGB free | 5âŻGB+ (logs + backups) |
| Platform | Access Method |
|---|---|
| cPanel | File Manager / Terminal (cPanel â Terminal) |
| VPS | SSH (e.g., ssh root@your-ip) |
# Example SSH login
ssh [email protected]# Ubuntu/Debian
apt update && apt install -y nginx php8.2 php8.2-fpm php8.2-mbstring php8.2-openssl php8.2-pdo php8.2-mysql composer unzip curl
# CentOS/AlmaLinux
dnf install -y epel-release
dnf install -y nginx php php-mbstring php-openssl php-pdo php-mysqlnd composer unzip curl# Install UFW (Ubuntu)
apt install -y ufw
ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable-- Log into MySQL as root
mysql -u root -p
-- Create database
CREATE DATABASE chatpion_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- Create user with strong password
CREATE USER 'chatpion_user'@'localhost' IDENTIFIED BY 'StrongP@ssw0rd!';
-- Grant privileges
GRANT ALL PRIVILEGES ON chatpion_db.* TO 'chatpion_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;.env file (never commit it). This keeps your site fast and secure, which Google rewards with better rankings.# From the project root after extracting files
php artisan migrate --forceIf you prefer a raw SQL dump:
mysql -u chatpion_user -p chatpion_db < database/seeders/chatpion_initial.sql# Use wget or curl to fetch the zip from your order
wget https://217g.com/downloads/chatpion.zip -O /tmp/chatpion.zippublic_html.chatpion.zip.public_html/chatpion.# Assuming /var/www/html is your web root
unzip /tmp/chatpion.zip -d /var/www/html/chatpioncd /var/www/html/chatpion
# Directories need write access for storage & cache
find . -type d -exec chmod 775 {} \;
# Files should be readable
find . -type f -exec chmod 664 {} \;
# Ensure the web server user (www-data or nginx) owns the files
chown -R www-data:www-data .chmod 775 on directories is essential for Laravelâs storage, bootstrap/cache, and runtime logs.# Inside the project root
composer install --optimize-autoloader --no-dev
# If you need to compile assets (optional)
npm install
npm run prodIf you lack Node.js on a shared host, you can skip the asset step; the preâcompiled assets are already bundled.
Create an .htaccess file in the public folder (Laravelâs entry point) if it isnât present:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
# Protect .env
<Files .env>
Order allow,deny
Deny from all
</Files>Enable mod_rewrite via Select PHP Version â Options â mod_rewrite if required.
Create a site block at /etc/nginx/sites-available/chatpion.conf:
server {
listen 80;
server_name chatpion.example.com;
root /var/www/html/chatpion/public;
index index.php;
# Laravel pretty URLs
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# PHP handling
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
# Security headers (optional)
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options SAMEORIGIN;
}# Enable site and reload Nginx
ln -s /etc/nginx/sites-available/chatpion.conf /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginxapt install -y certbot python3-certbot-nginx
certbot --nginx -d chatpion.example.com.env)Copy the example file and edit the values:
cp .env.example .env
php artisan key:generateAPP_NAME="Chatpion"
APP_ENV=production
APP_KEY=base64:GENERATED_KEY_HERE
APP_URL=https://chatpion.example.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=chatpion_db
DB_USERNAME=chatpion_user
DB_PASSWORD=StrongP@ssw0rd!
# Facebook Graph API
FACEBOOK_APP_ID=your_facebook_app_id
FACEBOOK_APP_SECRET=your_facebook_secret
FACEBOOK_PAGE_ID=your_page_id
# Twilio
TWILIO_SID=your_twilio_sid
TWILIO_TOKEN=your_twilio_auth_token
TWILIO_FROM=+1234567890
# SendGrid
SENDGRID_API_KEY=your_sendgrid_api_key
[email protected]
MAIL_FROM_NAME="Chatpion".env file outside the public web root. Laravel automatically protects it, but an extra .htaccess rule never hurts.# Clear caches and optimize
php artisan config:cache
php artisan route:cache
php artisan view:cacheVisit https://chatpion.example.com in your browser. The installer wizard should appear. Follow the onâscreen steps to:
https://chatpion.example.com/webhook/facebook).Once the wizard completes, youâll land on the admin dashboard.
| Symptom | Likely Cause | Fix |
|---|---|---|
| âSQLSTATE[HY000] [2002] Connection refusedâ | DB credentials wrong or MySQL not listening on localhost. | Verify .env DB settings; ensure MySQL service is running (systemctl status mysql). |
| âPermission denied: storage/framework/cacheâ | Incorrect folder permissions. | chmod -R 775 storage bootstrap/cache and chown -R www-data:www-data storage bootstrap/cache. |
| âClass âFacebook\Facebookâ not foundâ | Composer autoload missing. | Run composer install again; ensure vendor/ exists. |
| Webhook verification fails on Facebook | Wrong webhook URL or missing SSL. | Use a valid HTTPS URL; doubleâcheck the Verify Token matches the value set in Facebook App. |
| Emails not sent | SendGrid API key invalid or blocked by firewall. | Test with curl -X POST https://api.sendgrid.com/v3/mail/send ... and confirm outbound port 443 is open. |
storage/logs/laravel.log) and the web server error log (/var/log/nginx/error.log or /var/log/apache2/error.log) for detailed diagnostics.<link rel="canonical" href="{{ url()->current() }}">. Verify on product pages.Product and FAQPage schema in the head for rich snippets.php artisan route:cache) and use a CDN for static assets (Bootstrap, images).php artisan sitemap:generate (install a package if not present) and submit to Google Search Console./ but disallows /admin/* to keep the backend out of search results.A: Yes, Chatpion works on most modern cPanel servers that support PHPâŻ8.1+ and MySQLâŻ5.7+. However, for high traffic eâcommerce stores or heavy API usage (Facebook, Twilio), a VPS with dedicated resources is recommended to avoid throttling and to enable custom Nginx/Apache configs.
A: Use Laravelâs migration system for database changes and
Order now for only $5.00 flat. Receive the complete untouched ZIP archive and database SQL within minutes.