Python-Skripte & Module

  • Hallo zusammen,


    ich bin Benutzer eines Expert-S Accounts, bei dem Python aktiviert ist. Allerdings habe ich es bisher nicht geschafft, Python-Skripte zum Laufen zu bekommen und auch keine Doku gefunden, die zeigt wie einfachste *.py-Skripte verwendet werden.

    Ich gehe mal von einem extrem einfachen Skript aus (hello.py):

    print "Servus Welt"


    oder alternativ (hello.txt):

    Hallo


    Das habe ich z.B. im cgi-bin Verzeichnis abgelegt: nada: 500 Internal Server Error.


    Gibt es bei NetCup Unterlagen, was gemacht werden muss um Python-Skripte auf dem Webhosting-Server laufen zu lassen und das Ergebnis auszugeben?


    Als Hintergrund: Python ist deswegen meine Wahl, da sich damit Visualisierung von Daten am einfachsten erzeugen lassen.


    Danke schon mal im Voraus!


    Moadl

  • Hallo zusammen,

    ich bin Benutzer eines Expert-S Accounts, bei dem Python aktiviert ist. Allerdings habe ich es bisher nicht geschafft, Python-Skripte zum Laufen zu bekommen und auch keine Doku gefunden, die zeigt wie einfachste *.py-Skripte verwendet werden. [...]

    Wenn es sich um dieses Angebot handelt (der 2016er "Ursprungstarif" ist, was den Funktionsumfang anbelangt, meines Wissens nicht mehr einsehbar; ich vermute jedoch, dass er über keine Funktionen verfügte, welche beim Wechselangebot wegfielen), liegt das sicherlich an dem Umstand, dass Python hier nicht verfügbar ist:

    Zitat
    Zusätzliche Leistungen / Scriptsprachen
    [...] [...]
    PHP: Ja
    Perl: Nein, ab Webhosting 4000
    Python: Nein, ab Webhosting 4000
    NodeJS: Nein, ab Webhosting 4000
    Ruby on Rails: Nein, ab Webhosting 4000

    EDIT: Sehe gerade, dass laut OP Python doch verfügbar sein soll… dann kann ggf. der Support weiterhelfen.

    VServer IOPS Comparison Sheet: https://docs.google.com/spreadsheets/d/1w38zM0Bwbd4VdDCQoi1buo2I-zpwg8e0wVzFGSPh3iE/edit?usp=sharing

  • Hallo zusammen,


    danke für die Hinweise, die haben deutlich weitergeholfen und es funktionieren Python Test-Skripte!


    Als Zusammenfassung und für evtl. spätere Leser, die über eine ähnliche Hürde stolpern meine gefundene Information:

    • - im Webhostingcontrolpanel (WCP) ist Python aktiviert.
    • Die Skripte sind in dem Verzeichnis abgelegt, das im WCP unter dem Reiter Website und dort unter Hosting-Einstellungen angeben sind. Bei mir unter "Basisverzeichnis dieser Domain"
    • Die Rechte an der Skript-Datei sind gestellt auf 755
    • Es ist ein Header im Skript notwendig:
      Zeile 1: #!/usr/bin/env python
      Zeile 2:# -*- coding: UTF-8 -*-
      Zeile 3:print "Content-Type: text/plain;charset=utf-8"
      Zeile 4:print ""

      Zeile 1: Info, welche Art von Interpreter verwendet werden soll, hier z.B. Python. Auch möglich z.B. Perl
      Zeile 2 & 3: Welche Art von Text-Codierung
      Zeile4: Ende des Headers. Ohne diese Leerzeile zeigt das Log-File: malformed header from script. Bad header=Hello World!: python_test.cgi
    • Endung *.py kann verwendet werden
    • Error-Log liegt unter dem Reiter "Dateien" und dann im Verzeichnis "logs/<domainname>/error_log." Evtl. interessant zum Herunterladen ansonsten mit vi bzw more per ssh lesen.
    • Python-Fehler werden auch im selben Error-Log angegeben. Falls Fehler im Python-Skript vorhanden sind wird alles was vor dem Fehler kommt ausgeführt und ab dem Fehler nicht mehr. Das ist normales Verhalten, kann aber zu nur "halb ausgegebenen" Seiten führen.

    Schönen Gruß


    Moadl

  • Vielen Dank!


    Hat jemand vielleicht ein Working Example für einen File Upload? Bei mir gibt der Befehl cgi.FieldStorage() immer ein FieldStorage(None, None, []) zurück, egal was ich an Dateien so hinschicke...

    Matthias Lohr Project Blog: https://mlohr.com/

    PGP: 0x8FC3060F80C31A0A