Jump to content
View in the app

A better way to browse. Learn more.

Froxlor Forum

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

d00p

Administrators
  • Joined

  • Last visited

Solutions

  1. Just now, dyers said: I meant the froxlor user Admin has been renamed.
    no, it has not
    1 minute ago, dyers said: So I feel stupid.
    I changed the BROWSER from Chrome to Safari. And the page appeared after login just fine -.-
    and the upgrade worked fine too...
    so, a local cache thing then....aight
  2. d00p's post in Email Passwort Verschlüsselung was marked as the answer   
    Auf 2.1.6 updaten. Das war ein Bug in der 2.1.5 (die es nur einen Tag lang gab)
  3. d00p's post in unerwartetes Feedback vom cron (traffic-task) was marked as the answer   
    Gerne testen, ich kam noch nicht dazu:
    diff --git a/lib/Froxlor/Cron/Traffic/TrafficCron.php b/lib/Froxlor/Cron/Traffic/TrafficCron.php index 421505e3..b764b0d3 100644 --- a/lib/Froxlor/Cron/Traffic/TrafficCron.php +++ b/lib/Froxlor/Cron/Traffic/TrafficCron.php @@ -618,7 +618,7 @@ class TrafficCron extends FroxlorCron $format = Settings::Get('system.logfiles_type') == '2' ? 'VCOMBINED' : 'COMBINED'; $monthyear = $monthyear_arr['month'] . '/' . $monthyear_arr['year']; $return_value = false; - FileDir::safe_exec("grep '" . $monthyear . "' " . escapeshellarg($logfile) . " | goaccess " . $keep_params . " --db-path=" . escapeshellarg($outputdir) . " -o " . escapeshellarg($outputdir . '.tmp.json') . " -o " . escapeshellarg($outputdir . 'index.html') . " --html-report-title=" . escapeshellarg($caption) . " --log-format=" . $format . " - ", $return_value, ['|']); + FileDir::safe_exec("grep '" . $monthyear . "' " . escapeshellarg($logfile) . " | goaccess " . $keep_params . " --db-path=" . escapeshellarg($outputdir) . " -o " . escapeshellarg($outputdir . '.tmp.json') . " -o " . escapeshellarg($outputdir . 'index.html') . " --html-report-title=" . escapeshellarg($caption) . " --log-format=" . $format . " --no-parsing-spinner --no-progress - ", $return_value, ['|']); if (file_exists($outputdir . '.tmp.json')) { // need jq here because of potentially LARGE json files  
  4. 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
  5. d00p's post in Subdomain direkt einrichten lassen was marked as the answer   
    2 minutes ago, K3uleMax said: Dann sind aber keine SSL Zertifikate über Froxlor erstellber oder? 
    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 
  6. 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.
  7. 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; }  
  8. 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"
  9. 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)
  10. 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)
  11. d00p's post in How to use froxlor-cli for api-calls / how to provide parameters? was marked as the answer   
    Just now, nebulo said: am struggling with how to provide the parameters in the array.
    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...)
  12. 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'),  
  13. 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
  14. 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
  15. 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
  16. 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: 
     
  17. 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  
  18. 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)); } }  
  19. 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 
  20. d00p's post in Fehlermeldung zu IP-Adressen nach Update was marked as the answer   
    Just now, anmu said: Was kann ich tun?
    Auf 2.0.8 aktualisieren
  21. 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)
  22. 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
  23. 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
  24. 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
  25. 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); } }  

Account

Navigation

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.