PHP5
Maintainer
David Harper (current maintainer)
Firewall Services (original contrib)
Version
Description
This contrib allows you to install PHP version 5 alongside PHP version 4, which is the default in SME Server 7.x. Unlike a full upgrade to PHP5, installation of this contrib will not affect your ability to install future updates to SME Server 7.x. PHP 4 remains the default version.
Installation
To install the contrib, issue the following command from the console:
yum --enablerepo=smecontribs install smeserver-php5-cgi signal-event post-upgrade ; signal-event reboot
Upgrade
To upgrade from Firewall Services' earlier release, you must do as follows:
1. Remove Packages:
rpm -e php5-cgi*
2. Remove Custom Template
rm /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/80php5-cgi
3. Remove Any config for web apps
rm /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/90<webappname>
4. Expand Templates & Reboot
signal-event post-upgrade signal-event reboot
5. Install the updated contrib as above.
6. Follow the instructions below to enable PHP5 for your web applications.
(Based on suggested workaround in Bugzilla:6108)
Usage
PHP5 can be used in Ibays and for contribs that are installed in /opt.
For Ibays
To configure an Ibay to use PHP 5, run the following commands from the shell:
db accounts setprop [ibayname] php5 yes signal-event ibay-modify [ibayname]
To return to the default version of PHP, run the following command from the shell:
db accounts setprop [ibayname] php5 no signal-event ibay-modify [ibayname]
For contribs
Web applications that are installed in /opt can also be configured to use PHP5. Ideally, application packagers should update their integration RPMs to depend on smeserver-php5-cgi and deploy a new template fragment, but if you wish, you can also configure PHP5 manually.Here are two shell scripts that will switch between PHP v4 and v5.
First, create a custom template:
mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/ pico /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/90[MyAppName]
Next, put the following lines in the new file:
<Directory /opt/[myapp]> AddHandler php5-cgi .php Action php5-cgi /php5-cgi/php-cgi </Directory>
Save and exit (CTRL-O, CTRL-X), and then expand the web server's configuration template:
expand-template /etc/httpd/conf/httpd.conf
Before you apply the changes, be sure to check that there is no error in the new configuration file:
httpd -t
If this command returns ’Syntax OK’, you can restart the web server:
svc -t /service/httpd-e-smith
Options
You can fine-tune PHP5 using the e-smith configuration database. To keep things simple, PHP5 inherits the same settings as PHP4. To modify a property, issue the following commands from the SME Server shell:
db configuration setprop php [property] [value] expand-template /etc/php5/php.ini
Note that any changes will also affect PHP4. To apply the changes to PHP4 immediately, run:
expand-template /etc/php.ini
Bugs
Please raise bugs under the SME-Contribs section in bugzilla .