Skocz do zawartości

[fc6,apache] Katalog Cgi-bin Dla Każdego Użytkownika


miecio

Rekomendowane odpowiedzi

Witam

W jaki sposób można zmusić apacha do wykonania jako skrypty CGI plików znajdujących sie w katalogu /home/jakis_user/public_www/cgi-bin/ i posiadających atrybut wykonywalności.

Próbowałem dodać do httpd.conf derektywe

<Directory "/home/*/public_www/cgi-bin">
    AllowOverride None
    Options ExecCGI
    Order allow,deny
    Allow from all
</Directory>

jednak nie dało to żadnych rezultatów. Apache nadal zamiast wykonać skrypt przesyłał go jako plik do zapisu. Nie wiem czy to ważne ale do tworzenie aliasów dla poszczególnych użytkowników używam mod_userdir.

 

Prawa katalogów i skryptu:

drwxr-sr-x user_u:object_r:httpd_sys_content_t public_www
drwxr-xr-x user_u:object_r:httpd_sys_script_exec_t cgi-bin
-rwxr-xr-x user_u:object_r:httpd_sys_script_exec_t test.sh

Szukałem na google jednak nic twórczego nie znalazłem.

Proszę o pomoc.

Odnośnik do komentarza
Udostępnij na innych stronach

Niestety nie pomoglo :lammer:

Dodalem w httpd.conf nastepujace wpisy:

AddHandler cgi-script .cgi .pl
...
<Directory "/home/*/public_www/cgi-bin">
    AllowOverride None
    Options ExecCGI
    Order allow,deny
    Allow from all
</Directory>

Teraz apache zamiast wykonania skryptu cgi wyswietla mi niesparsowana strone bledu 500 (na Firefoxie)

Wpis w logu bledów apacha:

[Wed Feb 28 14:50:22 2007] [error] [client 10.0.0.12] suexec policy violation: see suexec log for more details
[Wed Feb 28 14:50:22 2007] [error] [client 10.0.0.12] Premature end of script headers: test.pl

Wpis w logu bledów suexec:

[2007-02-28 14:50:42]: uid: (503/some_user) gid: (504/504) cmd: test.pl
[2007-02-28 14:50:42]: cannot get docroot information (/home/some_user)

Dolaczam zródla skryptu(moze tam jest cos zle):

#!/usr/bin/perl

print "Content-type: text/html\n\n";
print "Hello, Im a CGI script and im gonna print you some eviroment variables to make You belive that im working \n";
print "
";

foreach $key (keys %ENV)
{

       print "$key --> $ENV{$key}

";
}

Prosze o pomoc

 

[Edited] Zmienilem nazwe katalogu publicznego na public_html, skrypty przez chwile dzialaly a potem w logach zaczelo pojawiac sie

[2007-02-28 15:38:16]: target uid/gid (503/504) mismatch with directory (503/504) or program (0/0)
[2007-02-28 15:45:02]: uid: (503/user) gid: (504/504) cmd: test.pl

[Edited2] Nareszcie dziala.. Pytanie na ile. Blad tkwil w moim niedopatrzeniu ustawilem zlego wlasciciela pliku.

 

BTW Ciekawe ile jeszcze edycji tego posta zrobie ;)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...