Installing alumni management software on cPanel hosting
If you can upload a zip file and create a database, you can put a complete alumni portal on your own hosting this afternoon. This is the whole process, in order, including the parts that go wrong.
Written for AlumDeck, but the first half applies to any Laravel application installed through a web installer.
What you need in front of you
Gather these first. Installs go badly when one of them is missing and nobody checks until halfway through.
A hosting account with cPanel
Any ordinary shared plan, from roughly $3 a month, is enough to start. If you can see File Manager and MySQL Databases in the control panel, you are fine.
A server that meets the requirements
- PHP 8.2 or newer. Most hosts let you switch versions yourself.
- MySQL or MariaDB, with permission to create a database and a user.
- The pdo_mysql, mbstring and openssl extensions, which are standard almost everywhere.
- An image library, either gd or imagick, for photographs and galleries.
- Write access to the application folder and to its storage and cache folders.
You do not have to check these by hand. The installer checks all of them on screen before it writes anything, and names the requirement you can forward to your host.
A domain, the zip file and your licence key
A subdomain such as alumni.yourschool.edu is the usual choice and takes a minute to add. Set up the free SSL certificate at the same time, so the site is on HTTPS before members type passwords into it.
Seven things you do, in this order
Two jobs in cPanel, then five screens in a browser. The wizard is six steps and tells you which one you are on.
1. Create an empty database and a user
In MySQL Databases, create a database, create a user with a long password, then add the user to the database with all privileges. Copy the full names down: most hosts add your account name as a prefix.
2. Upload the zip and extract it
In File Manager, open the folder your domain serves, upload the zip and use Extract. That is usually public_html, or the folder cPanel created for your subdomain.
3. Open the site in a browser
Visit the domain. With no configuration yet, AlumDeck sends you to the installer instead of a homepage. A directory listing means you extracted into the wrong folder.
4. Licence key and server check
Enter your key, then read the check. Red must be fixed, amber is optional. Nothing has been written to your server yet, so you can fix a line, reload and try again.
5. Database details
Paste the name, user and password from step one. The installer proves the user can create a table, then removes it. A user who can connect but not create tables fails halfway through.
6. Your institution and your admin account
Site name, the address alumni will see, and the first administrator. Use your own email rather than a shared one, and do not call the account admin.
7. Review, install, then log in
Install writes the configuration, creates the tables and sets up your account. Then it disables itself permanently: the setup URLs return a 404, so nobody can walk back through the wizard on your live site.
Step 6 of 6 Install DONE configuration written DONE database tables created DONE administrator account created DONE uploads folder prepared DONE installer disabled permanently Your alumni site is live. Sign in to the admin panel. This wizard cannot be reopened. Setup URLs now return 404.
The first twenty minutes in the admin panel
You now have a working site with nothing in it. This order saves the most rework.
- Put your logo and colours in. Branding is a settings screen, not a template edit.
- Switch off the modules you will not use yet. A job board with no jobs makes a new site look abandoned, and nothing is deleted when you switch it off.
- Set up your batch or class years. The directory, galleries and reunion pages hang off them.
- Write the three pages every alumni site needs: who you are, how to join, how to reach a person.
- Decide who approves registrations, because every new member waits for a human.
- Fill in the SEO title and description on the homepage, the about page and the join page.
- Back up the database and the uploads folder, and write down where the backup goes.
Then leave it a day and read it as an alumnus would. The gap between what an admin sees and what a member sees is where most alumni sites quietly fail.
When it does not work
Almost every failed install on shared hosting is one of these six, and five are fixed from cPanel.
The PHP version is too old
Open Select PHP Version and pick 8.2 or newer. If nothing that recent is offered, ask your host to move you to a newer PHP handler. Almost all of them can.
A required extension is missing
The same screen usually has an Extensions tab. Tick the missing one, save and reload. If it is not listed, send your host the exact line from the check; it is phrased so a technician knows what to enable.
The database connection is refused
Nine times in ten this is the account prefix. Copy the database and user names exactly as MySQL Databases shows them. Use localhost unless your provider documents otherwise.
A folder is not writable
Set the application folder and its storage and cache folders to 755. Some hosts need 775 and will tell you. Do not set anything to 777 because a forum said to; it is a security problem and rarely the fix.
A blank page or a 500 error
Check the error log in cPanel, which records the actual reason. The usual causes are an upload that did not finish before you extracted it, and a low PHP memory limit.
The installer URL returns a 404 afterwards
That is correct behaviour. The installer removes itself once setup completes so nobody can rerun it against your live database. To start over, drop the database, delete the files and begin at step one.
What people ask before they start
Do I need a developer for this?
No. Creating a database and extracting a zip file are the same two actions you would take to install any website software, and the rest is a form. If you would rather hand it over, any web developer will recognise a standard Laravel application.
Will it run on cheap shared hosting?
Yes, and that is the case it was built for. An ordinary plan handles tens of thousands of member records without complaint, because a directory is mostly straightforward database queries. You will feel the limits of a cheap plan on image-heavy gallery pages long before you feel them on member records.
Can I test it before going live?
Yes. The licence covers one live installation plus a staging copy of the same site, so you can rehearse the install or trial an update without buying a second licence. Keep the staging copy closed to the public, because it holds real member data.
What if it will not run on my host at all?
Send us the server check screen. It is a short list and usually points straight at a setting your host can change. If your host genuinely cannot meet the published requirements, ask within 7 days of purchase and you get your money back.
Ten minutes of setup, then it is yours
One licence, $49 once per installation, unlimited members, and a year of updates and support while you find your feet.
Not sure your hosting is up to it? Send us what your control panel says about PHP and MySQL and we will tell you honestly.