Thread View: pl.comp.lang.perl
6 messages
6 total messages
Started by Mariusz Jasinski
Mon, 21 Apr 1997 19:10
CGI - zapis do pliku
Author: Mariusz Jasinski
Date: Mon, 21 Apr 1997 19:10
Date: Mon, 21 Apr 1997 19:10
30 lines
1608 bytes
1608 bytes
Mam taki skrypt:
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
print "Cos jest\n\n";
open (PlikUser, ">>monitor.txt") || &CgiDie ("Nie moge otworzyc
pliku");
print PlikUser date;
print PlikUser time;
print PlikUser "\n";
print PlikUser "$ENV{'REMOST_HOST'} \@ $ENV{'REMOTE_USER'}\n";
print PlikUser "$ENV{'HTTP_USER_AGENT'}\n\n";
close (PlikUser);
exit (0);
Przy wywolywaniu z systemu plik monitor.txt sie tworzy
w biezacym katalogu. Nigdzie nie moge znalezc pliku,
jesli wywoluje skrypt ze strony www. Skrypt jest w katalogu
na moim koncie. Ale wywolywany jest poprzez linka z katalogu
glownego cgi-bin na serwerze.
--
|''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''|
Mariusz Jasinski mailto:jasinski@ci-1.ci.pwr.wroc.pl
WWW HomePage http://www.ci.pwr.wroc.pl/~jasinski
Droga do Delphi http://www.ci.pwr.wroc.pl/~cieslak/Delphi/
Adres pocztowy ul. Wittiga 4/603, 51-628 Wroclaw
|..............................................................|
Re: CGI - zapis do pliku
Author: Piotr Manturzyk
Date: Mon, 21 Apr 1997 20:06
Date: Mon, 21 Apr 1997 20:06
33 lines
1599 bytes
1599 bytes
Mariusz Jasinski wrote: > > Mam taki skrypt: > > #!/usr/bin/perl [..] > open (PlikUser, ">>monitor.txt"); [..] > close (PlikUser); [..] > > Przy wywolywaniu z systemu plik monitor.txt sie tworzy > w biezacym katalogu. Nigdzie nie moge znalezc pliku, > jesli wywoluje skrypt ze strony www. Skrypt jest w katalogu > na moim koncie. Ale wywolywany jest poprzez linka z katalogu > glownego cgi-bin na serwerze. Jak klikasz na skrypt w przegladarce, to jest on uruchamiany przez demona www, ktory lata najczesciej jako nobody albo www, ale nie jako ty sam. najlepiej wpisz kompletna sciezke w open(...) i ustaw drw-rw-rw- na tan katalog, albo zalatw sobie cgiwrap'a i przekonaj admina, ze jest to bardzo fajny program i nalezy go zainstalowac. posdrawiam gandalf -- __________ ___________ | DC Piotr Manturzyk | | mailto:gandalf@mailserv.fh-merseburg.de | |______ University of Halle, Germany _____|
Re: CGI - zapis do pliku
Author: Adam Glowacki
Date: Tue, 22 Apr 1997 12:36
Date: Tue, 22 Apr 1997 12:36
27 lines
1379 bytes
1379 bytes
Mariusz Jasinski wrote:
>
> Mam taki skrypt:
>
> #!/usr/bin/perl
<->
> open (PlikUser, ">>monitor.txt") || &CgiDie ("Nie moge otworzyc
> pliku");
> print PlikUser date;
<->
> Przy wywolywaniu z systemu plik monitor.txt sie tworzy
> w biezacym katalogu. Nigdzie nie moge znalezc pliku,
> jesli wywoluje skrypt ze strony www. Skrypt jest w katalogu
> na moim koncie. Ale wywolywany jest poprzez linka z katalogu
^^^^^^
> glownego cgi-bin na serwerze.
>
Chodzi o link ze strony WWW, czy link w systemie Unix?
Jesli to pierwsze, to sprawdz, czy Twoj katalog ze skryptem
moze zawierac CGI. Jesli to drugie, no to juz jest kwestia
praw dostepu demona do katalogu z CGI.
pozdrawiam
adam
Re: CGI - zapis do pliku
Author: Michal Kaczmarczyk
Date: Thu, 24 Apr 1997 10:30
Date: Thu, 24 Apr 1997 10:30
54 lines
2784 bytes
2784 bytes
On Mon, 21 Apr 1997, Piotr Manturzyk wrote: > Mariusz Jasinski wrote: > > > > Mam taki skrypt: > > > > #!/usr/bin/perl > [..] > > open (PlikUser, ">>monitor.txt"); > [..] > > close (PlikUser); > [..] > > > > Przy wywolywaniu z systemu plik monitor.txt sie tworzy > > w biezacym katalogu. Nigdzie nie moge znalezc pliku, > > jesli wywoluje skrypt ze strony www. Skrypt jest w katalogu > > na moim koncie. Ale wywolywany jest poprzez linka z katalogu > > glownego cgi-bin na serwerze. > > Jak klikasz na skrypt w przegladarce, to jest on uruchamiany > przez demona www, ktory lata najczesciej jako nobody albo > www, ale nie jako ty sam. najlepiej wpisz kompletna > sciezke w open(...) i ustaw drw-rw-rw- na tan katalog, albo > zalatw sobie cgiwrap'a i przekonaj admina, ze jest to bardzo > fajny program i nalezy go zainstalowac. Na unixie powinny tez chodzic atrybuty `s' dla plikow wykonywalnych. To znaczy: trzeba napisac: chmod +s skrypt.cgi i po uruchomieniu tego skryptu przez demona prawa dostepu powinny byc takie jak wlasciciela. Niestety administrator moze wylaczyc te funkcje mountujac dysk z parametrem -nosuid. Mozna to sprawdzic w /etc/fstab, /etc/vfstab lub cos w tym guscie (zalezy od systemu). Jest to rozwiazanie o tyle dobre ze nie uruchamiajac skryptu nikt moze nie miec praw do tego pliku (w rozwiazaniu z drw-rw-rw- jest mozliwa sytuacja, ze ktos z lokalnego komputera skasuje pliki w katalogu). Jest jeszcze posrednie wyjscie: ustawic atrybut do zapisu dla wszystkich w katalogu, stworzyc plik w skrypcie (koniecznie ze strony www), a potem wylaczyc ten atrybut. W tym momencie nikt nie skasuje plikow w katalogu, ale moze ten plik zmniejszyc do 0 (lub zmienic jego zawartosc), ale moze to tylko zrobic ze swojego skryptu cgi (dzialajac jako uzytkownik www czy nobody, czyli wlasciciel pliku). Pozdrowienia. PS. Co to jest ten cgiwrap? _______________________________________________________________________________ Michal Kaczmarczyk mailto:kaczmar@icslab.agh.edu.pl http://student.uci.agh.edu.pl/~kaczmar
Re: CGI - zapis do pliku
Author: Pawel Wiecek
Date: Thu, 24 Apr 1997 10:57
Date: Thu, 24 Apr 1997 10:57
19 lines
1413 bytes
1413 bytes
Michal Kaczmarczyk (kaczmar@icslab.agh.edu.pl) wrote:
:
: Na unixie powinny tez chodzic atrybuty `s' dla plikow wykonywalnych. To
Albo i nie. Apacz do 1.1.* wlacznie ignoruje suida dla cgi-ow. W Apaczu
1.2 juz rzeczywiscie pomaga.
: PS. Co to jest ten cgiwrap?
Skrypt CGI odpalajacy skrypty userow (z katalogow postaci
~juzer/public_html/cgi-bin) z ich prawami. Bardzo uzyteczny.
Pawel
--
(___) | Pawel Wiecek --------------------------------- |
< o o > | E-mail: coven@pwr.wroc.pl |
\ ^ / | WWW: http://www.ists.pwr.wroc.pl/~coven/ |
(") | * * * To err is human, to moo bovine * * * |
Re: CGI - zapis do pliku
Author: Piotr Manturzyk
Date: Thu, 24 Apr 1997 19:48
Date: Thu, 24 Apr 1997 19:48
40 lines
2227 bytes
2227 bytes
Michal Kaczmarczyk wrote: > > Na unixie powinny tez chodzic atrybuty `s' dla plikow wykonywalnych. To > znaczy: trzeba napisac: > > chmod +s skrypt.cgi > > i po uruchomieniu tego skryptu przez demona prawa dostepu powinny byc > takie jak wlasciciela. Niestety administrator moze wylaczyc te funkcje U mnie to niestety nie dziala (apache 1.1.1) > mountujac dysk z parametrem -nosuid. Mozna to sprawdzic w /etc/fstab, > /etc/vfstab lub cos w tym guscie (zalezy od systemu). Jest to rozwiazanie > o tyle dobre ze nie uruchamiajac skryptu nikt moze nie miec praw do tego > pliku (w rozwiazaniu z drw-rw-rw- jest mozliwa sytuacja, ze ktos z jak ustawisz dodatkowo na swoj ~user/public_html drwx--x--x, to mozesz wlezc do tego katalogu, ale wtedy nawet rm * nie pomoze, bo shell mie znajdzie zadnego pilku. A podkatalogi moga juz byc nawet drwxrwxrwx, nie robi. Tak jest u mnie i dziala (wydaje mi sie, nie wlamywalem sie specjalnie bo nie ma do czego :) ) > > PS. Co to jest ten cgiwrap? program uruchamiajacy Twoje skrypty z Twoim UID (jak wspomnialem, +s nie dziala). Instalujesz cgiwrapa w glownym cgi-bin i wywolujesz /cgi-bin/cgiwrap/~user/skrypt, ktory to skrypt siedzi w /home/najjasniejszy/public_html/cgi-bin/, ale to chyba mozna zmienic przy kompilacji. O. gandalf -- __________ ___________ | DC Piotr Manturzyk | | mailto:gandalf@mailserv.fh-merseburg.de | |______ University of Halle, Germany _____|
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads