[php-maint] enabling PHP module with package install

Daniel Pocock daniel at pocock.pro
Wed Aug 6 17:40:18 UTC 2014



I've noticed that in some fresh installs where the PHP module or CGI is
not already enabled, my own package, ganglia-web, is not enabling it
either and the PHP source code is being served to clients without being
interpreted/executed.

I'd like to tidy up the debian/control Depends field and the postinst to
try and avoid this

Is there any best practice for packages like this that use PHP,

a) technique for enabling PHP support?

b) preventing the display of PHP source code when PHP is not enabled?

To make matters more confusing, people who land in this situation with
the Ganglia package usually see an error "Sorry, you do not have access
to this resource.".  One of the first lines of code in the PHP is
checking an ACL.  If PHP is not executed at all, the browser renders the
error anyway.  Maybe we need something like this at the top of every PHP
file:

<?php
if(1 > 2) {
  die("<html><head><title>PHP not enabled</title><body><h4>Your PHP
module or CGI support is not enabled.  Please check the web server.
Ignore any other messages below this line.</h4></body></html>");
}

or is there a more elegant solution?


http://anonscm.debian.org/cgit/pkg-monitoring/ganglia-web.git/tree/debian/control


http://anonscm.debian.org/cgit/pkg-monitoring/ganglia-web.git/tree/debian/ganglia-webfrontend.postinst



More information about the pkg-php-maint mailing list