diff options
-rw-r--r-- | Changes | 5 | ||||
-rw-r--r-- | MANIFEST.SKIP | 1 | ||||
-rw-r--r-- | lib/Apache/Defaults.pm | 25 |
3 files changed, 17 insertions, 14 deletions
@@ -1,3 +1,4 @@ +1.01 2018-07-17 + - Prefer apachectl over invoking httpd directly. 1.00 2018-02-24 - -* Initial release. + - Initial release. diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP index 58696be..3fb78f0 100644 --- a/MANIFEST.SKIP +++ b/MANIFEST.SKIP @@ -24,2 +24,3 @@ \bblibdirs\.ts$ # 6.18 through 6.25 generated this +\bMANIFEST\.SKIP$ diff --git a/lib/Apache/Defaults.pm b/lib/Apache/Defaults.pm index 70d5385..6108d23 100644 --- a/lib/Apache/Defaults.pm +++ b/lib/Apache/Defaults.pm @@ -11,3 +11,3 @@ use Carp; -our $VERSION = '1.00'; +our $VERSION = '1.01'; @@ -33,3 +33,3 @@ sub new { } else { - @servlist = qw(/usr/sbin/httpd /usr/sbin/apache2); + @servlist = qw(/usr/sbin/apachectl /usr/sbin/httpd /usr/sbin/apache2); } @@ -76,3 +76,2 @@ sub probe { - open(my $nullout, '>', File::Spec->devnull); open(my $nullin, '<', File::Spec->devnull); @@ -384,4 +383,10 @@ The default used in the absense of this attribute is: - [ '/usr/sbin/httpd', '/usr/sbin/apache2' ] + [ '/usr/sbin/apachectl', '/usr/sbin/httpd', '/usr/sbin/apache2' ] +The use of B<apachectl> is preferred over directly invoking B<httpd> daemon, +because the apache configuration file might contain referenmces to environment +variables defined elsewhere, which will cause B<httpd> to fail. B<apachectl> +takes care of this by including the file with variable definitions prior to +calling B<httpd>. See also C<environ>, below. + =item C<environ> @@ -389,9 +394,5 @@ The default used in the absense of this attribute is: Name of the shell script that sets the environment for B<httpd> invocation. - -If invoked with the B<-V> option, B<httpd> attempts to read its configuration -file and will fail if the latter contains references to the environment -variables defined elsewhere. This is quite common in Debian-based -distributions, which define the environment variables in file -F</etc/apache2/envvars>. To avoid such failures, use the C<environ> attribute, -e.g.: +Usually, this is the same script that is sourced by B<apachectl> prior to +passing control over to B<httpd>. This option provides another solution to +the environment problem mentioned above. E.g.: @@ -401,3 +402,3 @@ e.g.: -Controls the error handling. Allowed values are C<croak> and C<return>. +Controls error handling. Allowed values are C<croak> and C<return>. If the value is C<croak> (the default), the method will I<croak> if an |