Ankündigung

Einklappen
Keine Ankündigung bisher.

Eigenen Installer für ein PHP-Projekt

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Eigenen Installer für ein PHP-Projekt

    Hallo!

    Ich realisiere gerade ein eigenes Projekt und um anderen Menschen den Zugang zu erleichtern, wollte ich einen Installer machen. Nun ist es so das der Installer bereits in Teilen funktioniert, aber ein Problem macht mir momentan zu schaffen.

    Ich habe meine config als ini Datei realisiert und unter Windows mit XAMMP funktioniert das problemlos. MacOS und Linux weigern, weil die Benutzerrechte nicht passen. Eine Möglichkeit wäre die Rechte anzupassen, wenn man einen eigenen Linux-Webserver hat. Das habe ich nicht. Ich würde es auch gern bei einem SharedHoster wie One.com installieren können.

    Bei WordPress funktioniert es doch auch... bloß ist mir noch nicht ersichtlich wie die es machen.

    Fragen:
    - ist es eine gute Idee Einstellungen zum Programm in einer ini-Datei zu schreiben und verändern zu wollen?
    - ist es überhaupt möglich Rechte auf einem Webserver (ShareHoster) zu verändern? chmod, umask usw. als php-befehle schlugen bei mir alle fehl..
    - wie macht es zum Beispiel, WordPress?

    Für Tipps und Hinweise wäre ich sehr dankbar

    MfG

  • #2
    Wieso unterscheiden sich da überhaupt die Rechte? Wenn alle Projektdateien unter dem gleichen Nutzer angelegt wurde - z.B. beim extrahieren eines ZIP, oder beim Upload per FTP - dann existiert das Problem doch garnicht, PHP unterscheidet nicht einfach so Rechte pro Dateityp.

    Kommentar


    • #3
      ist es eine gute Idee Einstellungen zum Programm in einer ini-Datei zu schreiben und verändern zu wollen?
      Im Prinzip kannst du das schon so machen. Ini-Dateien sind aber eigentlich nur unter Windows-Systemen verbreitet. Da die entsprechenden PHP-Funktionen dafür aber auch unter Linux funktionieren dürfte das kein Problem darstellen.

      ist es überhaupt möglich Rechte auf einem Webserver (ShareHoster) zu verändern? chmod, umask usw. als php-befehle schlugen bei mir alle fehl..
      Ja, Berechtigungen sollten sich auch auf Shared Hostern ändern lassen. Kommt aber im Speziellen auf den jeweiligen Shared Hoster an.

      wie macht es zum Beispiel, WordPress?
      Wordpress generiert eine PHP Datei mit den Config Werten. Hat den Vorteil dass diese nur noch eingebunden und nicht jedes mal neu geparsed werden muss.

      Kommentar


      • #4
        Zitat von JaMa Beitrag anzeigen
        Wordpress generiert eine PHP Datei mit den Config Werten. Hat den Vorteil dass diese nur noch eingebunden und nicht jedes mal neu geparsed werden muss.
        Und Goethe bedenke, eine .ini Datei ist per se mal aus dem Web abrufbar, wenn du das nicht aktiv unterbindest. Eine PHP-Datei kann keiner lesen.

        Kommentar


        • #5
          Zitat von hausl Beitrag anzeigen
          Und Goethe bedenke, eine .ini Datei ist per se mal aus dem Web abrufbar, wenn du das nicht aktiv unterbindest. Eine PHP-Datei kann keiner lesen.
          Im Idealfall ist die Config (ini oder nicht) nicht im Docroot.

          Ich habe meine config als ini Datei realisiert und unter Windows mit XAMMP funktioniert das problemlos. MacOS und Linux weigern, weil die Benutzerrechte nicht passen. Eine Möglichkeit wäre die Rechte anzupassen, wenn man einen eigenen Linux-Webserver hat. Das habe ich nicht. Ich würde es auch gern bei einem SharedHoster wie (..) installieren können.
          Das würde ich weiter untersuchen, denn an den Rechten sollte das nicht liegen, es sei denn Du hastz auf die Config kein Schreibrecht, was zu ändern nicht die Welt wäre.

          Kommentar


          • #6
            Alternativen zur ini-Datei:
            Für komplexe Configurationen nehme ich XML-Dateien. Eine einfachere Handhabung bieten Configurationen welche als JSON abgelegt werden. Weitere Varianten siehe hier.

            Kommentar


            • #7
              Zitat von hausl Beitrag anzeigen
              [...] Eine PHP-Datei kann keiner lesen.
              Diese (generische) Aussage ist schon sehr gefährlich. Schon vielen ist der Apache Handler auf den Kopf gefallen und RAW PHP wurde dem Browser übergeben. Hier gilt die Devise: nur der Einstiegspunkt sollte in einem Public Root liegen, die restliche Source in einem privaten Verzeichnis. Als gute Referenz gilt die Symfony-Struktur.

              Kommentar


              • #8
                Hallo! Erstmal Entschuldigung das ich mich länger nicht gemeldet habe. Ich habe jetzt den Installer erstmal fertig gemacht und auf dabei auf auf config.php gesetzt, statt ini. Das mit den Rechten hat bei mir leider nicht geklapt und bevor ich da auf biegen und brechen irgendwas "rein programmiere", habe ich es lieber neu und einfacher gemacht. Jetzt funktioniert es so wie es soll. Dabei habe ich eure Ratschläge befolgt. Also vielen Dank für eure Tipps und Hilfe

                Kommentar

                Lädt...
                X