Installation and Deployment - softerfish/fyuhls GitHub Wiki
This page is the practical install guide for fyuhls v0.1.2.
- Linux hosting
- PHP 8.2 or newer
- MySQL or MariaDB
- PDO MySQL
- OpenSSL
- cURL
- URL rewriting support
- writable
storage/and config path targets
- keep the full project outside the public web root when possible
- point the domain or subdomain document root at the project's
public/directory - keep the generated hidden config file outside the webroot
Example:
- project root:
/home/username/fyuhls - document root:
/home/username/fyuhls/public
- Upload the full project, including
src,public,vendor,config, andstorage. - Create the database and database user first.
- Point the site to
public/. - Visit
/install.php. - Complete the installer with database and admin credentials.
- Let the installer generate the hidden config path automatically.
- Visit
/post_install_check.php. - Configure cron, storage, email, packages, downloads, uploads, SEO, and security.
- the installer enforces HTTPS outside local development
- hidden config targets are restricted to safe absolute
.phpfiles - unsafe config targets inside the webroot or normal config directory are blocked
- the app can auto-rotate an insecure default
app_keywhen the hidden config file is writable
- confirm the hidden config file exists and is outside the webroot
- check System Status
- configure cron
- configure at least one storage node
- test email delivery
- review upload and download rules
- review security, proxy, and captcha settings
- review SEO settings and canonical URL
fyuhls expects the cron runner to execute every minute:
* * * * * php /home/yourusername/fyuhls/src/Cron/Run.phpWithout cron:
- cleanup will drift
- email queue work will stall
- dashboard cached stats may fall back to live mode
- reward and fraud jobs will not process
- multipart upload recovery and reconciliation will not run
- change the domain document root to the project
public/folder
- update the public path so the live domain points to
public/
- treat storage-path changes as infrastructure changes, not cosmetic edits
- test one upload, one download, one delete, and one password-reset flow after deployment
- if using object storage, validate bucket CORS and delivery behavior before public launch
- if using updater preview/apply, review the preview report before applying changes on a modified install