Ergebnis 1 bis 9 von 9

Thema: Umzug einer lokalen Installation auf den Server

  1. #1
    Contao-Fan Avatar von Schneetiger
    Registriert seit
    26.01.2013.
    Beiträge
    279

    Frage Umzug einer lokalen Installation auf den Server

    Hallo Community,

    wahrscheinlich habe ich eine selten dämliche Frage, aber was bedeutet "alle Dateien" mittels FTP aufspielen? Welche sind das denn im Einzelnen?

    Warum frage ich? Nun, immer wenn ich lokal eine Änderung durchgeführt und getestet habe, möchte ich dies in die Testumgebung auf den Server spielen, damit der Kunde im Backend etwas üben kann, bevor diese online geht. Diese Website ist meine erste Kunden-Website mit Contao und sie funktioniert auch tadellos.

    Aber auf dem Server bekomme ich nach dem Überspielen der Dateien manchmal die nachfolgende Fehlermeldung, und zwar nur dann, wenn ich auch den Order "System" überspielt habe. Die Fehlermeldung ist mir klar, da ich auf dem Server natürlich keinen localhost habe und daher keinen Zugriff bekomme.

    PHP-Code:
    Warningmysqli::mysqli(): (HY000/1045): Access denied for user 'root'@'localhost' (using passwordYESin system/modules/core/library/Contao/Database/Mysqli.php on line 47 #0 [internal function]: __error(2, 'mysqli::mysqli(...', '/var/www/client...', 47, Array)
    #1 system/modules/core/library/Contao/Database/Mysqli.php(47): mysqli->mysqli('localhost', 'root', 'WamuduWebCMS', 'db_karpfinger', 3306, '')
    #2 system/modules/core/library/Contao/Database.php(77): Contao\Database\Mysqli->connect()
    #3 system/modules/core/library/Contao/Database.php(160): Contao\Database->__construct(Array)
    #4 [internal function]: Contao\Database::getInstance()
    #5 system/modules/core/library/Contao/System.php(110): call_user_func(Array)
    #6 system/modules/core/library/Contao/User.php(89): Contao\System->import('Database')
    #7 system/modules/core/classes/FrontendUser.php(79): Contao\User->__construct()
    #8 system/modules/core/library/Contao/User.php(151): Contao\FrontendUser->__construct()
    #9 [internal function]: Contao\User::getInstance()
    #10 system/modules/core/library/Contao/System.php(110): call_user_func(Array)
    #11 index.php(41): Contao\System->import('FrontendUser', 'User')
    #12 index.php(432): Index->__construct()
    #13 {main}

    Fatal errorUncaught exception Exception with message Access denied for user 'root'@'localhost' (using passwordYESthrown in system/modules/core/library/Contao/Database/Mysqli.php on line 51 #0 system/modules/core/library/Contao/Database.php(77): Contao\Database\Mysqli->connect()
    #1 system/modules/core/library/Contao/Database.php(160): Contao\Database->__construct(Array)
    #2 [internal function]: Contao\Database::getInstance()
    #3 system/modules/core/library/Contao/System.php(110): call_user_func(Array)
    #4 system/modules/core/library/Contao/User.php(89): Contao\System->import('Database')
    #5 system/modules/core/classes/FrontendUser.php(79): Contao\User->__construct()
    #6 system/modules/core/library/Contao/User.php(151): Contao\FrontendUser->__construct()
    #7 [internal function]: Contao\User::getInstance()
    #8 system/modules/core/library/Contao/System.php(110): call_user_func(Array)
    #9 index.php(41): Contao\System->import('FrontendUser', 'User')
    #10 index.php(432): Index->__construct()
    #11 {main} 
    Wenn ich es richtig verstehe, dann dürfen nur der Ordner "files" und die Datenbank übertragen werden und auf keinen Fall der Ordner "system".

    Was mache ich dann immer? Ich lösche die Installation auf dem Server und installiere mittels Contao-Check neu, danach läuft´s wieder. Das kann aber nicht "die" Lösung sein.

    Kann mir jemand dazu Licht ins Dunkel bringen? Freue mich auf Eure Antworten. Vielen Dank!

    Gruß
    Schneetiger

  2. #2
    Contao-Nutzer
    Registriert seit
    06.01.2014.
    Beiträge
    40

    Standard

    Hallo,

    ich konnte den Fehler bei mir reproduzieren, indem ich einfach in der localconfig.php einen nicht existenten Datenbankuser angegeben habe.

    Dementsprechend müssten bei Dir eigentlich nur die DB-Zugangsdaten angepasst werden...


    Gruß

  3. #3
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Zitat Zitat von Schneetiger Beitrag anzeigen
    immer wenn ich lokal eine Änderung durchgeführt und getestet habe, möchte ich dies in die Testumgebung auf den Server spielen, damit der Kunde im Backend etwas üben kann, bevor diese online geht
    Evtl. könnte die Erweiterung syncCto ein gutes Hilfsmittel für Dich sein.

  4. #4
    Contao-Fan Avatar von Schneetiger
    Registriert seit
    26.01.2013.
    Beiträge
    279

    Standard

    Hallo Hermes2.11,
    hallo peter.fl,

    vielen Dank für Eure Antworten. Die Erweiterung "syncCTO" werd´ ich mir mal ansehen. Also scheint aber mein Wissen richtig zu sein, daß "nur" der Ordenr "files" und die aktuelle Datenbank übertragen werden müssen. Bezüglich der Datenbank wäre es also nützlich, wenn auf dem lokalen Rechner die selben Zugangsdaten zur Datenbank vorgegeben werden, wie auf dem Server. Die genannten Probleme müssten dann passé sein. Sehe ich das richtig
    ?

    Gruß
    Schneetiger

  5. #5
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.097
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Das wird mit einiger Wahrscheinlichkeit nicht gehen, da lokal dein Datenbankserver localhost heisst und online eventuell nicht.
    Da aber die entscheidende Datei sowieso nicht in files steht, müssen die Zugangsdaten auch nicht gleich sein. Die localconfig.php online muss nur dann überschrieben / geändert werden, wenn sich lokal diese Datei geändert hat, also meist wenn Einstellungen im Backend geändert werden. Geänderte Inhalte änder da nichts.

  6. #6
    Contao-Fan Avatar von Schneetiger
    Registriert seit
    26.01.2013.
    Beiträge
    279

    Frage

    Hallo Leute,

    vielen Dank für Eure nette Hilfe. Leider habe ich es bis heute nicht geschafft, die Site online zu stellen.

    Ich habe z.B. den Unterordner /ctao, in den ich Contao mittels Contao-Check installiert habe. Vorausgesetzt die Datenbank läuft (tut sie jetzt) und ich verschiebe die gesamte Installation, also alle Ordner und die Files, welche direkt unter /ctao stehen (ohne Ordner) in das root, dann sollte ich doch mit den Schritten auskommen, die Thomas Weitzel in seinem Buch "Contao für Webdesigner" auf den Seiten 254/255 schreibt. Also


    1. Den relativen Pfad in der Pathconfig.php anpassen mittels return '/root';
    2. die .htaccess.default mittels rewriteEngine On RewriteBase /root (=Server Root) ändern


    Damit sollte es doch eigentlich nach meinem Verständnis erledigt sein; hat aber leider nicht funktioniert. Habe ich was übersehen? Check ich was nicht? Wie macht Ihr das? Ich mach es leider zum ersten Mal.

    Vielen Dank für Eure Hilfe im Voraus

    Sonnige Ostergrüße
    Schneetiger

  7. #7
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Zitat Zitat von Schneetiger Beitrag anzeigen
    1. Den relativen Pfad in der Pathconfig.php anpassen mittels return '/root';
    2. die .htaccess.default mittels rewriteEngine On RewriteBase /root (=Server Root) ändern
    Meiner Meinung hat man die pathconfig.php überhaupt nicht zu ändern. Das Sicherste ist, die zu löschen und install.php aufzurufen. Nur hierbei wird eine "richtige" pathconfig.php erstellt.
    Die .htaccess.default wird zunächst einmal in .htaccess umbenannt und anschliessend, falls notwendig, den persönlichen Anforderungen angepasst.

  8. #8
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.097
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Und wenn du das schon machen willst, dann bitte nicht mit "/root". Außer das Unterverzeichnis heißt wirklich so. Ansonsten
    Code:
    RewriteBase /
    bzw.
    PHP-Code:
    return ''
    Ansonsten ist es der sicherere Weg, einfach install.php aufzurufen. Die ändert die pathconfig.php dann passend, auch wenn sie schon existiert. Und in der in von .htaccess.default in .htaccess umbenannten oder dahin kopierten Datei dann RewriteBase / eintragen, aber das steht normalerweise eh schon drin.

  9. #9
    Contao-Fan Avatar von Schneetiger
    Registriert seit
    26.01.2013.
    Beiträge
    279

    Daumen hoch

    Hallo KlausGrenoble,
    hallo tab,

    herzlichen Dank für Eure Antworten und Tips. Ich habe die Installation nun prima umgezogen und Sie läuft auch ordnungsgemäß. Thread ist damit soweit gelöst.

    Gruß
    Schneetiger

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •