Eigene "Apache Environment" Variabel definieren

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

  • Eigene "Apache Environment" Variabel definieren

    Hallo

    Wenn ich was am programmieren bin, arbeite ich immer zuerst mit meiner lokalen Apache/PHP Installation.
    Bei Server spezifischen Einstellungen (MySQL Verbindung, Imagemagick Pfad, usw) überprüfe ich jeweils einfach, ob im DOCUMENT_ROOT "fabio" enthalten ist, weil dann ist es auf meinem lokalen Mac.

    Allerdings klappt dies nicht immer, weil bei einem Server ist im Pfad mein Name enthalten.

    Was ich am liebste hätte, wäre eine eigene "Apache Environment" Variabel, die ich einmal im der php.ini oder httpd.conf oder sonst wo definiere, und dann einfach abfragen kann.

    zB if( isset($_ENV['islocal']){echo "lokaler Server";}

    Kann ich solch eine Variabel selber irgendwo definieren?

  • #2
    1. Variable
    2. Warum muss es denn eine $_ENV sein? Du hast sicher ne config.php - Warum definierst du dort nicht einfach eine "ENVIRONMENT"-Konstante, die du nach dem hochladen direkt auf dem Server von "DEV" auf "PROD" stellst? Das ist wesentlich einfacher, erfüllt den gleichen Zweck und du musst nicht im Apache rumfuhrwerken.
    3. Wenn du jetzt sagst: Ich will aber nix im PHP ändern nach dem hochladen, noch eine Alternative: Erzeuge in deinem config-Verzeichnis eine leere Datei, z.B. "dev.env" lokal und "prod.env" auf dem Server. In der Config prüfst du, ob und welche der Dateien vorhanden ist und weißt sofort, wo du dich befindest.
    4. Und weil's so schön ist, noch eine: Bau dir zwei verschiedene "Einstiegspunkte" in deine Applikation: "index.php" (produktiv) und "index_dev.php" (entwicklung). Lokal greifst du nur auf "index_dev.php" zu, online nur auf "index.php"
    5. Wenn dir das alles nicht gefällt, lern die Apache Docs zu durchsuchen; http://httpd.apache.org/docs/current/mod/mod_env.html
    Zuletzt geändert von ApoY2k; 22.08.2011, 13:14.
    This is what happens when an unstoppable force meets an immovable object.

    Kommentar


    • #3
      überprüfe ich jeweils einfach, ob im DOCUMENT_ROOT "fabio" enthalten ist,
      Und wie wäre es mit dem SERVER_NAME, HTTP_HOST
      Oder/und SERVER_SOFTWARE, SERVER_SIGNATURE, SERVER_ADDR

      Irgendwo werden sie sich ja sicherlich unterscheiden.
      Wir werden alle sterben

      Kommentar


      • #4
        Zitat von fabio Beitrag anzeigen
        Kann ich solch eine Variabel selber irgendwo definieren?
        Apache HTTP Server Version 2.2 Documentation - Apache HTTP Server
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X