This module enhances the built in PHP functionality by adding some loadable extensions. Through the module management page the extensions to be activated can be selected. In addition to the extensions provided for the build in PHP library a PHP CLI/CGI of the same version is made available.
Supported Models
This module should work for the following models:
1U4200XXX, N2800, 1U4500, N4800, 1U4600, M3800, N6850, N0503, N2200XXX, N3200PRO, N8900, N3200XXX, N8850, N4100PRO, N8900V, N10850, N4200, N12000, N4200Eco, N12000V, N4200PRO, N16000, N5200, N16000V, N5200PRO, N5200XXX, N5500, N7700, N7700+, N7700PRO, N7700SAS, N8200XXX, N8800, N8800+, N8800PRO, N8800SAS
Installation
Extract the module binary package (.mod) from the archive and
install it.
Configuration
After
enabling the module the module status and configuration page can be
accessed. This page allows to select which extensions should be loaded. Currently the following extensions are provided by this module:
- bcmath - binary calculator
- bz2 - provides support to read/write bzip2 compressed files
- calendar - simplifies
converting between different calendar formats
- curl - provides an interface to the libcurl library
- dbase - access records stored in dBase-format
(dbf) databases
- exif - manage EXIF information in images
- ftp - allows access to FTP servers
- gettext - provides a NLS (Native Language Support)
API
- json - provides JSON encode/decode functions
- ldap - provides LDAP support
- mailparse - Mail parser functions
- mbstring - multibyte string functions
- mcrypt - provides an interface to the mcrypt library
- mhash - provides an interface to the mhash library
- pgsql - provides PostgreSQL support
- shmop - read,
write, create and delete Unix shared memory segments
- snmp - wrapper around the underlying Net-SNMP
- soap - provides SOAP specific function
- wddx -
Web Distributed Data Exchange - xattr - access extended file attributes
- xsl - implements the XSL standard
After enabling the module, the path to the PHP CLI binary is
/raid/data/module/PHPExtensions/system/bin/php
Using the CGI Version of the Module with the built in web server
To use the CGI version of the module the following has to be added to a .htaccess file located in the root of the web tree of the module that requires this extensions:
AddType application/x-httpd-php-phpextensions .php
Action application/x-httpd-php-phpextensions /modules/PHPExtensions/cgi-bin/php
If you receive a "500 Server Error" error message when accessing your web pages you either missed to enable the PHPExtensions module of have a typo in the .htaccess file.
Using the CGI Version of the Module with the Thecus WebServer module
To use the CGI version of the module with the Thecus WebServer module add the following to the modules httpd.conf (and ssl.conf if needed):
<IfModule !mod_actions.c>
LoadModule actions_module modules/mod_actions.so
</IfModule>
<IfModule mod_actions.c>
ScriptAlias /.PHPExtensions/cgi-bin/ /raid/data/module/PHPExtensions/cgi-bin/
<Directory /raid/data/module/PHPExtensions/cgi-bin/>
AllowOverride None
Options +ExecCGI +FollowSymLinks
Order allow,deny
Allow from all
</Directory>
<Directory "/">
AllowOverride All
</Directory>
</IfModule>
Next create a .htaccess file with the following content in the root of the web application:
AddType application/x-httpd-php-phpextensions .php
Action application/x-httpd-php-phpextensions /.PHPExtensions/cgi-bin/php
Known issues
Due to changes in libphp5 introduced in firmware 5.x (or 3.x already) on 32bit models dynamic loading of extensions will not work on this firmware versions. A ticket has been opened with Thecus to get the old functionality restored (dynamic loading of modules/extensions) - TicketID MIA-702251. Modules that intent to use this module should use the CGI version of PHP provided with this module. On 64bit models the module has been tested successfully with firmware v2.
Further informationen
Other modules known to use this module