Jeff has been developed using a LAMP environment, as it is the most common server configuration. Nonetheless it may be installed under windows or mac platforms, may be served by different web servers (i.e. nginx) and may work with different DBMS.
Jeff requires php>=5.3 with the directive short_open_tag enabled
Jeff versions earlier than 0.99 requires php>=5.0 with the directive short_open_tag enabled
Jeff can automatically detect the operating system over which it is installed and sets automatically all its internal paths. So you have to do nothing in order to use it with operating systems different from linux.
Jeff comes with two apache .htaccess files which require apache>= 2.0 with mod_expire, mod_header and mod_rewrite enabled.
Actually only the mod_rewrite is strictly required as all links are routed by the .htaccess files. The other instructions which requires the other modules are useful for speed optimization, but the system may work without them.
So if you'd like to use a different web server all you have to do is to "translate" the instructions included in .htaccess files to fit your server configuration syntax, removing the not rewrite ones if the web server you use can't manage them.
Database management system
Jeff comes with a default mysql connector, which requires mysql >= 5.0. To use a different DBMS you need to do the folowing things:
- create a new db connector implementing all the methods defined in the core/db/interface.db.php interface. Essentially you have to "clone" the class modules/mysql/mysql.php using the correct syntax for your DBMS
- add the new connector instance in the core/db/db.factory.php class, following the same syntax as for the mysql class instance.
- Change the DBMS constant value in configuration.php in order to get the new connector working.
Look at the download and installation section