cgi-bin Erforderlich?

  • Hallo,
    muss dieser Pfad zwingend genuzt werden, oder können Perl Dateien auch in anderen Unterverzeichnissen gestartet bzw. ausgeführt werden? Ich kenne es von Froxlor her das ich den Ausführungspfad selbst bestimmen kann! Sogar in mehreren Unterordner kann man dann Perl Scripte ausführen die auch nicht "cgi-bin" heißen müssen.


    Mfg Thopoh

  • So etwas fällt unter "exotische Sonderfälle". Man kann das einrichten, allerdings nicht über die Oberfläche.


    Legen Sie im Kunden-Home-Verzeichnis eine Datei namens "conf/httpd.conf" an (also z.B. /var/www/<Vertrag>/conf/httpd.conf). Tragen Sie da folgende Zeilen ein


    Code
    <Location "/beliebiger-cgi-ordner">
      SetHandler cgi-script
      Options +ExecCGI
    </Location>


    Danach (!) speichern Sie im LiveConfig irgendeine Webspace-Einstellung dieses Vertrages neu (z.B: irgendeine Domaineinstellung mal kurz bearbeiten), damit die Apache-vHost-Konfiguration aktualisiert wird. Da wird diese httpd.conf dann mit eingebunden.

  • Woran sehe ich denn das die httpd.conf geladen wurde? Es scheint so das dieses nicht der Fall ist!
    Habe es so gemacht und nix tut sich, der will immer noch die Dateien herrunterladen. Im Falle des normalen cgi-bin Verzeichniss funktioniert alles, leider komme ich per http da aber nicht dran da jede Domain ein eigenes Verzeich in htdocs hat


    Ich müsste das cgi-bin oder auch egal welcher name der Ordner hat unterhalb von den Verzeichnissen der Domain haben.
    Also /htdos/Domain1/cgi_bin
    Ach was mach ich nur falsch "seufz"....


    Evtl. sollte ich noch hinzufügen das das ganze auf MultiPHP läuft. Der Kunde kann also wählen was er für eine PHP Version er möchte und in diesem Fall ist es PHP 5.6.3.x mittels FastCGI da sein Script nicht PHP 7.x conform ist und nicht mehr laufen würde


    Mfg Thopoh

  • Wie heißt denn Ihr CGI-Ordner?
    Weil /cgi-bin/ für alle Domains innerhalb des selben Vertrags immer auf /var/www/<Vertrag>/htdocs/cgi-bin/ gemapped wird (ScriptAlias-Anweisung). Um dieses Verhalten abzuschalten, müssten Sie im LiveConfig in den Vertrags-Einstellungen CGI deaktivieren.
    (nicht irritieren lassen; die Einstellung in ~/conf/httpd.conf erlaubt ja CGI dann wieder in den gewünschten Verzeichnissen)


    Ob die httpd.conf eingebunden wird sehen Sie z.B. durch einen Blick in /etc/apache2/sites-enabled/<Vertrag>.conf - da gibt es irgendwo dann eine include-Anweisung (einfach in der Datei mal nach "httpd.conf" suchen)


    Viele Grüße


    -Klaus Keppler

  • Wie heißt denn Ihr CGI-Ordner?
    Weil /cgi-bin/ für alle Domains innerhalb des selben Vertrags immer auf /var/www/<Vertrag>/htdocs/cgi-bin/ gemapped wird (ScriptAlias-Anweisung).


    Genau, diese habe ich auch schon gesehen, ich war mal so frei und habe da in den Apache2 sites-enabled schon mal geschaut für diesen Kunden weil ich mir dachte das es da ja dann reingelinkt werden müsste.



    Um dieses Verhalten abzuschalten, müssten Sie im LiveConfig in den Vertrags-Einstellungen CGI deaktivieren.


    Ahhh, das habe ich allerdings nicht gewusst!


    Ich Teste das so noch mal aus und dann sehen wir mal ob es funktioniert, danke für den Hinweis.


    Mfg Thopoh

  • So etwas fällt unter "exotische Sonderfälle". Man kann das einrichten, allerdings nicht über die Oberfläche.


    Laut SOAPAPI wirkt es nicht wie exotische Sonderfälle sondern wie eine ursprünglich geplante Funktion in Liveconfig. Im Test funktioniert CGI auf 2 erstellen leider nicht außer das es dann in der Datenbank so steht. Auch die GUI unterstützt es genauso wenig. Siehe https://www.liveconfig.com/de/…/soap/HostingPlanAdd.html
    (soapapi cgi, integer, ^[012]$, CGI scripts allowed (0: no, 1: yes, in /cgi-bin/, 2: yes, in any directory))


    Zitat

    Ich Teste das so noch mal aus und dann sehen wir mal ob es funktioniert, danke für den Hinweis.


    Ansonsten als Alternative eine .htaccess Datei mit folgenden Inhalt im Unterzeichnis "Domain1" anlegen:

    Code
    AddHandler cgi-script cgi
    AddHandler cgi-script pl
    Options +ExecCGI


    In diesem Fall muss CGI in Liveconfig aktiviert sein. CGI-BIN kann dabei gleichzeitig genutzt werden.
    Bitte beachten im Hauptverzeichnis "htdocs" geht es nicht sondern nur im Unterverzeichnis (z.B. htdocs/Domain1)

Jetzt mitmachen!

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