19declare(strict_types=1);
36 public const PHP =
'php';
40 return "delivery_method";
48 self::SETTINGS => self::XSENDFILE
53 self::SETTINGS => self::PHP
59 if (function_exists(
'apache_get_modules') && in_array(
'mod_xsendfile', apache_get_modules(),
true)) {
64 $command_exists = shell_exec(
"which apache2ctl");
65 if ($command_exists ===
null || empty($command_exists)) {
69 $loaded_modules = array_map(
70 static fn(
string $module):
string => explode(
" ", trim($module))[0] ??
"",
71 explode(
"\n", shell_exec(
"apache2ctl -M 2>/dev/null") ??
'')
73 }
catch (\Throwable
$e) {
76 return in_array(
'xsendfile_module', $loaded_modules,
true);
isApplicable(Environment $environment)
Get to know whether the objective is applicable.
This is an objective to build some artifact.
An artifact is some file that is build on demand per installation and is not shipped with the ILIAS s...
An environment holds resources to be used in the setup process.