Posts by frdmn

    So, GitHub repository steht und das Script ist soweit auch angepasst (dynamisch, Domainnamen als 2. Argument übergeben): https://github.com/frdmn/LiveConfig-scripts


    Bin mir aktuell noch nicht ganz sicher ob man das nicht etwas eleganter lösen kann, allerdings wissen wir in dem apache_orig_configureVHost(opts, cfg) Funktionsaufruf noch nicht um welchen Domainnamen es speziell geht.


    Dort sind nur _alle_ Domains aus dem entsprechendem Webspace hinterlegt:


    (Beispielobjekt "opts" dekodiert als JSON: http://paste.frd.mn/qetal)


    Edit: Erste Version der nginx_post_vhost_hook ist nun auch fertig und gepusht.


    Bei Feedback oder Verbesserungsvorschlägen einfach kurz Bescheid geben.

    Sehr schön. Nächstes Bonusfeature: Domainnamen (welcher aktuell noch per Hand in die $conf_include und $url Variablen geschrieben wird) automatisch per Lua auslesen und als 2. Argument an die lc_post_vhost_hook.sh übergeben.


    Somit könnte man das Script generell nutzen und muss nicht für jede "Kundenänderung" eine neue Hook basteln.

    fx998 Hast du Stress mit wenn ich dein Script auf GitHub veröffentlichen würde? Hab vor dort ein Repository für LiveConfig bezogene Scripte und Tools anzulegen und da würde sich anbieten auch dieses hier dort festzuhalten.

    weltmeister:


    Sollte an sich mit @fx998's script möglich sein:


    1. An sich die Installationshinweise aus "Idee Beispiel für indivuduelle Anpassung für Apache mit custom.lua" befolgen.


    2. Eine "custom" Datei für den speziellen virtual Host anlegen (subdomain.hostname.tld mit dem eigentlichen Domainnamen ersetzen):


    Code
    $ vi /etc/apache2/sites-available/[B][subdomain.hostname.tld][/B].local


    Code
    <Directory "/var/www/1/htdocs/">
      Deny from env=BlockCountry
    </Directory>


    3. Liveconfig / lcclient neustarten.


    4. Virtual Host über das Webinterface neu aufbauen (irgendwas in der Domainkonfiguration ändern => Klick auf "speichern")


    (ungetestet und ohne Gewähr)

    Funktioniert!


    Würde allerdings noch empfehlen den sed Delimiter von "/" auf ein anderes Zeichen abzuändern (zum Beispiel ","), da $conf_include durchaus Slashes enthalten kann und dann die sed expression nicht mehr gültig ist:


    Code
    [...]
    sed -ri -e "/Include $conf_include/d"          \
            -e "s,^(.*ServerName.*$url.*)\$,\1\n    Include $conf_include," $vhost_config_file

    fx998 Super, vielen Dank hierfür! Hab allerdings noch ein paar kleine Probleme:


    1. Kommentare in Lua werden mit einem vorangestellten doppelten Bindestrich gekennzeichnet. Habe also in Zeile 8,11 und 24 "#" durch "--" ersetzt.


    2. Bekomm aktuell beim Ausführen der Funktion (Speichern eines vHosts in LiveConfig) noch folgende Fehlermeldung in den



    Zeile 14. bezieht sich auf:


    Code
    res = apache_orig.configureVHost(cfg,opts)


    Ne Idee was hier schief läuft?

    kk: Könnte man für die custom.lua Variante vielleicht ein Beispiel in der Knowledgebase bereitstellen, wie man für einen gewissen Hostnamen eine Änderung mit in der Webserverkonfiguration mit aufnimmt und nicht durch einen globalen Include löst?


    Die Frage kommt ja hier im Forum relativ häufig auf und ich möchte nicht mit if() Abfragen in der "~/conf/nginx.conf" arbeiten (http://wiki.nginx.org/IfIsEvil). Leider steig ich bei dem LUA-Kram noch nicht ganz durch.