Best Practice Synchronisation Webspace

  • Hallo liebe Community,

    ich habe eine Frage bezüglich der Synchronisation von Website-Dokumenten auf meinem Debian 12-Server auf dem ein Apache-Webserver mit vHost-Konfiguration läuft.

    Der Server ist speziell für die Webentwicklung und läuft als VM in meinem Netzwerk. Ich greife auf diesen Server mit verschiedenen Clients (Debian, Windows) i.d.R. per SSH oder Samba zu.

    Bisher habe ich für meine lokale Webentwicklung den Ansatz verfolgt, die Dateien lokal auf den Clients zu entwickeln und dann beim Speichern automatisch per FTP auf den Entwicklungsserver zu übertragen. Bilder und Dateien habe ich manuell per FTP hochgeladen.

    Da die Grafiken und Dateien jedoch einen Großteil meiner Projekte ausmachen und hier viel Bewegung herrscht, sind die Ordner (lokal und webspace) oftmals nicht mehr synchron, sobald ich einmal vergesse, etwas auf den Server hochzuladen oder auf dem Client zu löschen.

    Meine Idee ist es daher, den Ordner /var/www/domain.de/public direkt in VS-Code einzuhängen, um die Änderungen beim Speichern ohne FTP-Upload verfügbar zu machen und somit meinen Workflow zu verbessern. Damit gäbe es dann nur noch ein Arbeitsverzeichnis.

    Dafür würde ich gern den Ordner /var/www/domain.de per Samba in die Clients einhängen.

    Um dies umzusetzen, habe ich die Berechtigungen des Ordners auf dem Server folgendermaßen angepasst:

    sudo chown -R www-data:www-data /var/www/domain.de

    sudo chmod -R 775 /var/www/domain.de/public

    Des Weiteren habe ich den lokalen Benutzer "benutzer" der Gruppe "www-data" hinzugefügt mittels:

    sudo usermod -aG www-data benutzer


    Meine Frage ist nun, ob dieses Vorgehen Best Practice ist oder ob ich auf dem Holzweg bin? Ich habe hierzu wenig bis nichts online gefunden, wovon ich ausgehe, dass dies so nicht üblich ist. Gibt es vielleicht eine andere Möglichkeit oder gibt es eventuell ein Plugin für VS-Code welches die Synchronisation übernimmt?


    Sobald eine Seite fertig ist, übertrage ich diese per SFTP auf den Produktivserver (VPS) im Netz. Jedoch ergibt sich auch hier das Problem, sobald ich nachträglich an der Seite arbeite.

    Hierfür habe ich dieselben Berechtigungen gesetzt. Ist das soweit korrekt? Es gibt keinen separaten SFTP-Nutzer. Der nicht-Root-User auf dem VPS muss dafür herhalten.

    Über eure Rückmeldungen und eventuelle Verbesserungsvorschläge wäre ich sehr dankbar.

    Vielen Dank und einen schönen Abend!

    Wattfrass

  • Grundsätzlich ist „Speichern“ und es wird automatisch auf den Produktiven Server geladen definitiv nicht „Best Practice“

    Einmal eine falsche zeile Code und die Webseite geht nicht mehr bis du es wieder korrigiert hast.


    Ich persönlich würde auf GitHub ein Repository anlegen (man kann auch private anlegen, die niemand sonst sehen kann).

    Und die Webseite über GIT synchronisieren - so hast du immer und überall den selben Stand.

    --
    Ciao!

    Linux Nutzer seit über 20 Jahren. I ❤️ Freedom!

    Offizieller Proton-Botschafter aus der Schweiz 🇨🇭 😅

    Meine Haupt-Distribution ist Ubuntu.

    Mein Blog: https://rueegger.me

    Wer meinen sinnlosen Gedanken folgen möchte, kann dies gerne auf Mastodon tun: https://swiss.social/@srueegger

  • Ich würde das ganze auch über Git machen, auch wenn ich das Hub weglassen würde. Du kannst dann Scripte schreiben die dir automatisch alles auf den Webserver ziehen was im master branch ist und entwickelst dann im develop weiter.

    Ich mach das z.B. über SystemD und deren Timer, hier mal ein Beispiel:

    Wenn du es weiter über ein Push verfahren machen willst, kannst du auch die Git Hooks nutzen. Hatte ich auch zeitweise im Einsatz. Hier ein paar Beispiele: https://codeberg.org/Tealk/Git-Hooks_examples


    Da du eh schon mit VS-Code arbeitest, sollte das mit git kein Problem sein, deren Integration ist ausgezeichnet. Kann dir noch diese 3 Erweiterungen empfehlen:.gitignore Generator - Visual Studio Marketplace, Git Graph - Visual Studio Marketplace und Git History - Visual Studio Marketplace

    Rollenspiel.Monster -Deine Fediverse Rollenspiel Nodes

    GPG

    System: TUXEDO Aura 15 - Gen1, AMD Ryzen 7 4700U, 32GB RAM, 1TB M.2 SATAIII, EndeavourOS(Gnome[Wayland])

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!