commit b65642cd0af0d86ed0086abdcd26f805cb036128 Author: Matthieu Bessat Date: Sun Aug 8 19:23:49 2021 +0200 initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1586e95 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +tmp + diff --git a/config.example.php b/config.example.php new file mode 100644 index 0000000..99b9340 --- /dev/null +++ b/config.example.php @@ -0,0 +1,25 @@ + 'lefuturiste.fr', + 'modules' => [ + 'random' => [], + 'date' => [ + 'alias' => ['printdate'] + ], + 'httpbin' => [], + 'printip' => [ + 'alias' => ['ip', 'getip'] + ], + 'quicknote' => [ + 'auth' => true + ], + 'quickupload' => [ + 'auth' => true + ], + 'logator' => [] + ], + 'auth' => [ + 'root' => 'password' + ] +]; \ No newline at end of file diff --git a/config.php b/config.php new file mode 100644 index 0000000..347a8b2 --- /dev/null +++ b/config.php @@ -0,0 +1,27 @@ + 'lefuturiste.fr', + 'modules' => [ + 'random' => [], + 'date' => [ + 'alias' => ['printdate'] + ], + 'httpbin' => [], + 'printip' => [ + 'alias' => ['ip', 'getip'] + ], + 'quicknote' => [ + 'auth' => true + ], + 'quickupload' => [ + 'auth' => true + ], + 'logator' => [ + 'alias' => ['logme'] + ] + ], + 'auth' => [ + 'root' => 'password' + ] +]; \ No newline at end of file diff --git a/configure_nginx.php b/configure_nginx.php new file mode 100644 index 0000000..f26006c --- /dev/null +++ b/configure_nginx.php @@ -0,0 +1,34 @@ + This script will generate a folder in the current directory where you can find every config file to use to make this thing works with nginx \n"; +echo "\n"; + +$appBasePath = __DIR__; + +$path = $appBasePath . '/tmp/generated_nginx_conf'; +if (!file_exists($path)) { + mkdir($path, 0777, true); +} + +require('./load_config.php'); + +$template = file_get_contents('./nginx.conf.template'); +$phpSocket = '/var/run/php/php8.0-fpm.sock'; + +foreach ($config['modules'] as $moduleName => $moduleConfig) { + $domains = array_merge([$moduleName], $moduleConfig['alias'] ?? []); + $domains = array_map(fn ($d) => $d . '.' . $config['domain'], $domains); + $serverName = implode(' ', $domains); + + $rootPath = $appBasePath . '/' . $domains[0]; + + $nginxConfig = $template; + $nginxConfig = str_replace('{{ROOT_PATH}}', $rootPath, $nginxConfig); + $nginxConfig = str_replace('{{SERVER_NAME}}', $serverName, $nginxConfig); + $nginxConfig = str_replace('{{PHP_SOCKET}}', $phpSocket, $nginxConfig); + + file_put_contents($path . '/' . $domains[0], $nginxConfig); + echo "> Wrote " . strlen($nginxConfig) . " bytes in " . $path . '/' . $domains[0] . "\n"; +} +echo "\n"; +echo "> Done.\n"; diff --git a/index.php b/index.php new file mode 100644 index 0000000..b637648 --- /dev/null +++ b/index.php @@ -0,0 +1,71 @@ +Help for module \"$selectedModule\""; + echo "