Beiträge von Logan

    ich hatte mich da mal vor einiger Zeit für die Beta angemeldet und wurde vor ein paar Tagen für ein paar Domains von mir freigeschaltet.


    Auf einem Rootserver habe ich das auch schon eingerichtet.


    Nach einigen Fehlern hat es jedoch funktioniert und auf dem Server läuft das Zertifikat nun.
    Die Beta Zertifikate sind allerdings nur für ~2Monate gültig. Man muss danach also ein neues erstellen / erneuern. Das soll sich nach der Beta aber glaube ich ändern.


    Nun wollte ich testweise mal ein Zertifikat lokal generieren und auf ein Webserver hier bei Netcup laden. Aber nicht mehr heute^^

    lässt du ueberhaupt auf 9989 was durch?


    Wie meinst, das, ob der Port 9989 freigeschaltet ist, ja ist er, weil ich über die IP+Port, bzw. ts1.livara.de:9989 connecten kann


    Meines Wissens muss es vorne nur "_ts3._udp" heißen. Ansonsten leistest eine Subdomain deiner Domain um (eleganterweise auf sich selbst).


    hab ich nun gemacht, aber kein unterschied,
    wenn ich nur ts1.livara.de eingebe, connecte ich auf den standardport 9987 und nicht 9989

    ich habe nun folgende Varianten versucht, und entweder verbinden diese mich gar nicht, oder auf den standard ts port (9987)


    Host | Type | Destination
    ----
    bse | A-Record | 5.175.8.30
    _ts3._udp.bse | SRV | 1 1 9989 bse.livara.de
    ----
    bse | A-Record | 5.175.8.30
    _ts3._udp.bse.livara.de | SRV | 1 1 9989 bse.livara.de
    ---
    ts1 | A-Record | 5.175.8.30
    _ts3._udp.ts1 | SRV | 0 0 9989 ts1.livara.de


    so langsam gehen mir die Ideen aus, kann aber auch an der Uhrzeit liegen *hehe*

    hmm, habs nun so, aber funktioniert trotzdem nicht.
    Ich hab auch mal ein Screen gemacht:
    Unbenannt.PNG


    hängt es eventuell mit dem a-record zusammen,
    weil das witzige ist, wenn ich bse.livara.de anpinge, wird die richtige ip angepingt, wenn ich das jedoch im Browser eingebe, komme ich auf die confixx seite von netcup

    jup, hab schonmal gegooglet, bin dabei auch auf dein Link gestoßen.
    allerdings wusste ich nicht wie ich das ins CPP einbinde
    z.b. den Link hier
    _ts3._udp.MyDomain.de. 86400 IN SRV 0 5 9989 ts.MyDomain.de.


    wie soll ich das denn dann eintragen?
    so


    Host | Type | Destination
    root | A-Record | 1.2.3.4
    ts | SRV | 1 1 9989 _ts3._udp.root


    wenn ich das so mache, bekomme ich die Meldung, dass die Destination fehlerhaft ist.

    Hier bei Netcup habe ich nur ein Webserver, wodurch ich nur im CPP meine Domain bearbeiten kann.
    dort steht folgendes:

    Zitat

    Destination: Hier wird das Ziel des Records festgelegt. Bei einem A-Record ist hier eine IP einzutragen. Ein CNAME oder MX muss auf eine Domain geleitet werden. Ist der Record vom Type "SRV", ist die Destination wie folgt zu setzen:
    [Priority] [Weight] [Port] [Target]


    Priority, Weight und Port stellen jeweils einen nummerischen Wert dar. Target ist das Ziel, auf dem der Dienst arbeitet. Alle vier Werte sind mit einem Leerzeichen zu trennen.


    so siehts derzeit aus


    Host | Type | Destination
    ts | SRV | 1 1 9989 1.2.3.4

    jup, die a-record methode ist mir bekannt. Damit habe ich auch schon eine Subdomain auf die IP weitergeleitet.
    Ich habe nur eben von der SRV Methode gehört und dachte so, die Porteingabe zu umgehen.


    Also dass ein Nutzer im TS nur sub.domain.de eingeben muss und nicht sub.domain.de:port.
    So einfach wie möglich halt.

    Hi,


    ich stelle meine Frage mal hin dazu, weil es ums selbe geht und nicht extra ein Theme dafür öffnen möchte.


    Ich habe bei Netcup nur ein Webserver, nun möchte ich gerne bei der enthaltenen Domain eine Subdomain erstellen, welche auf ein TS Server von mir verweist.


    Nun habe ich im CCP unter "DNS-Einstellungen" - "Zone DOMAIN editieren" folgendes eingegeben:


    Code
    Host      Type    Destination
    ts        SRV     0 0 9989 1.2.3.4


    funktioniert das so?


    Mfg. logan

    ich habs mal nun so gemacht
    stimmt das?


    [PHP]<?php


    /* Einstellungen start */
    $mysql_host = "localhost"; //MySQL-Hostname
    $mysql_dbs = array('DB_TABELLE');
    $mysql_user = "DB_USER"; //Mysql-Benutzer
    $mysql_pass = "DB_PW"; //Mysql-Passwort
    $speicherort = "/var/www/web143/html/cgi-bin/backup/"; //Speicherort
    /* Einstellungen ende */



    $mysql_link = @mysql_connect($mysql_host,$mysql_user,$mysql_pass);
    if($mysql_link == false)
    {
    die("-E: Verbindung zur Datenbank ist fehlgeschlagen!<br>\n");
    }
    /* Tabellen sperren start */
    $result = mysql_query("FLUSH TABLES WITH READ LOCK");
    if (!$result) {
    die('Ungültige Abfrage: ' . mysql_error());
    }
    $result = mysql_query("FLUSH LOGS");
    if (!$result) {
    die('Ungültige Abfrage: ' . mysql_error());
    }
    /* Tabellen sperren ende */
    if(!isset($mysql_dbs))
    {
    $mysql_db_list = mysql_list_dbs($mysql_link);
    if(mysql_num_rows($mysql_db_list) <= 0)
    {
    die("-E: Keine Datenbank(en) gefunden<br>\n");
    }
    while ($row = mysql_fetch_array($mysql_db_list))
    {
    $mysql_dbs[] = $row[0];
    }
    }
    foreach($mysql_dbs as $mysql_db)
    {
    mysql_select_db($mysql_db);
    $mysql_tables = array();
    $mysql_table_list = mysql_list_tables($mysql_db);
    if(mysql_num_rows($mysql_table_list) >= 1)
    {
    while ($row = mysql_fetch_row($mysql_table_list))
    {
    $mysql_tables[] = $row[0];
    }
    }
    $file = $speicherort.$mysql_db."-".date('d.m.Y').".sql";
    /*Hier war das mit dem Unlink($file); */
    $backup = fopen($file,'w');
    foreach($mysql_tables as $mysql_table)
    {
    $mysql_table_info = Array();
    $i = 0;
    $mysql_table_infos = mysql_query("DESCRIBE ".$mysql_table);
    while($row = mysql_fetch_array($mysql_table_infos))
    {
    $mysql_table_info[$i]['fieldname'] = $row[0];
    $mysql_table_info[$i]['typ'] = $row[1];
    $mysql_table_info[$i]['null'] = $row[2];
    $mysql_table_info[$i]['key'] = $row[3];
    $mysql_table_info[$i]['default'] = $row[4];
    $mysql_table_info[$i]['extra'] = $row[5];
    $i++;
    }
    $befehl = "CREATE TABLE IF NOT EXISTS `".$mysql_table."` (\n";
    $pri = false;
    $auto_increment = false;
    $increment_feld = "";
    fwrite($backup,"-- --------------------------------------------------\n-- Struktur der Tabelle ".$mysql_table."\n-- --------------------------------------------------\n\n");
    foreach($mysql_table_info as $mysql_spalte_info)
    {
    $befehl .= " `".$mysql_spalte_info['fieldname']."` ";
    $befehl .= $mysql_spalte_info['typ']." ";
    if($mysql_spalte_info['default'] != "")
    $befehl .= "default `".$mysql_spalte_info['default']."` ";
    else
    $befehl .= "default NULL";
    if($mysql_spalte_info['extra'] != "" || !empty($mysql_spalte_info['extra']))
    $befehl .= " ".$mysql_spalte_info['extra'].",\n";
    else
    $befehl .= ",\n";
    if($mysq_spalte_info['key'] != "" || !empty($mysql_spalte_info['key']))
    {
    $pri[] = $mysql_spalte_info['fieldname'];
    }
    if($mysql_spalte_info['extra'] != "" || !empty($mysql_spalte_info['extra']))
    {
    $auto_increment = true;
    $increment_feld = $mysql_spalte_info['fieldname'];
    }
    }
    $befehl = substr($befehl,0,(strlen($befehl)-2));
    if($pri != false)
    {
    $befehl .= ",\n PRIMARY KEY (";
    foreach($pri as $pr)
    $befehl .= "`".$pr."`,";
    $befehl = substr($befehl,0,(strlen($befehl)-1));
    $befehl .= ")";
    }
    if($auto_increment)
    {
    $auto_inc = mysql_query("SELECT ".$increment_feld." FROM ".$mysql_table." ORDER BY ".$increment_feld." DESC LIMIT 1");
    while($inc = mysql_fetch_assoc($auto_inc))
    {
    $zahl = $inc[$increment_feld]+1;
    }
    $befehl .= "\n) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=".$zahl." ;\n\n";
    }
    else
    {
    $befehl .= "\n) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;\n\n";
    }
    fwrite($backup,$befehl);
    fwrite($backup,"-- --------------------------------------------------\n-- Daten der Tabelle ".$mysql_table."\n-- --------------------------------------------------\n\n");
    $befehl = "TRUNCATE TABLE `".$mysql_table."`;\n";
    fwrite($backup,$befehl);
    $datensaetze = mysql_query("SELECT * FROM ".$mysql_table.";");
    while ($datensatz = mysql_fetch_assoc($datensaetze))
    {
    $values = "";
    foreach($datensatz as $value)
    {
    $values .= "'".mysql_real_escape_string($value)."',";
    }
    $values = substr($values,0,(strlen($values)-1));
    $befehl = "INSERT INTO `".$mysql_table."` VALUES (".$values.");\n";
    fwrite($backup,$befehl);
    }
    }
    echo "Backup of ".$mysql_db." done<br>\n";
    fclose($backup);
    }
    /* Tabellen ENTsperren start */
    $result = mysql_query("UNLOCK TABLES");
    if (!$result) {
    die('Ungültige Abfrage: ' . mysql_error());
    }
    /* Tabellen ENTsperren ende */
    mysql_close($mysql_link);
    ?> [/PHP]

    also
    so


    zu 3. das mit dem sperren habe ich noch nie gehört, gibt es dafür einen php befehl? unter google abe ich leider nichts gefunden.


    edit:
    also nun funktioniert es :):):)


    das Script erstellt mir nun ein Backup in den Backup Ordner.
    nun fehlt mir nur noch das mit der Datenbank sperren

    Zitat von Servior;14832

    Ist cgi-bin der erste Ordner?


    Ggf. verhindert der Ordner darüber bereits den Schreibzugriff.
    Kannst du von Hand eine Datei in den Ordner hochladen, bzw. erstellen?


    also wenn ich über die Domain auf den Webserver zugreife, dann komme ich sofort in das html verzeichniss, jedoch wenn ich per ftp zugreife, dann komme ich vor das html verzeichniss,
    ergo


    ftp /html/cgi-bin/
    domain /cgi-bin/


    ich gebe dem html ordner mal die rechte 777 mal schauen was passiert, einen moment bitte


    edit:


    also wenn ich dem ordner html die rechte 777 gebe, dann bekomme ich einen 500 Internal Server Error

    Zitat von Servior;14826

    Wie genau sehen die Berechtigung der Datei, sowie der Ordner aus?


    Die Fehlermeldung Permission Denied deutet ja ziemlich eindeutig darauf hin dass die Datei nicht erstellt werden kann.


    so:


    cgi-bin/ <--- 777
    cgi-bin/backup/ <--- 777
    cgi-bin/backup.php <--- 777

    jup, bei dem mysqldumper funktioniert das Backup per php auch gut, einbinden in einen Cronjob kann ich dies nicht, weil der dumper mit selbstaufrufen arbeitet.
    Das Backup per Perl funktioniert nicht, weil bei dem Produkt Business 1024 kein Perl vorhanden ist


    Mfg. Tobias


    edit:


    wie meinst du das mit dem [1]

    Hallo


    dieses Thema würde eigentlich in das Form "Conifxx und PHP|MySql" passen, jedoch handelt es sich auch um CGI, deswegen einfach hier rein, falls es gar nicht hier rein passt, bitte verschieben.


    Also, ich versuche mit einem Cronjob meine MySql DB zu backuppen.
    Dafür habe ich den Cronjob so eingestellt
    (Tesweise alle 5min)

    Code
    */5 * * * * /usr/bin/php5 /var/www/web143/html/cgi-bin/backup.php

    mein PHP Script sieht wie folgt aus:


    Testweise habe ich die php datei und den ordner backup mit den rechten 777 ausgestattet


    so, nachdem ich nun in Confixx bei dem Cronjob auf speichern gedrückt habe, habe ich mal so 10min gewartet und dann bekam ich eine e-Mail von Cron Daemon mit folgendem Inhalt:

    Die Datei backup.php habe ich in den cgi-bin Ordner gelegt, weil ich irgendwo mal gehört habe, dass ein Cronjob nur dort ausgeführt wird.


    Ich habe schon vieles versucht, auch mit CGI Scripten, jedoch bekam ich immer eine E-Mail (bei dem CGI-Script jedoch mit einer anderen Fehlermeldung).


    Ich weiß wirklich nicht mehr wo der Fehler liegt.
    Es wäre nett, wenn ihr mit helfen könntet.


    Noch eine Anmerkung, ich besitze das Produkt Business 1024.


    Mfg. Tobias