From fc28b22cd1058cf5b439b3e185494bf80264f9f8 Mon Sep 17 00:00:00 2001 From: ManfredAabye Date: Sat, 3 May 2025 10:35:33 +0200 Subject: [PATCH] V25.5.78.315 oswebinterface config.php --- osmtool.sh | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 108 insertions(+), 3 deletions(-) diff --git a/osmtool.sh b/osmtool.sh index efcbed8..8a523f5 100644 --- a/osmtool.sh +++ b/osmtool.sh @@ -11,7 +11,7 @@ SCRIPTNAME="opensimMULTITOOL II" #testmodus=1 # Testmodus: 1=aktiviert, 0=deaktiviert # Versionsnummer besteht aus: Jahr.Monat.Funktionsanzahl.Eigentliche_Version -VERSION="V25.5.78.314" +VERSION="V25.5.78.315" echo -e "\e[36m$SCRIPTNAME\e[0m $VERSION" echo "Dies ist ein Tool welches der Verwaltung von OpenSim Servern dient." echo "Bitte beachten Sie, dass die Anwendung auf eigene Gefahr und Verantwortung erfolgt." @@ -2943,10 +2943,79 @@ function robusthginiconfig() { blankline } +# function oswebinterfaceconfig() { +# # Konfigurationsdatei-Pfade +# local ini_file="UserInfo.ini" # Pfad zur INI-Datei mit Zugangsdaten +# local php_config_file="/var/www/html/$webverzeichnis/include/env.php" +# config_dir="$(dirname "$php_config_file")" + +# # Prüfe, ob Konfigurationsverzeichnis existiert +# if [[ ! -d "$config_dir" ]]; then +# echo -e "${SYM_BAD} ${COLOR_ERROR}Verzeichnis nicht gefunden: ${COLOR_DIR}$config_dir${COLOR_RESET}" +# return 1 +# fi + +# # Prüfe, ob INI-Datei existiert +# if [[ ! -f "$ini_file" ]]; then +# echo -e "${SYM_BAD} ${COLOR_ERROR}Konfigurationsdatei nicht gefunden: ${COLOR_DIR}$ini_file${COLOR_RESET}" +# return 1 +# fi + +# # Zugangsdaten auslesen (mit Trimmen von Leerzeichen/Zeilenumbrüchen) +# local db_user db_pass +# db_user=$(grep -oP '^DB_Benutzername\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') +# db_pass=$(grep -oP '^DB_Passwort\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') +# # todo: Werte für config.php hinzufügen: +# # [ServerData] +# # ServerIP = yourdomain.com oder IP +# # GridName = Dein Grid Name + +# # Fallback, falls Werte leer sind +# [[ -z "$db_user" ]] && db_user="opensim_user" +# [[ -z "$db_pass" ]] && db_pass="opensim123" + +# # Neu generierter Name +# generate_name +# # Neue Region +# genHttpUserName="${gennamefirst}$((RANDOM % 900 + 100))" +# genHttpUserPass="${gennamesecond}$((RANDOM % 900 + 100))" +# echo "$genRegionName" +# region_name=${genRegionName} + +# # PHP-Konfigurationsdatei generieren +# cat > "$php_config_file" < +# EOF + +# # todo: /var/www/html/$webverzeichnis/include/config.example.php in /var/www/html/$webverzeichnis/include/config.php umbenennen +# # todo: In der Datei config.php folgende 2 einstellungen einfügen: +# # define('BASE_URL', 'http://yourdomain.com'); // Basis-URL der Webseite / Base URL of the website +# # define('SITE_NAME', 'Dein Grid Name'); // Name des Grids / Name of the grid + +# # Berechtigungen anpassen (falls nötig) +# chmod 640 "$php_config_file" +# chown www-data:www-data "$php_config_file" # Anpassen für deinen Webserver-User + +# echo -e "${SYM_OK} ${COLOR_ACTION}Konfiguration geschrieben nach: ${COLOR_DIR}$php_config_file${COLOR_RESET}" +# return 0 +# } + function oswebinterfaceconfig() { # Konfigurationsdatei-Pfade + webverzeichnis="oswebinterface" local ini_file="UserInfo.ini" # Pfad zur INI-Datei mit Zugangsdaten local php_config_file="/var/www/html/$webverzeichnis/include/env.php" + local config_example_file="/var/www/html/$webverzeichnis/include/config.example.php" + local config_file="/var/www/html/$webverzeichnis/include/config.php" config_dir="$(dirname "$php_config_file")" # Prüfe, ob Konfigurationsverzeichnis existiert @@ -2962,13 +3031,18 @@ function oswebinterfaceconfig() { fi # Zugangsdaten auslesen (mit Trimmen von Leerzeichen/Zeilenumbrüchen) - local db_user db_pass + local db_user db_pass server_ip grid_name # Daten für dev.php db_user=$(grep -oP '^DB_Benutzername\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') db_pass=$(grep -oP '^DB_Passwort\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') + # Daten für config.php + server_ip=$(grep -oP '^ServerIP\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') + grid_name=$(grep -oP '^GridName\s*=\s*\K\S+' "$ini_file" | tr -d '\r\n') # Fallback, falls Werte leer sind [[ -z "$db_user" ]] && db_user="opensim_user" [[ -z "$db_pass" ]] && db_pass="opensim123" + [[ -z "$server_ip" ]] && server_ip="localhost" + [[ -z "$grid_name" ]] && grid_name="OpenSim Grid" # Neu generierter Name generate_name @@ -2992,15 +3066,46 @@ define('REMOTEADMIN_HTTPAUTHPASSWORD', '${genHttpUserPass}'); ?> EOF + # config.example.php in config.php umbenennen, falls es existiert + if [[ -f "$config_example_file" ]]; then + mv "$config_example_file" "$config_file" + echo -e "${SYM_OK} ${COLOR_ACTION}Konfigurationsdatei umbenannt: ${COLOR_DIR}$config_file${COLOR_RESET}" + + # Konfiguration in config.php einfügen + if [[ -f "$config_file" ]]; then + # BASE_URL ersetzen oder hinzufügen + if grep -q "define('BASE_URL'" "$config_file"; then + sed -i "s|define('BASE_URL'.*|define('BASE_URL', 'http://${server_ip}');|" "$config_file" + else + sed -i "/