Schrift
[thread]5439[/thread]

Module ohne Root-Rechte installieren: mittels CGI-Skript



<< |< 1 2 3 4 >| >> 38 Einträge, 4 Seiten
pq
 2004-12-29 21:50
#48994 #48994
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
also, da die frage öfter auftaucht, habe ich mich mal hingesetzt und was gebastelt.
problemstellung: man hat einen server mit perl und möchte ein cpan-modul
installieren, das vielleicht auch noch einen C-anteil hat.
man hat keinen shell-zugriff, aber man kann über system() make
aufrufen.
mit folgendem skript sollte das gehn: (http://www.tinita.de/projects/perl/modules/cgipan_cgi.txt)
Update: http://sourceforge.net/projects/cgipan/

installation: ins cgi-bin legen und es sollte lauffähig sein. rechte setzen
natürlich!
dann passt man die variablen $self, $make, $tar, $build_dir, $lib
an.
$lib ist das verzeichnis, in das die module installiert werden sollen.
$build_dir ist das verzeichnis, in das die packages reinkommen (also
die Modul-3.14.tar.gz dateien) und entpackt werden. beide
verzeichnisse müssen für den webserver-user schreibbar sein,
falls das nicht so ist oder die verzeichnisse fehlen, zeigt das skript
die passende fehlermeldung.
$tar und $make sind die pfade zu den tools tar und make. die
default-einstellung sollte auf den meisten servern passen.
$self ist die url zum skript.
wenn alles angepasst ist und keine fehlermeldungen erscheinen, legt man
Modul-3.14.tar.gz ins $build_dir und ruft nochmal das skript auf. nun sollte
das tar-file erscheinen, und man kann nun "unpack" aufrufen und
die weiteren schritte machen.

vorsicht: das skript sollte nicht öffentlich zugänglich sein!

es ist bisher nur von mir getestet, deshalb würde ich mich freuen,
wenn es jemand mal bei sich ausprobieren könnte.

leider ist es bisher nur in englisch.

edit: url geändert.\n\n

<!--EDIT|pq|1108831089-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pktm
 2004-12-29 21:57
#48995 #48995
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
$self kann man dem User doch durch FindBin abnehmen, oder ist das kein Standard-Modul?
Anonsten freut es mich zu sehen, dass es sowas (endlich?) gibt.
mfg pktm\n\n

<!--EDIT|Strat|1104355355-->
http://www.intergastro-service.de (mein erstes CMS :) )
esskar
 2004-12-29 21:58
#48996 #48996
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
cool; danke;
werde es demnächst mal testen
pq
 2004-12-29 22:10
#48997 #48997
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
stimmt, $self könnte man auch durch $ENV{SCRIPT_NAME}
ersetzen. hab ich jetzt mal gemacht. danke.
ich versuche hier weitgehend auf module zu verzichten, da auf meinem server
z.B. CPAN.pm fehlt. und das ist normalerweise auch standard.\n\n

<!--EDIT|pq|1104351231-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2005-02-14 15:36
#48998 #48998
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Oh toll :-)
Das werd ich bei Gelegenheit auch mal ausprobieren.

Schließlich hab ich jetzt seit neuestem auch die Möglichkeit, Perl-CGI-Skripte bei meinem Provider laufen zu lassen. Allerdings haben erste Versuch noch nicht funktioniert. (Das Skript des Providers funktioniert, eigene Hallo-Welt-Skripte "funktionieren nicht" ... wenn ich dazu Eure Hilfe will, beschreib ich das woanders genauer, muss mich erstmal selbst bei Gelegenheit genauer damit auseinander setzen.)

Aber wenn es geht werd ich bestimmt gern auf dieses Hilfsmittel zurückkommen.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
renee
 2005-02-14 16:01
#48999 #48999
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
@Crian: Lesenswert: http://wiki.perl-community.de/bin/view/Wissensbasis/FaqCGI ;)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
kabel
 2005-02-14 16:58
#49000 #49000
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
random thoughts:

- es bietet mir an, pl-dateien auszupacken.
- viel spass bei der manuellen verfolgung der abhängigkeiten.
- bei fehlern im testlauf werden die zeilen arg lang.
- fehler/warnungen mit farbe versehen?( s.u. )
- im dist modus prüfen, ob das modul in der version schon vorhanden ist?

sub makefile:
$out =~ s/(Warning.*?\n)/<span style="color:orange;">$1<\/span>/g;

sub make_test
$out =~ s/(Can't locate (.*?) in \@INC)/<span style="color:red;">$1<\/span>/g;
-- stefan
coax
 2005-02-16 23:15
#49001 #49001
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
Hab mir mal das Script angeschaut und ein paar Anregungen dazu:

Die Variablen die anzupassen sind, koennte man doch auch ueber die CGI-Formulare einstellen.
Im ersten Schritt erraet das Script durch ein paar Test wie die Variablen zu setzen sind, schlagen die Tests fehl werden sie auf Standardwerte gesetzt, die dann wiederum ueber die Weboberflaeche veraendert werden koennen.

Code: (dl )
my $root = '/homepages/bla/blubb/cgipan' || $ENV{DOCUMENT_ROOT} || '';

wie waer's mit
Code: (dl )
1
2
3
my $root = '/homepages/bla/blubb/cgipan';

$root = -e $root ? $root : ($ENV{DOCUMENT_ROOT} || '');


Dann waer's auch nicht schlecht, wenn man die fehlenden Verzeichnisse ueber die Weboberflaeche gleich mit anlegen koennte.

Grusz Christian.
,,Das perlt aber heute wieder...'' -- Dittsche
esskar
 2005-02-17 00:25
#49002 #49002
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
wieso schreibst du
Code: (dl )
$self/ut?tar=...

und nicht
Code: (dl )
$self?ut&tar=...
? $self/ kann man webspace nicht!
esskar
 2005-02-17 00:32
#49003 #49003
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
nach dem ich es so angepasst wie ich es brauch, also aus
$self/foo?bar $self?w=foo;bar gemacht hab, funzt es wunderbar!
<< |< 1 2 3 4 >| >> 38 Einträge, 4 Seiten



View all threads created 2004-12-29 21:50.