Step-by-Step Guide
- Download ShulNET files from GitHub.
- Upload all files to the desired location of your server. Generally, this is a sub-domain or sub-folder on your website.
- Make sure that you upload the files in the correct mode. A general rule is: anything you edit in a text editor (example, .php files) should be transferred in ASCII mode. Anything you can’t view in a text editor, such as images, ZIP files, and executables should be transferred in binary mode. Most FTP clients are intelligent enough to discern the difference in files.
- Create a database and database user from your website’s control panel or using tools like MySQL Workbench.
- Access the setup in a web browser by going to “https://yoursite.com/pathtoShulNET/setup”
- The site will tell you if you have all the PHP prerequisites and file system permissions required to run ShulNET.
- Input your settings and kick off the process.
- Your database tables will be successfully created, and if applicable, populated.
- Set permissions on all files within the admin/cron folder to 755 and proceed to create the cron jobs.
- Set the following folders to 777:
- /admin/sd-system (set to 755 after completing setup)
- /admin/sd-system/attachments
- /admin/sd-system/exports/
- /custom/sessions
- /custom/qrcodes
- /custom/uploads
Cron Jobs
A cron job controls a variety of tasks that need to be triggered and run on a regular basis.
Common Installation Issues
500 Internal Error/General Errors
There are a number of reasons you may receive a 500 internal error. Before proceeding, make sure that error reporting is turned on at the server level and analyze the logs that are generated. Common reasons for 500 errors include:
- Permissions have not been set correctly on the files and folders.
- Server requirement incompatibilities:
- ShulNET is developed and tested in 7.0 apache and later versions of MySQL. Running in older versions can be possible, but is not recommended
- You’re missing required PHP modules.
MySQL Errors
- Be sure your credentials are correct, both with the MySQL server host and MySQL database name, username, and password.
- Be sure the MySQL user has access to the database.