Virtualmin virtual-server module version 3.99 and other module updates

Howdy all,

I’ve rolled out a huge swath of module updates over the past few days. This includes a whole lot of bug fixes and minor enhancements, as well as a major new feature to allow use of multiple PHP 5 versions.

Changes in Virtualmin since 3.98:

  • Updated the OpenCart script installer to version, Squirrelmail to 1.4.22, WordPress to 3.5.1, Movable Type to 5.2.3, PHP-Calendar to 1.1, Gallery to 3.0.4, Advanced Poll to 2.0.9, PHP-Wiki to 1.4.0rc1, Simple Invoices to 2011.1, phpScheduleIt to 2.3.6, Advanced Guestbook to 2.4.4, Zikula to 1.3.5, Roundcube to 0.8.5, phpMyAdmin to 3.5.7, Mantis to 1.12.14, SMF to 2.0.4, Trac to 1.0.1, SugarCRM to 6.5.10, Joomla to 3.0.3 and 2.5.9, ZenPhoto to, Instiki to 0.19.6, TikiWiki to 10.1 and 6.10, Z-push to to 2.0.7, Django to 1.4.5, FengOffice to, Drupal to 7.20, Twiki to 5.1.4, WebCalendar to 1.2.7, Gallery to 3.0.5, Dolibarr to 3.3.0, and Radiant to 1.1.3. Marked several scripts that no longer appear to be updated or available as unsupported.
  • Added the ability to enable or disable server-side includes for a specific file extension for virtual servers with a website.
  • If PHP 5.3 or higher is installed via a separate package, Virtualmin will now detect it and allow it to be selected on a per-domain or per-directory basis. This is useful for systems whose default PHP package is version 5.2 or older.
  • Added a template section to configure the mail client auto-configuration XML, for example if some domains use custom mail servers.
  • The key size is now configurable when setting up DKIM or generating a new key.
  • Plugin modules available to domain owners can now be configured at the template level, in the Administrator’s Webmin modules section.
  • When the contact email address for a domain is changed, default mail aliases like postmaster will be updated to the new address.
  • When DNS records are modified in a virtual server, all records are synchronized into any alias domains.
  • Changed the default email folder names to Junk, Trash, Drafts, Sent and Virus.
  • Added an option to the Spam and Virus Scanning page to control what happens when email is sent to a mailbox that is over quota (bouncing or queueing for later).

Other modules included in this update:

virtualmin-awstats 4.9

virtualmin-dav 3.6

virtualmin-git 1.5

virtualmin-google-analytics 2.7

virtualmin-init 2.4

virtualmin-mailman 6.2

virtualmin-mailrelay 1.8

virtualmin-nginx 1.4

virtualmin-nginx-ssl 1.4

virtualmin-slavedns 1.7

virtualmin-svn 5.0

As well as the virtual-server-theme and virtual-server-mobile theme packages.

As always, if you run into any problems, let us know.

That’s awesome. Curious about the multiple php5.3x versions. Will that only work if you get other php versions from a repo or will it also work if you compile it yourself from source? The “installed via a separate package” is what’s making me wonder.

I believe it has some reasonable defaults, that expect some popular locations for the PHP binaries, but I believe it also can be configured manually, so if you have a built-from-source PHP, it would also work (just be careful they don’t conflict with the OS versions).

Eric wrote some docs while experimenting with some different PHP versions and packages, while Jamie was developing the feature:

Switching between PHP 5.3 and 5.2 seems not to work in Debian 5. I have PHP 5.3 installed in /usr/bin/php53. To be found by Virtualmin I symlinked /usr/bin/php53/php-cgi to /usr/bin/php53/php-cgi and /usr/bin/php53/php-config to /usr/bin/php53/php-config. When creating a new virtual server it uses PHP 5.3 using the correct php.ini and it is setting the FCGI wrapper correctly in the Apache Vhost:

AddHandler fcgid-script .php AddHandler fcgid-script .php5 AddHandler fcgid-script .php5.3 FCGIWrapper /home/ .php FCGIWrapper /home/ .php5 FCGIWrapper /home/ .php5.3

When switching back to PHP 5.3 it still uses PHP 5.3. The Apache Vhost configuration is now looking like that:

AddHandler fcgid-script .php AddHandler fcgid-script .php5 AddHandler fcgid-script .php5.3 FCGIWrapper /home/ .php FCGIWrapper /home/ .php5.3 FCGIWrapper /home/ .php5 FCGIWrapper /home/ .php5.3 FCGIWrapper /home/ .php

At the PHP Versions page there are 2 entries for Default HTML directory listed:

  • 5.3.23
  • 5.2.6

Those symlinks shouldn’t be needed actually - Virtualmin should find version 5.3 at /usr/bin/php53-cgi

The issue with two versions being shown for the default HTML directory will be fixed in Virtualmin 4.00, which is due out soon.

Using Virtualmin 4.00 switching between PHP 5.2 and 5.3 works now, thanks! But only for existing Virtual Servers.

Newly created Virtual Servers have PHP 5.3 in both fcgi-bin/php5.fcgi and fcgi-bin/php5.3.fcgi.

Re-check Configurations at my system finds 2 versions: The following PHP versions are available : 5.2.6 (/usr/bin/php5-cgi), 5.3.25 (/usr/local/bin/php53)

BTW: When configuring PHP 5.3 with –program-suffix=53 to name the installed binaries different from the standard ones it installs a php-cgi53 (CGI) and php53 (CLI) binary. Re-check Configurations ( though checks for php53-cgi and than for php53. In my case that means it misses the CGI version. Linking php-cgi53 to php53-cgi fixes that but it would be nice if will adopt the file naming pattern used by PHP’s configure script.

Update to my comment above: I had a customized PHP wrapper script for PHP 5 defined in System Settings > Server Templates which created new Virtual Servers with a custom PHP 5.3 setup in fcgi-bin/php5.fcgi. After setting it back to Automatically generated newly created Virtual Servers now have PHP 5.2 in fcgi-bin/php5.fcgi as expected.

My Ubuntu Linux 10.04.1 system is not detecting any updates past version 3.98.gpl.


I’d suggest starting a new thread regarding that and we can get it figured out – your sources.list file may need some tweaks.