Explore complete technical guides covering installation, system requirements, performance benchmarks, customization methods, and troubleshooting.
Target: cPanel & VPS (2026)
Fluxstore Pro is a premium, production‑ready e‑commerce solution built with Flutter 3.x, Dart, and Firebase. This guide walks you through a step‑by‑step installation on a typical shared‑hosting cPanel environment or a dedicated VPS, covering:
chmod 775)| Requirement | Minimum | Recommended |
|---|---|---|
| OS | Ubuntu 20.04 LTS / CentOS 8 | Ubuntu 22.04 LTS / AlmaLinux 9 |
| CPU | 2 vCPU | 4 vCPU |
| RAM | 2 GB | 4 GB+ |
| Disk Space | 5 GB (SSD) | 10 GB+ (SSD) |
| Web Server | Apache 2.4 or Nginx 1.18+ | Nginx 1.22+ (recommended) |
| PHP | 7.4 (for cPanel file manager) | 8.2 |
| MySQL / MariaDB | 5.7 / 10.3 | 8.0 / 10.5 |
| OpenSSL | 1.1.1 | 3.0+ |
| Firebase CLI | – | Latest (npm install -g firebase-tools) |
ssh [email protected]# Ubuntu/Debian
apt update && apt install -y nginx mysql-server php-fpm php-mysql git unzip curl
# CentOS/AlmaLinux
yum install -y epel-release
yum install -y nginx mariadb-server php-fpm php-mysqlnd git unzip curlmysql_secure_installationFollow the prompts to set a strong root password and remove anonymous users.
-- Log in as root
mysql -u root -p
-- Inside MySQL prompt
CREATE DATABASE fluxstore_pro CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'flux_user'@'localhost' IDENTIFIED BY 'StrongP@ssw0rd!';
GRANT ALL PRIVILEGES ON fluxstore_pro.* TO 'flux_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;/var/www/fluxstore.cd /var/www
unzip fluxstore_pro.zip -d fluxstorecd /var/www/fluxstore
find . -type d -exec chmod 775 {} \;
find . -type f -exec chmod 664 {} \;
chmod 775 storage bootstrap/cachechmod 775 on directories ensures the web server can write cache, logs, and uploaded assets while keeping the owner in control.Copy the sample env file and edit credentials:
cp .env.example .env
nano .envKey entries:
APP_NAME="Fluxstore Pro"
APP_ENV=production
APP_KEY=base64:YOUR_GENERATED_KEY
APP_DEBUG=false
APP_URL=https://yourdomain.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=fluxstore_pro
DB_USERNAME=flux_user
DB_PASSWORD=StrongP@ssw0rd!
# Firebase
FIREBASE_PROJECT_ID=your-firebase-id
FIREBASE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n"
FIREBASE_CLIENT_EMAIL=your-service-account@your-firebase-id.iam.gserviceaccount.comGenerate the Laravel app key (if applicable):
php artisan key:generateCreate a new virtual host file:
nano /etc/apache2/sites-available/fluxstore.conf<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/fluxstore/public
<Directory /var/www/fluxstore/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/fluxstore_error.log
CustomLog ${APACHE_LOG_DIR}/fluxstore_access.log combined
</VirtualHost>Enable the site and rewrite module:
a2enmod rewrite
a2ensite fluxstore.conf
systemctl reload apache2Create a server block:
nano /etc/nginx/sites-available/fluxstoreserver {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/fluxstore/public;
index index.html index.htm index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
}
location ~ /\.ht {
deny all;
}
# Security headers
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options SAMEORIGIN;
add_header X-XSS-Protection "1; mode=block";
}Enable and test:
ln -s /etc/nginx/sites-available/fluxstore /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginxapt install -y certbot python3-certbot-nginx # for Nginx
certbot --nginx -d yourdomain.com -d www.yourdomain.comFor Apache, replace --nginx with --apache.
cd /var/www/fluxstore
php artisan migrate --force
php artisan db:seed --force # optional demo dataIf you want to serve the compiled web version via the same server:
cd /var/www/fluxstore/flutter
flutter pub get
flutter build web --releaseCopy the build output to the public folder:
cp -R build/web/* /var/www/fluxstore/public/flutter build apk or flutter build ios locally; the server only hosts the API and web assets.Open https://yourdomain.com in a browser. You should see the Fluxstore landing page, and the admin panel (usually /admin) should prompt for login using the credentials you set in the .env file.
| Symptom | Likely Cause | Fix |
|---|---|---|
| 404 on every route | mod_rewrite disabled (Apache) or missing try_files (Nginx) | Enable rewrite module or add correct try_files directive. |
| Database connection error | Wrong DB credentials or MySQL not running | Verify .env values and systemctl status mysql. |
| Permission denied on storage/ | Incorrect chmod or wrong owner | chown -R www-data:www-data storage bootstrap/cache. |
| SSL handshake failure | Mixed‑content HTTP resources | Update all asset URLs to https:// or use relative paths. |
| Firebase auth fails | Invalid service‑account JSON or missing env vars | Re‑export the private key and double‑check FIREBASE_* variables. |
php artisan config:cache && php artisan route:cache. gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml+rss; location ~* \.(js|css|png|jpg|jpeg|gif|svg|ico)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}Developers looking for a verified, untouched source code version can obtain it instantly for a flat $5.00 rate via 217G. The delivery is on‑demand, ensuring you receive the exact build used in this guide without any hidden modifications.
A: Yes. The guide above works on standard cPanel servers as long as you have SSH access, can install Composer, and meet the minimum PHP/MySQL versions. Use the Apache virtual‑host example and set file permissions to 775 for directories.
A: While you can reuse a single Firebase project, best practice is to create a dedicated Firebase project per environment (dev, staging, production). This isolates authentication keys, Firestore rules, and analytics data, preventing cross‑environment contamination.
A: Export the old database:
mysqldump -u old_user -p old_database > old_database.sqlTransfer the dump to the new server (SCP or FTP) and import:
mysql -u flux_user -p fluxstore_pro < old_database.sqlAfter import, run php artisan migrate --force to ensure any missing schema updates are applied.
chmod 775)Order now for only $5.00 flat. Receive the complete untouched ZIP archive and database SQL within minutes.