Guido Wuttig: Hilfe: copy(datei) auf anderen Webspace ??

Hallo Leute

Suche Loesung fuer mein kleines (grosses) Problem.

Tatbestand:
Bin bei Strato gehostet (ich weiss, selbst dran schuld)
1x Premium-Paket-S (Telnet,FTP,PHP,eigene Scripts), Datentransfer _limited_ und sonst ziemlich voll
4x Power-Web-S (only FTP (kein anonymous),nix Telnet, nix PHP, nix eigene Scripts), Datentransfer _UNLIMITED_ noch 'ne Menge freier Platz

Problem:
Auf dem Premium-Paket laeuft die Homepage, welche bei Bedarf vom Kunden Bilder via PHP-Upload entgegennimmt.
Klappt soweit auch. Nun sollen dies Bilder aber auf die Power-Pakete aufgeteilt werden.

Dazu braeuchte ich einen Zugang zu den Power-Webs um _automatisch_:
  1. den verfuegbaren Speicherplatz zu ermitteln
  2. die Dateien zu kopieren
  3. die Dateien bei Bedarf wieder zu loeschen

Den ftp-Zugang mittels PHP konnte ich nicht hinkriegen, erschien mir aber auch nicht als die eleganteste Loesung.
In Perl bin ich noch nicht soweit, um es haette probieren zu koennen. Wuerde es denn damit gehen?

Bisher bin ich bei der unbefriedigenden Loesung, dass ich die Bilder _manuell_ downloade um sie dann wieder auf die Power-Pakete upzuloaden.

__ Suche nun erstmal einen akzeptabelen Loesungsansatz.(mittels PHP waere ideal standard:-))) ___

E-Mail beim Strato-Service ergab, dass man mir im System keine Unix-User-Gruppe (gemeinsame Grouprechte fuer Dateien...), einrichten kann, die mir das kopieren via Telnet erlaubt haetten.

Die Power-Pakete upzugraden (um so auch in den Genuss von PHP und Telnet zu kommen), wollte ich aber erst als letzte Methode in Betracht ziehen.

Bin fuer jeden Gedankenanstoss dankbar, kurze Erlaeterung waere nicht schlecht.
Oder sagt mir, wo man sonst noch solch dumme Fragen posten kann.

Danke im vorraus, Guido Wuttig at wuttig@wirtschaftsauktion.de

PS: Was heisst eigentlich 'IMHO' ???? (newbie question)

  1. Hallo Guido

    Suche nun erstmal einen akzeptabelen Loesungsansatz.(mittels PHP waere ideal standard:-))) <<

    In PHP kann ich Dir damit leider nicht dienen, aber mit einem Upload Perl, daß ich auch auf meinem Server laufen lasse. Es klappt soweit gar nicht so schlecht.

    PS: Was heisst eigentlich 'IMHO' ???? (newbie question)<<

    IMHO = In My Honest Opinion

    Das Script & Installationsanleitung kommen per mail

    Cu
    Gregor

    1. » Gregor wrote:

      Suche nun erstmal einen akzeptabelen Loesungsansatz.(mittels PHP waere ideal standard:-))) <<

      In PHP kann ich Dir damit leider nicht dienen, aber mit einem Upload Perl, daß ich auch auf meinem Server laufen lasse. Es klappt soweit gar nicht so schlecht.

      PS: Was heisst eigentlich 'IMHO' ???? (newbie question)<<

      IMHO = In My Honest Opinion

      Das Script & Installationsanleitung kommen per mail

      Cu
      Gregor

      Danke erstmal, aber du hast mich nicht ganz verstanden.
      Den Datei-Upload habe ich schon in PHP realisiert.
      Nun _muss_ ich aber diese dateien noch auf anderen Webspace aufteilen.
      Fuer die Zieladressen habe ich aber nur einen FTP-Zugang und in PHP hab ich keinen connect mit ftp hingekriegt (zu bloed angestellt ?).
      Meine Perl-kenntnisse sind beschraenkt, aber ich glaube bei Strato ist auch kein perl-ftp-modul installiert.

      Nun wird sich das zwar bestimmt auch mit purem perl loesen lassen. Oder kann man ohne zugang zur perl-installation nachtraeglich noch module oder packages oder wie auch immer die teile dann heissen moegen einfuegen um auf diese dann zuzugreifen?

      Das doofe ist ja, das der andere webspace (bei strato) eigentlich auf dem selben rechner liegt.
      Aber ich sehe keine moeglichkeit, wie man das problem eleganter loesen koennte.

      Zu IMHO:
      Ich war auf der Suche nach der Bedeutung bisher bei:
      <lol> in my holy opinion </lol> :))))))

      Danke vorerst

      1. Nun wird sich das zwar bestimmt auch mit purem perl loesen lassen. Oder kann man ohne zugang zur perl-installation nachtraeglich noch module oder packages oder wie auch immer die teile dann heissen moegen einfuegen um auf diese dann zuzugreifen?

        Ja, das geht. Du mußt sie bloß irgendwie adressieren können. (Ggf. @INC entsprechend setzen.)

        Das doofe ist ja, das der andere webspace (bei strato) eigentlich auf dem selben rechner liegt.

        Und was liegt da noch alles?

        Wenn nur Deine eigenen Webspaces da liegen würden, kannst Du alles auf "chmod 777" setzen und dann mit copy überall hin schreiben.
        Andere Eigentümer von Webspace auf diesem Server können das dann leider auch ... :-(

        1. Nun wird sich das zwar bestimmt auch mit purem perl loesen lassen. Oder kann man ohne zugang zur perl-installation nachtraeglich noch module oder packages oder wie auch immer die teile dann heissen moegen einfuegen um auf diese dann zuzugreifen?

          Ja, das geht. Du mußt sie bloß irgendwie adressieren können. (Ggf. @INC entsprechend setzen.)

          Bin leider noch Novice, was Perl betrifft.
          Ist fuer mich auch alles noch zu kryptisch. Habe auch keine Zeit mich grosartig in die Materie zu fressen.
          Bisher klappt auch alles super mit PHP.

          Was muss ich den im Falle eines Falles denn nun genau machen, um aus perl raus ftp zu benutzen.
          Bei der suche auf dem Strato-Server mittels
          --- code ---
          foreach $pfad ( @INC ) {
              print "$pfad\n";
          }
          --- end of code ---
          habe ich auch kein ftp-modul finden koennen.

          Das doofe ist ja, das der andere webspace (bei strato) eigentlich auf dem selben rechner liegt.

          Und was liegt da noch alles?

          Wenn nur Deine eigenen Webspaces da liegen würden, kannst Du alles auf "chmod 777" setzen und dann mit copy überall hin schreiben.

          Bin diese Moeglichkeit auch angegangen, nur wollte ich es nicht zu offen gestalten (other=r--). Wollte beim admin eine gruppe (group-berechtigung) beantragen, ist aber abgelehnt worden.

          Andere Eigentümer von Webspace auf diesem Server können das dann leider auch ... :-(

          Tja, so ist halt das Leben. Man haette sich vorher halt besser ueberlegen sollen, was man will und was nicht.

          Trotzdem Danke.

          Bis denno, Tenno Gruss Guido

          1. Bei der suche auf dem Strato-Server mittels
            foreach $pfad ( @INC ) {
                print "$pfad\n"; }
            habe ich auch kein ftp-modul finden koennen.

            Oder jedenfalls keinen, den Du als FTP-Modul erkannt hättest. ;-)

            Nimm Dir eine gute Perl-Modulbeschreibung (mein Tip: ActivePerl für Win32), durchsuche diese komplett nach FTP (z. B. mit einem guten Editor), dann findest Du alles, was FTP kann - es gibt immer mehr als eine Möglichkeit in Perl).

            Danach kannst Du prüfen, ob dieser Modul auf Deinem Server bereits vorhanden ist (kleines Testprogramm, "require", ...). Falls nicht, kannst Du den Modul von CPAN holen, bei Dir installieren und in Deinem Hauptprogramm @INC um Dein Verzeichnis verlängern.

  2. Hallo!

    Ich würde in diesem Fall die Geschichte ein bißchen anders angehen.

    Vom Gedanke her läßt sich die Sache mit Perl lösen!

    Du möchtest ein Script und/oder eine Funktion, die die Bilder, die der Besucher auf Deinen Server1 uploaden auf weitere Server (nennen wir diese einfach A,B,C...)aufteilen.

    Um das umzusetzen, benötigst Du einige Grundkenntnisse in Perl und das Modul LWP. Im einfachsten Fall nur LWP::Simple. Das läßt sich auch lokal installieren, obwohl es eigentlich zur Grundkonfiguration gehören sollte.

    1. Der Besucher lädt ein Bild auf Den Server1.
    2. Dein Steuerscript wird gestartet.
    3. Dieses Script fragt über das Script freemem die in Frage kommenden Server wieviel Platz vorhanden ist (oder was auch immer).
    4. Daraus ergibt sich wahrscheinlich dann, daß A noch genügend Platz hat und sagt, daß er es nehmen wird.
    5. Das Steuerscript gibt nun den Namen der Datei an das Downloadscript von A
    6. A startet den Download
    7. Parallel kann das Steuerscript noch sagen, daß auf B zuwenig Platz ist, und der gefälligst das Bild XY löschen soll.
    8. usw.

    Achja, selbstverständlich muß auf den anderen Servern natürlich auch eine CGI-Unterstützung vorhanden sein.

    Hoffe ein bißchen geholfen zu haben

    Gruß HaPe