Apache2, Probleme mit Rechten

  • Mahlzeit zusammen,

    ich habe am Wochenende Linux Mint mit dem xfce Desktop auf einen meiner Laptops installiert und dazu apache2 mit php8.1
    Hintergrund ist, dass ich mich etwas mehr mit Webentwicklung beschäftigen möchte und hier ein Gerät brauche wo alles lokal läuft.

    Zu meinem Problem.
    Nach der Installation vom Apache2 Server gehörten die Verzeichnisse /var/www/ und /var/www/html/ den user root.
    Dann habe ich geschaut und die Gruppe www-data sowie der user www-data existierten, also habe per chown und chgrp die Verzeichnisse an www-data übergeben.
    Mich habe ich dann der Gruppe www-data hinzugefügt.

    Dann habe ich versucht mit VS Code mit der Seite anzufangen.
    Im Dateiexplorer habe ich das Verzeichnis /var/www/geöffnet und wollte dort ein Verzeichnis erstellen, bekomme aber dann die Meldung dass ich keine Rechte hätte auf "/run/user/1000...." (sorry hab den genauen Pfad gerade nicht im Kopf) zuzugreifen. Also eine Art temporären Ordner.
    Dann habe ich das Verzeichnis im Terminal selber angelegt. Das gehörte dann aber auch mir und meiner Gruppe und nicht www-data
    In VS Code hatte ich dann weiter dieses Verhalten und konnte keine Datei oder ein Verzeichnis erstellen.

    Dann habe ich, um mit der Seite voran zu kommen in meinem Homeverzeichnis angefangen.
    Hier wird es auch "lustig".
    Wenn ich die Seite dann mit Chrome (Flatpack) öffne nimmt er die index.html aber keine css Datei und zeigt die Bilder aus dem Unterordner ./images nicht an wegen fehlender Berechtigung
    Kopiere ich die Dateien nach /var/www/lastenhelfer/ und rufe die Seite über die VirtualHost Adresse auf nimmt er die .html sowie die .css Dateien aber auch hier die Bilder aus ./images nicht.
    Rufe ich die .html Datei aus meinem Homeverzeichnis mit Firefox auf geht alles.

    Ich bin hier gerade etwas verwirrt.
    Ich bin jetzt nicht ganz neu unter Linux aber etwas eingerostet.

    Könnte mich jemand auf den Richtigen Weg bringen bitte.

    provozierter Experte für semifachliche Individualangelegenheiten

  • Hi,

    ich mache es bei sowas immer ein wenig hacki aber geht so bis jetzt am besten(bei mir).

    - Erstelle deine HP bei dir im homedir normal

    - Erstelle ein kleines Script welches die Dateien von deinem dir in den apache Ordner kopiert (kannst du ja über eine .desktop starten)

    - Ändere in deinem Script den users des apache ordner reckursiv auf den richtigen User.

  • Dann habe ich geschaut und die Gruppe www-data sowie der user www-data existierten, also habe per chown und chgrp die Verzeichnisse an www-data übergeben.
    Mich habe ich dann der Gruppe www-data hinzugefügt.

    Hast du danach den Rechner neugestartet bzw dich an oder abgemeldet? Sonst greifen die Berechtigungen nicht.

    Ansonsten als Tipp von jemanden der beruflich als Web-Entwickler arbeitet es gibt "Devilbox" https://devilbox.readthedocs.io/en/latest/gett…e-devilbox.html

    Damit kannst du problemlos eigene WebRoots die mit jeweils eigener Domain laufen aufsetzen, auch mit lokalem SSL Zertifikat (was man eh braucht, wenn man gewisse Funktionen wie z.b. Standortabfragen oder Push Benachrichtigungen in seine Webseiten einbauen will).

    --
    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

  • Danke für eure Antworten.
    Ich werde mir das mit den Rechten sowie diese Devilbox zuhause mal anschauen wenn ich heute Zeit finde.
    Ich frage mich aber, warum VSCode in so einem run Verzeichnis arbeitet und nicht direkt in dem Verzeichnis welches ich geöffnet habe.

    provozierter Experte für semifachliche Individualangelegenheiten

  • Speichenbieger hast du VSCode als Flatpak installiert?

    Wenn ja mache das nicht und lade von der VSCode Seite das DEB runter.

    Flatpak VSCode hat noch ganz viele Probleme beim ersten Start wird man auch darauf hingewiesen.

    --
    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

  • Danke für eure Antworten.
    Ich werde mir das mit den Rechten sowie diese Devilbox zuhause mal anschauen wenn ich heute Zeit finde.
    Ich frage mich aber, warum VSCode in so einem run Verzeichnis arbeitet und nicht direkt in dem Verzeichnis welches ich geöffnet habe.

    Hallo,

    das kann evtl. daran liegen wo du es liegen hast. Externe Festplatten wurden z.B mal mit gvfs-mount eingehängt. Da hatte man auch diese Verzeichnisse unter /run/user/1000 .

  • Speichenbieger hast du VSCode als Flatpak installiert?

    Wenn ja mache das nicht und lade von der VSCode Seite das DEB runter.

    Flatpak VSCode hat noch ganz viele Probleme beim ersten Start wird man auch darauf hingewiesen.

    Ok, dann lade ich mir nochmal das .deb Paket und installiere das.
    Da waren Meldungen, aber frag mich nicht welche. Hätte aber nicht gedacht, dass das solche Auswirklungen hat.

    Dank Dir.

    provozierter Experte für semifachliche Individualangelegenheiten

  • Hallo,

    das kann evtl. daran liegen wo du es liegen hast. Externe Festplatten wurden z.B mal mit gvfs-mount eingehängt. Da hatte man auch diese Verzeichnisse unter /run/user/1000 .

    Ne, hab alles auf einer Festplatte. Programme würde ich auch nie auf externe Datenträger installieren.
    Aber danke.

    provozierter Experte für semifachliche Individualangelegenheiten

  • Ok, ich habe mir gerade nochmal die Rechte im /var/www/ angeschaut. Alle Dateien gehörten mir.
    Muss mir also angewöhnen ein chown -R und chgrp -R auf /var/www/ zu machen wenn ich da was hinschiebe.
    Mal sehen, vielleicht mach ich das wie vs2-free-users geschrieben hat.
    Im Homeverzeichnis arbeiten und dann per Script rüber und danach automatisch die Rechte neu vergeben.

    Und das mit der Paketquelle von VSCode schaue ich mir nachher noch an.
    Jetzt müssen erstmal die Kinder ins Bett, sonst komme ich zu gar nichts.

    //EDIT
    So, hab VS Code jetzt als .deb installiert und siehe da, ich kann im /var/www/ arbeiten. Nur die Dateien gehören dann noch komplett mir, dass muss ich also noch ändern, wobei ich hier überlege ob es nicht eine Art watchdog gibt der ein Script ausführt sobald sich in dem Verzeichnis was ändert.

    provozierter Experte für semifachliche Individualangelegenheiten

    Einmal editiert, zuletzt von Speichenbieger (4. September 2023 um 20:34) aus folgendem Grund: Nachtrag

  • Hier noch ein kleiner Nachtrag.
    Ich habe mittlerweile auch GoogleChrome als .deb installiert und die Flatpack Version wieder runter geworfen.
    Läuft jetzt auch mit der Webseite aus dem Home Verzeichnis.

    Randbemerkung.
    Hatte u.a. wegen snap Ubuntu runter geworfen und Mint genommen weil ich Flatpack besser fand von dem was ich gelesen und gesehen hatte.
    Bisher habe ich drei Programme als Flatpack installiert, alle wieder deinstalliert und dafür die .deb Pakete aus dem Web geladen.

    provozierter Experte für semifachliche Individualangelegenheiten

  • Hi,

    flatpaks und snaps werden halt in eine Sandbox gepackt das bietet Sicherheit aber bringt Einschränkungen. Ist also Pest und Kollera.

Jetzt mitmachen!

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