What you need
On this page
Hearing Center Business Suite is one PHP script with one MySQL database. It was built for ordinary cPanel shared hosting: there is nothing to compile, no Composer, no Node and no outside CDN. If your host runs WordPress, it runs this.
The server
| What | Needed | Why |
|---|---|---|
| PHP | 8.0 or newer (8.1–8.3 recommended) | The script refuses to install on anything older. |
PDO MySQL driver (pdo_mysql) | Required | Every page talks to the database through it. |
mbstring | Required | Bengali names, addresses and messages. |
json | Required | Settings, audiograms, addon data. |
| cURL | Strongly recommended | The licence check, SMS and WhatsApp gateways, the addon store and updates. Without it the script falls back to allow_url_fopen. |
| ZipArchive | Recommended | Uploading an addon as a ZIP and the Backup & Restore addon. Without it addons have to be uploaded by FTP. |
| MySQL or MariaDB | MySQL 5.7+ or MariaDB 10.3+ | One empty database and a user with full rights on it. |
Apache with mod_rewrite (or LiteSpeed) | Recommended | Clean addresses such as /services and /blog/how-to-read-your-audiogram. Without it, switch Clean web addresses off and the site uses .php addresses instead. |
| Cron jobs | Recommended | E-mail retries, licence re-checks, reminders, scheduled backups. See Scheduled jobs. |
The installer checks all of this on its first screen and tells you, line by line, what is missing. It will not continue while one of the required items is red.
Folders that must be writable
- The script's own folder — only once, so the installer can write
config.phpandinstalled.lock. uploads/— logos, product photos, patient photographs, lab report PDFs, chat attachments and backups are stored here.755is normally enough on cPanel.
The installer puts a small .htaccess inside uploads/ that stops PHP from running there, so an uploaded file can never be executed. Do not delete it.
The domain
- A domain, a sub-domain or a sub-folder all work:
shrabonhearing.com,care.shrabonhearing.comorshrabonhearing.com/clinic. - HTTPS is strongly recommended. Patients sign in to read their reports, dealers pay their dues and staff open patient files; all of that should travel encrypted. Free certificates (AutoSSL / Let's Encrypt) from cPanel are fine. The
.htaccessfile that ships with the script has the two lines that force HTTPS ready, commented out. - One licence key runs on one domain.
www.and the bare domain count as the same site.
Outgoing connections
The script talks to a few outside addresses. If your host has a firewall for outgoing traffic, allow:
https://license.faruk.bd— the License Center (licence checks, the addon store, updates, support tickets).- Your SMS gateway, your WhatsApp gateway and your SMTP server, if you use them.
- Google Drive, OneDrive, Dropbox or your FTP server, if the Backup & Restore addon sends copies there.
The License page has a Test the server connection button that tells you straight away whether the License Center can be reached.
Limits worth raising
| PHP setting | Suggested | Used by |
|---|---|---|
upload_max_filesize / post_max_size | 16M or more | Lab report PDFs, photos, addon ZIPs, restoring a backup |
memory_limit | 256M | Exports and backups of a large database |
max_execution_time | 120 | Backups, imports, sending a newsletter |
The script's own upload limit is set separately under Settings → General → Maximum upload size (MB); it can never be larger than what PHP allows.
The people using it
- Staff use any modern browser: Chrome, Edge, Firefox or Safari, on a computer, a tablet or a phone. The admin panel works on a phone, and with the Online & Offline Sync addon it keeps working when the connection drops.
- Dealers sign in to their own portal at
/dealer/with the same browsers. - Patients need nothing but a phone: the website, online booking, the shop, their own account and their test reports are all built for small screens first.
Before you start
Have these ready:
- The script ZIP from My licences on license.faruk.bd.
- A database name, user and password from cPanel → MySQL Databases.
- Your licence key (or create your account on the License Center during installation — the last screen of the installer has the link).
Then go on to Installation.