Requirements
FlightPath requires the following minimum server configurations. It has been tested extensively in a Linux environment, with Apache 2.4 as the web server.
Server Requirements
- Database
- MySQL (5.1 and 8.x tested) or MariaDB (10.x tested)
- View settings you may need to make for your database.
- PHP
- FlightPath 7
- PHP versions 7.4, 8.1, 8.2 tested
- FlightPath 6
- PHP versions 5.2, 5.3, 5.4, 7.1, 7.2, 7.3, 7.4 tested. PHP 8x is not supported.
- Required PHP modules (that may not be installed by default)
- gd, xml, curl, openssl, pdo_mysql, mbstring, json, calendar
- Optional: imap
- FlightPath 7
- Webserver
- Apache, LiteSpeed, or Nginx*
- Apache 2.4 tested and recommended
- Possibly other webservers will work as well; albeit Clean URLs may not work. See below.
- Nginx will require optional configs to work with Clean URLs in FlightPath.
- Apache, LiteSpeed, or Nginx*
- OS
- Linux, Windows, Unix all tested (Linux recommended)
- Misc
- Minimum of 3GB system RAM, not including the database.
- 4GB of RAM recommended** for web server, 2 GB RAM recommended for database server (if separate)
- Minimum of 50MB free disk space, 1 GB recommended for web server. 10 GB recommended for database server, or more depending on the size of your institution.
- Minimum of 3GB system RAM, not including the database.
* It is possible other webservers will work as well, so long as they can be configured to process "Clean URLs" described below. As long as the server can read an .htaccess file, or can imitate the URL rewriting rules described within it, it should work with FlightPath. Please see these tips on using Nginx.
** This will vary based on your system and amount of activity, but the PHP memory_limit should be set a little high, starting at 2048M. As such, you will need to have at least double this amount of RAM for the entire system to run smoothly.
PHP memory_limit
FlightPath uses more memory than the average web application, due to the amount of data it must collect and work on while advising a student. Edit your php.ini file, and look for the line which specifies memory_limit = XXXM. Set this to 2048M to start, and raise it if FlightPath dies with a 500 error during operations (or you just see a white screen with no errors). You will need to restart your webserver after making this change.
Clean URLs
Note: Clean URLs are optional. If your server does not support URL-rewriting, it should still be able to run FlightPath.
FlightPath uses URL rewrites (in its .htaccess file) to create "clean URLs". You must configure your (Apache-based) web server to allow overrides for your FlightPath directory. Many servers have this set up by default. If you get a 500 Internal Server Error, or a 404 Page not Found while trying to install FlightPath, this is the problem.
- To fix (with Apache), add this to your httpd.conf file:
- <Directory "/path-to-flightpath/flightpath"> AllowOverride All </Directory>
- Remember to restart apache after making this change.
- This assumes (with Apache) that you have the Mod Rewrite module enabled. Typically, this module is already enabled, but if not, you will need to consult your server's administrator or other guides online for enabling Mod Rewrite.
If you are not using Apache (or compatible) web server, you may be able to configure your web server to imitate the Mod Rewrite rule used by FlightPath for Clean URLs. That is, that a URL in this format:
http://example.com/flightpath/index.php?q=admin/config/etc
be rewritten into this format:
http://example.com/flightpath/admin/config/etc
Notice the index.php?q= is eliminated from the URL, making it appear more clean and easier to read and type.
To disable from the database, should you get "locked out" of your site, you can edit the variables table, and remove the entry for "clean_urls".