-
Posts
10114 -
Joined
-
Last visited
-
Days Won
42
Community Answers
-
d00p's post in Froxlor selbst: Unterstützte PHP-Versionen was marked as the answer
Die Infos kommen mit der v2.1 - siehe https://docs.froxlor.org/v2.1/general/installation/
Und nein, php-8.3 habe ich noch nicht getestet, wir konzentrieren uns im normalfall auf die default php versionen der unterrstützten Distros
-
d00p's post in Subdomain direkt einrichten lassen was marked as the answer
doch sicher...du weist doch dem kunden eine Subdomain zu, setz halt da den Server-Alias auf "kein Alias" oder "www-Alias" und dann kannst du wunderbar auch Let's Encrypt verwenden
edit: du sollst ja nicht in froxlor einen Wildcard-Alias erstellen, sondern in der DNS Zone ...z.B.
@ IN A 123.123.123.123 * IN A 123.123.123.123 Damit zeigt: "domain.tld" auf 123.123.123.123 genauso wie auch "irgendwas.domain.tld" oder "wasanderes.domain.tld" oder was auch immer
-
d00p's post in froxlor-cli froxlorcron 'tasks' wirft "no such file or directory" bei "checking froxlor file permissions" was marked as the answer
ah du bist im ordner "/var/www/php-fcgi-scripts/ckt/tools.***.de" - die php-fcgi-scripts ordner werden vom cron komplett geleert und neuerstellt...daher der fehler.
-
d00p's post in Internal PHP error: #2 Undefined array key "groups" was marked as the answer
if you want, try the following patch, it should resolve the behavior:
diff --git a/lib/Froxlor/SImExporter.php b/lib/Froxlor/SImExporter.php index a40e24bb..f823f295 100644 --- a/lib/Froxlor/SImExporter.php +++ b/lib/Froxlor/SImExporter.php @@ -65,7 +65,7 @@ class SImExporter public static function export() { $settings_definitions = []; - foreach (PhpHelper::loadConfigArrayDir('./actions/admin/settings/')['groups'] as $group) { + foreach (PhpHelper::loadConfigArrayDir(Froxlor::getInstallDir() . '/actions/admin/settings/')['groups'] as $group) { foreach ($group['fields'] as $field) { $settings_definitions[$field['settinggroup']][$field['varname']] = $field; }
-
d00p's post in Create e-mail address on subdomain was marked as the answer
Edit main-domain, select "emaildomain = yes", and also select something other than "Never" in the setting "Subdomains as email-domains"
-
d00p's post in OpenSSL variuos erros was marked as the answer
ah, wordpress itself okay. that *might* be due to a disabled *curl_exec* function in the corresponding php.ini (not entirely sure, but looks like it)
-
d00p's post in PHP Fatal error: Uncaught Error: Call to undefined function curl_exec() was marked as the answer
Validate that the function "curl_exec" is not in the list of disabled_functions in the corresponding php.ini (it is by default)
-
d00p's post in How to use froxlor-cli for api-calls / how to provide parameters? was marked as the answer
As stated in the --help output of the command:
parameters Paramaters to pass to the command as JSON array Dont see where you are doing anything wrong, looks ok to me (and you've stated that the following works...)
-
d00p's post in Update 2.0.21 to 2.0.22 failed Sql Exception was marked as the answer
Hm it's related to the navigation menu and it checks for customer stuff but you're admin, can you try this patch:
diff --git a/lib/navigation/00.froxlor.main.php b/lib/navigation/00.froxlor.main.php index f322fe85..9863ce54 100644 --- a/lib/navigation/00.froxlor.main.php +++ b/lib/navigation/00.froxlor.main.php @@ -38,7 +38,7 @@ return [ 'url' => 'customer_email.php?page=emails', 'label' => lng('menue.email.emails'), 'required_resources' => 'emails', - 'add_shortlink' => CurrentUser::canAddResource('emails') ? 'customer_email.php?page=email_domain&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('emails') ? 'customer_email.php?page=email_domain&action=add' : null, ], [ 'url' => Settings::Get('panel.webmail_url'), @@ -60,7 +60,7 @@ return [ 'url' => 'customer_mysql.php?page=mysqls', 'label' => lng('menue.mysql.databases'), 'required_resources' => 'mysqls', - 'add_shortlink' => CurrentUser::canAddResource('mysqls')? 'customer_mysql.php?page=mysqls&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('mysqls')? 'customer_mysql.php?page=mysqls&action=add' : null, ], [ 'url' => Settings::Get('panel.phpmyadmin_url'), @@ -81,7 +81,7 @@ return [ [ 'url' => 'customer_domains.php?page=domains', 'label' => lng('menue.domains.settings'), - 'add_shortlink' => CurrentUser::canAddResource('subdomains') ? 'customer_domains.php?page=domains&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('subdomains') ? 'customer_domains.php?page=domains&action=add' : null, ], [ 'url' => 'customer_domains.php?page=sslcertificates', @@ -98,7 +98,7 @@ return [ [ 'url' => 'customer_ftp.php?page=accounts', 'label' => lng('menue.ftp.accounts'), - 'add_shortlink' => CurrentUser::canAddResource('ftps') ? 'customer_ftp.php?page=accounts&action=add' : null, + 'add_shortlink' => !CurrentUser::isAdmin() && CurrentUser::canAddResource('ftps') ? 'customer_ftp.php?page=accounts&action=add' : null, ], [ 'url' => Settings::Get('panel.webftp_url'),
-
d00p's post in Ändern des ServerAdmin in den automatisch erstellten vHosts was marked as the answer
Es wird die E-Mail Adresse des entsprechenden Kunden verwendet
-
d00p's post in SSL Froxlor Host was marked as the answer
Solange die acme.conf für den Webserver eingerichtet ist besteht ein globaler alias für .well-known und dann sollte das ebenso auch via certbot gehen.
Würde allerdings empfehlen hier let's encrypt in froxlor auch für den froxlor vhost zu aktivieren damit alles von froxlor verwaltet wird.
Zusätzlich kannst du mittels https://docs.froxlor.org/latest/admin-guide/cli-scripts/#validate-acme-webroot auch prüfen, ob da alles ok ist
-
d00p's post in PHP for admin interface not working after initial setup was marked as the answer
The froxlor setup automatically sets up your ip/port entries using default/standard ports.
You might need to adjust these in the table `panel_ipsandports` in froxlor's database and re-run the cronjob
-
d00p's post in SQLSTATE[42000] Error when Upgrading v0.10.38.3 to v2.0.15 was marked as the answer
either use a more recent OS / mariadb or see here:
-
d00p's post in wie kann ich das debuggen? was marked as the answer
Probier mal Folgendes:
diff --git a/lib/Froxlor/Dns/Dns.php b/lib/Froxlor/Dns/Dns.php index 9bd13988..dc7a134b 100644 --- a/lib/Froxlor/Dns/Dns.php +++ b/lib/Froxlor/Dns/Dns.php @@ -279,8 +279,7 @@ class Dns } } } - $zonerecords[] = new DnsEntry($entry['record'], $entry['type'], $entry['content'], $entry['prio'], - $entry['ttl']); + $zonerecords[] = new DnsEntry($entry['record'], $entry['type'], $entry['content'], $entry['prio'] ?? 0, $entry['ttl']); } // add missing required entries
-
d00p's post in LE bei Domain ohne DNS mit Validierung nicht möglich was marked as the answer
Okay, jenachdem ist php wohl sehr zickig was die Klassenangabe bei `instanceof` angeht, hiermit geht es bei mir im test-szenario:
diff --git a/lib/Froxlor/PhpHelper.php b/lib/Froxlor/PhpHelper.php index c81f50bd..75e7d7ac 100644 --- a/lib/Froxlor/PhpHelper.php +++ b/lib/Froxlor/PhpHelper.php @@ -263,7 +263,7 @@ class PhpHelper try { $answer = $resolver->query($host, 'A')->answer; foreach ($answer as $rr) { - if ($rr instanceof Net_DNS2_RR_A) { + if ($rr instanceof \Net_DNS2_RR_A) { $ips[] = inet_ntop(inet_pton($rr->address)); } } @@ -276,7 +276,7 @@ class PhpHelper try { $answer = $resolver->query($host, 'AAAA')->answer; foreach ($answer as $rr) { - if ($rr instanceof Net_DNS2_RR_AAAA) { + if ($rr instanceof \Net_DNS2_RR_AAAA) { $ips[] = inet_ntop(inet_pton($rr->address)); } }
-
d00p's post in Andere PHP Version für einzelne Domain was marked as the answer
Die verfügbaren PHP Konfigurationen müssen dem Kunden zugewiesen/erlaubt werden.
Entweder die entsprechenden Kunden bearbeiten oder, sofern gewünscht, beim Anlegen/bearbeiten der PHP Konfiguration ganz unten das Häkchen setzen um diese allen aktuellen Kunden zur Verfügung zu stellen
-
d00p's post in Fehlermeldung zu IP-Adressen nach Update was marked as the answer
Auf 2.0.8 aktualisieren
-
d00p's post in admin_domains.php - Speichern funktioniert nicht (Fokus stattdessen auf der ersten IPv6) was marked as the answer
Ist in git schon behoben, es gibt ein Problem wenn nicht alle IP Adressen gewählt sind (required flag der checkbox)
-
d00p's post in MySQL-Server Konfiguration nicht möglich was marked as the answer
Punkt 2 und 3 werden im laufe des nachmittags mit 2.0.7 gefixed - das hatte ich vorhin schon von jemandem gemeldet bekommen, da gibts leider ein problem im update-prozess
-
d00p's post in Keine IP-Adresse im Pfad als Weiterleitungsziel einer Domain möglich was marked as the answer
Falls du es dir für 0.10.x noch adaptieren möchtest (layout sollte sehr gleich sein): https://github.com/Froxlor/Froxlor/commit/2dd226c96c14e024b104a8cd9beab212eae24b46
-
d00p's post in Froxlor im Docker Container was marked as the answer
Es führt das restart-command aus, welches in den webserver-einstellungen hinterlegt ist, wenn ihr das in irgendeiner art und weise customizen wollt, könnt ihr dort ja auch ein shell-script o.Ä. hinterlegen
-
d00p's post in Fehler beim Löschen von DNS-records seit 0.10.38.3 was marked as the answer
Hiermit sollte es wieder gehen:
diff --git a/dns_editor.php b/dns_editor.php index 293502cb..da10f5cd 100644 --- a/dns_editor.php +++ b/dns_editor.php @@ -24,7 +24,7 @@ use Froxlor\Api\Commands\DomainZones as DomainZones; // This file is being included in admin_domains and customer_domains // and therefore does not need to require lib/init.php -$domain_id = isset($_GET['domain_id']) ? (int) $_GET['domain_id'] : null; +$domain_id = isset($_GET['domain_id']) ? (int) $_GET['domain_id'] : (isset($_POST['domain_id']) ? (int)$_POST['domain_id'] : null); $record = isset($_POST['record']['record']) ? trim($_POST['record']['record']) : null; $type = isset($_POST['record']['type']) ? $_POST['record']['type'] : 'A'; @@ -56,12 +56,11 @@ if ($action == 'add_record' && ! empty($_POST)) { } } elseif ($action == 'delete') { // remove entry - $entry_id = isset($_GET['id']) ? (int) $_GET['id'] : 0; - if ($entry_id > 0) { + if ($id > 0) { if (isset($_POST['send']) && $_POST['send'] == 'send') { try { DomainZones::getLocal($userinfo, array( - 'entry_id' => $entry_id, + 'entry_id' => $id, 'id' => $domain_id ))->delete(); // success message (inline) @@ -73,7 +72,8 @@ if ($action == 'add_record' && ! empty($_POST)) { \Froxlor\UI\HTML::askYesNo('dnsentry_reallydelete', $filename, array( 'page' => $page, 'action' => $action, - 'id' => $id + 'id' => $id, + 'domain_id' => $domain_id ), $id); } }
-
d00p's post in einzelne von den automatisch angelegten A-records deaktivieren was marked as the answer
Kommt drauf an ob "mail" record automatisch erstellt wurde (aufgrund von settings) oder nicht, wenn ja wirds schwer, wenn nein hast du es ja selbst in der hand
-
d00p's post in proftpd login with long usernames not possible [solved] was marked as the answer
Thanks, we'll make these changes to the next release
-
d00p's post in apt remove php8.1-opcache räumte ganze froxlor installation weg - client applicationen laufen noch was marked as the answer
sichere einfach deine lib/userdata.inc.php - bin gerade nicht sicher ob die beim entfernen des pakets gelöscht wird. Ansonsten klar, es geht keine Datenbank verloren usw. du kannst das Paket einfach wieder installieren