19 declare(strict_types=1);
34 public const PHP =
'php';
38 return "delivery_method";
47 return new Setup\Artifact\ArrayArtifact([
48 self::SETTINGS => self::XSENDFILE
52 return new Setup\Artifact\ArrayArtifact([
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(
static function ($module) {
70 return explode(
" ", trim($module))[0] ??
"";
71 }, explode(
"\n", shell_exec(
"apache2ctl -M 2>/dev/null") ??
''));
75 if (in_array(
'xsendfile_module', $loaded_modules,
true)) {
This is an objective to build some artifact.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
An environment holds resources to be used in the setup process.
An artifact is some file that is build on demand per installation and is not shipped with the ILIAS s...
isApplicable(Setup\Environment $environment)