FLAP Setup
This crib sheet has been replaced by the more recent Building a current FLAP stack
Apache will either be configured in /etc/apache2 (SUSE/Ubuntu) or /etc/httpd (Mandrive) PHP is then enabled in Apache in conf.d/ ( or module.d/ )
The PHP configuration is similarly random. /etc/php5 on SUSE/Ubuntu with php.ini hidden in /etc/php5/apache2 while Mandrive simply has /etc/php.ini
But in both cases, the extensions are not managed in php.ini, but rather in a subdirectory /etc/php5/conf.d ( which also appears via a link as /etc/php5/apache2/conf.d in Ubuntu but not SUSE) or /etc/php.d in Mandriva.
In either case, the extensions configuration directory is the ideal way to configure things, and one should find .ini files for all of the other installed extensions. A good example is suhosin security extension, which has all of it's configuration there. Other packages tend to be a single line and I have created firebird.ini which has the entry 'extension=interbase.so' and at some point I must get around to adding the other ini file settings with their notes ( unless someone has already done it ? ) One thing to note here is the naming system for ini files. Mandriva uses a numeric prefix for each ini file, which provides a means of controlling the order that ini files are applied. This is important since some of their configuration data has been split and one needs to use the main ini file before applying secondary ini files. The secondary ini files will be ignored if the main one has not been loaded, which is something that happens with SUSE and Ubuntu. LDAP configuration for example, so on Mandriva the firebird.ini file is 42_firebird.ini ( same level as pgsql.ini ). Another little trick I have been using, rather than the recomended 'Comment this line to disable extension', is to simply add .off to the end of the file name, that way I can currently see that mysql and pgsql are loaded, but not enabled in PHP.
Mandriva |
SUSE Ubuntu |
CentOS |
||
Apache hpptd.conf | /etc/httpd/conf/hpptd.conf | /etc/apache2/httpd.conf | /etc/httpd/conf/hpptd.conf | |
Apache Modules | /etc/httpd/modules.d | /etc/apache2/conf.d | /etc/httpd/conf.d | |
Apache Virtual Configuration (Used by multisite in bitweaver) |
/etc/httpd/conf/vhosts.d | /etc/apache2/vhosts.d | /etc/httpd/conf.d | |
Apache Restart | /etc/init.d/httpd restart | /etc/init.d/apache2 restart | /sbin/services httpd restart | |
PHP .ini | /etc/php.ini | /etc/php5/apache2/php.ini | /etc/php.ini | |
PHP Extension Ini Files | /etc/php.d |
/etc/php5/conf.d ( Ubuntu uses /etc/php5/apache2/conf.d but that is just a link to here) |
/etc/php.d | |
PHP Extension Binary Files | /usr/lib64/php/extensions | /usr/lib64/php5/extensions | /usr/lib64/php/modules | Not sure on 32 bit versions |
Firebird | /usr/lib64/firebird | /opt/firebird |
/opt/firebird (symlink for utilities from /usr/lib) |
|
|
Installation Links
Most distributions have their own copies of Apache2 ( we will not worry about Apache1 although it is still widly used it is not something we have used ) and PHP. There have been a few problems with the interbase driver in PHP with changes in core API being applied without being fully tested on Interbase or Firebird. PHP5.2.8 is believed to be fairly bug free, but still does not pass all of the functional tests. PHP5.2.0 to 5.2.6 had a number of bugs with blob identifiers so should not be used. PHP 5.1.6is believed to be theonly 5.1 build that was stable for Interbase/Firebird, but it is recomended that 5.2.8 or later is used.
Firebird can be installed from the distrution, although in many cases this is still a couple of versions behind the current version. The Firebird download site copies of the binaries install with little difficulty on the distributions currently tested. Although care should be taken if a previous distribution copy has been loaded because of the differences in location of the files. The download site copy loactes firebird as /opt/firebird, so files and links may be left pointing to /usr/ based previous versions.
A first pass at a 64 bit Linux package for Firebird is available here, and other useful packages will be added as they are created.
Other sources
- FAQ 191 on Firebirdfaq.org
- Windows setup paper
- Getting Started Guide
- Old paper (BDC2000)
- Firebird PHP Generator
- nbackup on PHP