* [mdk-re] offtopic: troubles with python programming
@ 2001-04-08 22:12 Pavel Marakhovsky
2001-04-08 23:46 ` Ivan Zakharyaschev
2001-04-09 11:14 ` cornet
0 siblings, 2 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-08 22:12 UTC (permalink / raw)
To: Linux Russian Mailing List
Привет!
Сразу сорри за оффтопик, но спросить не у кого...
Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
скриптов:
#hins.py
#!/usr/bin/python
from BaseHTTPServer import HTTPServer
from CGIHTTPServer import CGIHTTPRequestHandler
import os
os.chdir("/home/unatine/hins/html")
serv=HTTPServer(('',80),CGIHTTPRequestHandler)
serv.serve_forever()
в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
unatine@localhost ~/hins $ ls -l ./*/*
-rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
./html/cgi-bin:
итого 4
-rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
index.html грузится, скрипт даже пытается выполниться, но говорит:
localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
Traceback (most recent call last):
File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
os.execve(scriptfile, args, env)
OSError: [Errno 13] Permission denied
Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
Сейчас у сервера права:
-rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
Людии.... помогите.... а то я уже совсем запутался...
И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
нет.
--
WBW, Pavel
e-mail: unatine@narod.ru
"Books can be replaced; a prize student cannot. Be patient."
---Urza, to Barrin
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-08 22:12 [mdk-re] offtopic: troubles with python programming Pavel Marakhovsky
@ 2001-04-08 23:46 ` Ivan Zakharyaschev
2001-04-09 6:20 ` Pavel Marakhovsky
2001-04-09 11:14 ` cornet
1 sibling, 1 reply; 22+ messages in thread
From: Ivan Zakharyaschev @ 2001-04-08 23:46 UTC (permalink / raw)
To: Linux Russian Mailing List
Hello, Pavel!
On Sun, 8 Apr 2001, Pavel Marakhovsky wrote:
> Из книжки "Язык прграммирования Питон" списан пример веб сервера с
> возможность выполнения cgi
> скриптов:
>
Эта строчка тоже была "списана" и попала в файл со скриптом:
> #hins.py
или просто неудачное обозначение? (Ее не должно быть точно.)
> #!/usr/bin/python
> from BaseHTTPServer import HTTPServer
> from CGIHTTPServer import CGIHTTPRequestHandler
> import os
>
> os.chdir("/home/unatine/hins/html")
> serv=HTTPServer(('',80),CGIHTTPRequestHandler)
>
> serv.serve_forever()
>
> в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в
> котором лежит скрипт:
>
> unatine@localhost ~/hins $ ls -l ./*/*
> -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> ./html/index.html
>
> ./html/cgi-bin:
> итого 4
> -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
>
> Ну то что сервер должен запускаться от рута это в принципе понятно
> (иначе ошибка создания сокета)
> index.html грузится, скрипт даже пытается выполниться, но говорит:
>
> localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py
> HTTP/1.0" 200 -
> Traceback (most recent call last):
> File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> os.execve(scriptfile, args, env)
> OSError: [Errno 13] Permission denied
>
> Какие права должны быть у скрипта и сервера, что бы нормально все
> выполнилось?
>
> Сейчас у сервера права:
> -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
>
> Людии.... помогите.... а то я уже совсем запутался...
> И еще... в книге написано что скрипты запускаются от nobody, но в
> python-docs по этому поводу ничего
> нет.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-08 23:46 ` Ivan Zakharyaschev
@ 2001-04-09 6:20 ` Pavel Marakhovsky
0 siblings, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-09 6:20 UTC (permalink / raw)
To: mandrake-russian
On Sun, 8 Apr 2001 23:47:03 +0400 (MSD)
Ivan Zakharyaschev <imz@linux.ru.net> wrote:
> > Из книжки "Язык прграммирования Питон" списан пример веб сервера с
> > возможность выполнения cgi
> > скриптов:
> >
>
> Эта строчка тоже была "списана" и попала в файл со скриптом:
>
> > #hins.py
>
> или просто неудачное обозначение? (Ее не должно быть точно.)
Это просто комментарий-имя файла:)))
--
WBW, Pavel
e-mail: unatine@narod.ru
"No one catch what won't be cautch."
---Kakra, sea troll
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-08 22:12 [mdk-re] offtopic: troubles with python programming Pavel Marakhovsky
2001-04-08 23:46 ` Ivan Zakharyaschev
@ 2001-04-09 11:14 ` cornet
2001-04-09 16:50 ` Alexander Bokovoy
2001-04-09 19:36 ` Pavel Marakhovsky
1 sibling, 2 replies; 22+ messages in thread
From: cornet @ 2001-04-09 11:14 UTC (permalink / raw)
To: mandrake-russian
Pavel Marakhovsky wrote:
>
> Привет!
>
> Сразу сорри за оффтопик, но спросить не у кого...
>
> Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> скриптов:
>
> #hins.py
> #!/usr/bin/python
> from BaseHTTPServer import HTTPServer
> from CGIHTTPServer import CGIHTTPRequestHandler
> import os
>
> os.chdir("/home/unatine/hins/html")
> serv=HTTPServer(('',80),CGIHTTPRequestHandler)
>
> serv.serve_forever()
>
> в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
>
> unatine@localhost ~/hins $ ls -l ./*/*
> -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
>
> ./html/cgi-bin:
> итого 4
> -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
>
> Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> index.html грузится, скрипт даже пытается выполниться, но говорит:
>
> localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> Traceback (most recent call last):
> File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> os.execve(scriptfile, args, env)
> OSError: [Errno 13] Permission denied
>
> Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
>
> Сейчас у сервера права:
> -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
>
> Людии.... помогите.... а то я уже совсем запутался...
> И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> нет.
Приветствую!
В целях безопасности Апач работает с правами nobody, и соответственно
CGI с указанными Вами правами выполнять не имеет права :-), если только
nobody не является еще и членом группы unatine.
Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
права -rwxr-xr--
оунер "любое_удобное_Вам_имя"
группа nobody
тогда Апач сможет его выполнить, но не сможет его редактировать, а права
на запись будут только у владельца, то есть у Вас :-))
Кстати, если CGI и вообще запускаемый файл не является скомпиленной
прогой, а есть скрипт, то очень желательно в заголовке указать имя
интерпретатора, тогда Апач будет знать что ему запустить для обработки
данного скрипта CGI.
Например, если это шелл скрипт, то бычно пишут в первой строке:
#!/ban/bash
или
#!/bin/sh
или имя любого другого нужного интепретатора.
Если это скрипт на перл, то пишут:
#!/usr/bin/perl
и таким образом сообщают Апачу, где искать обработчик, то есть сам perl.
Аналогично надо действовать и с Питоном.
Удачи :-))
> --
> WBW, Pavel
> e-mail: unatine@narod.ru
>
> "Books can be replaced; a prize student cannot. Be patient."
> ---Urza, to Barrin
>
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 11:14 ` cornet
@ 2001-04-09 16:50 ` Alexander Bokovoy
2001-04-09 19:36 ` Pavel Marakhovsky
1 sibling, 0 replies; 22+ messages in thread
From: Alexander Bokovoy @ 2001-04-09 16:50 UTC (permalink / raw)
To: mandrake-russian
On Mon, Apr 09, 2001 at 11:14:24AM +0400, cornet wrote:
> Pavel Marakhovsky wrote:
> >
> > Привет!
> >
> > Сразу сорри за оффтопик, но спросить не у кого...
> >
> > Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> > скриптов:
> >
> > #hins.py
> > #!/usr/bin/python
> > from BaseHTTPServer import HTTPServer
> > from CGIHTTPServer import CGIHTTPRequestHandler
> > import os
> >
> > os.chdir("/home/unatine/hins/html")
> > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> >
> > serv.serve_forever()
> >
> > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
> >
> > unatine@localhost ~/hins $ ls -l ./*/*
> > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
> >
> > ./html/cgi-bin:
> > итого 4
> > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> >
> > Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> > index.html грузится, скрипт даже пытается выполниться, но говорит:
> >
> > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> > Traceback (most recent call last):
> > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > os.execve(scriptfile, args, env)
> > OSError: [Errno 13] Permission denied
> >
> > Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
> >
> > Сейчас у сервера права:
> > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> >
> > Людии.... помогите.... а то я уже совсем запутался...
> > И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> > нет.
>
> Приветствую!
> В целях безопасности Апач работает с правами nobody, и соответственно
> CGI с указанными Вами правами выполнять не имеет права :-), если только
> nobody не является еще и членом группы unatine.
Точнее, группа apache. У нас Apache работает под пользователем apache из группы apache.
> Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> права -rwxr-xr--
> оунер "любое_удобное_Вам_имя"
> группа nobody
apache
--
Sincerely yours, Alexander Bokovoy
The Midgard Project | ALT Linux Team | Minsk Linux Users Group
www.midgard-project.org | www.altlinux.ru | www.minsk-lug.net
-- Try to be the best of whatever you are, even if what you are is no good.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 11:14 ` cornet
2001-04-09 16:50 ` Alexander Bokovoy
@ 2001-04-09 19:36 ` Pavel Marakhovsky
2001-04-09 22:24 ` Ivan Zakharyaschev
` (2 more replies)
1 sibling, 3 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-09 19:36 UTC (permalink / raw)
To: mandrake-russian
On Mon, 09 Apr 2001 11:14:24 +0400
cornet <cornet@zmail.ru> wrote:
> Pavel Marakhovsky wrote:
> >
> > Привет!
> >
> > Сразу сорри за оффтопик, но спросить не у кого...
> >
> > Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> > скриптов:
> >
> > #hins.py
> > #!/usr/bin/python
> > from BaseHTTPServer import HTTPServer
> > from CGIHTTPServer import CGIHTTPRequestHandler
> > import os
> >
> > os.chdir("/home/unatine/hins/html")
> > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> >
> > serv.serve_forever()
> >
> > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
> >
> > unatine@localhost ~/hins $ ls -l ./*/*
> > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
> >
> > ./html/cgi-bin:
> > итого 4
> > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> >
> > Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> > index.html грузится, скрипт даже пытается выполниться, но говорит:
> >
> > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> > Traceback (most recent call last):
> > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > os.execve(scriptfile, args, env)
> > OSError: [Errno 13] Permission denied
> >
> > Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
> >
> > Сейчас у сервера права:
> > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> >
> > Людии.... помогите.... а то я уже совсем запутался...
> > И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> > нет.
>
> Приветствую!
> В целях безопасности Апач работает с правами nobody, и соответственно
> CGI с указанными Вами правами выполнять не имеет права :-), если только
> nobody не является еще и членом группы unatine.
> Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> права -rwxr-xr--
> оунер "любое_удобное_Вам_имя"
> группа nobody
> тогда Апач сможет его выполнить, но не сможет его редактировать, а права
> на запись будут только у владельца, то есть у Вас :-))
>
> Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> прогой, а есть скрипт, то очень желательно в заголовке указать имя
> интерпретатора, тогда Апач будет знать что ему запустить для обработки
> данного скрипта CGI.
> Например, если это шелл скрипт, то бычно пишут в первой строке:
> #!/ban/bash
> или
> #!/bin/sh
> или имя любого другого нужного интепретатора.
> Если это скрипт на перл, то пишут:
> #!/usr/bin/perl
> и таким образом сообщают Апачу, где искать обработчик, то есть сам perl.
> Аналогично надо действовать и с Питоном.
>
> Удачи :-))
ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность запуска cgi-скриптов.
#hins.py - это я на всякий случай написал имя файла, в файле его нет:) Этот сервак скрипт находит,
но не может запустить выдавая выше приведенное...
Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
пытаюсь что-нибудь маленькое для себя написать.
--
WBW, Pavel
e-mail: unatine@narod.ru
Rath force plants from its surface as one presses whey from cheese.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 19:36 ` Pavel Marakhovsky
@ 2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-19 18:01 ` Pavel Marakhovsky
2001-04-10 9:40 ` cornet
2001-04-16 8:37 ` Mikhail Zabaluev
2 siblings, 2 replies; 22+ messages in thread
From: Ivan Zakharyaschev @ 2001-04-09 22:24 UTC (permalink / raw)
To: mandrake-russian
Hello, Pavel!
On Mon, 9 Apr 2001, Pavel Marakhovsky wrote:
> > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с
> возможность выполнения cgi
> > > скриптов:
> > >
> > > #hins.py
> > > #!/usr/bin/python
> > > from BaseHTTPServer import HTTPServer
> > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > import os
> > >
> > > os.chdir("/home/unatine/hins/html")
> > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > >
> > > serv.serve_forever()
> > >
> > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в
> котором лежит скрипт:
> > >
> > > unatine@localhost ~/hins $ ls -l ./*/*
> > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> ./html/index.html
> > >
> > > ./html/cgi-bin:
> > > итого 4
> > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > >
> > > Ну то что сервер должен запускаться от рута это в принципе понятно
> (иначе ошибка создания сокета)
> > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > >
> > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py
> HTTP/1.0" 200 -
> > > Traceback (most recent call last):
> > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > os.execve(scriptfile, args, env)
> > > OSError: [Errno 13] Permission denied
> > >
> > > Какие права должны быть у скрипта и сервера, что бы нормально все
> выполнилось?
На совет (где-то ниже) по поводу вставки #!/usr/bin/python <ключи> в
начало dict_cgi.py стоит обратить внимание. В качестве параметра для
execve, судя по всему, подается этот скрипт. А в начале скриптов такая
строчка необходима -- man 2 execve. Вызов execve, про который я говорю,
как раз находится в File "/usr/lib/python2.0/CGIHTTPServer.py", line 211.
Best regards,
Ivan.
> > >
> > > Сейчас у сервера права:
> > > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> > >
> > > Людии.... помогите.... а то я уже совсем запутался...
> > > И еще... в книге написано что скрипты запускаются от nobody, но в
> python-docs по этому поводу ничего
> > > нет.
> >
> > Приветствую!
> > В целях безопасности Апач работает с правами nobody, и соответственно
> > CGI с указанными Вами правами выполнять не имеет права :-), если
> только
> > nobody не является еще и членом группы unatine.
> > Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> > права -rwxr-xr--
> > оунер "любое_удобное_Вам_имя"
> > группа nobody
> > тогда Апач сможет его выполнить, но не сможет его редактировать, а
> права
> > на запись будут только у владельца, то есть у Вас :-))
> >
> > Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> > прогой, а есть скрипт, то очень желательно в заголовке указать имя
> > интерпретатора, тогда Апач будет знать что ему запустить для
> обработки
> > данного скрипта CGI.
> > Например, если это шелл скрипт, то бычно пишут в первой строке:
> > #!/ban/bash
> > или
> > #!/bin/sh
> > или имя любого другого нужного интепретатора.
> > Если это скрипт на перл, то пишут:
> > #!/usr/bin/perl
> > и таким образом сообщают Апачу, где искать обработчик, то есть сам
> perl.
> > Аналогично надо действовать и с Питоном.
> >
> > Удачи :-))
>
> ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность
> запуска cgi-скриптов.
> #hins.py - это я на всякий случай написал имя файла, в файле его нет:)
> Этот сервак скрипт находит,
> но не может запустить выдавая выше приведенное...
>
> Апач то все нормально запускает, но мне такой бегемот в моей маленькой
> квартирке не нужен, вот я и
> пытаюсь что-нибудь маленькое для себя написать.
>
>
--
Hi! I'm a .signature virus. Add me into your ~/.signature,
please. :-)
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 22:24 ` Ivan Zakharyaschev
@ 2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-19 18:01 ` Pavel Marakhovsky
1 sibling, 0 replies; 22+ messages in thread
From: Ivan Zakharyaschev @ 2001-04-09 22:24 UTC (permalink / raw)
To: mandrake-russian
Hello, Pavel!
On Mon, 9 Apr 2001, Pavel Marakhovsky wrote:
> > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с
> возможность выполнения cgi
> > > скриптов:
> > >
> > > #hins.py
> > > #!/usr/bin/python
> > > from BaseHTTPServer import HTTPServer
> > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > import os
> > >
> > > os.chdir("/home/unatine/hins/html")
> > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > >
> > > serv.serve_forever()
> > >
> > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в
> котором лежит скрипт:
> > >
> > > unatine@localhost ~/hins $ ls -l ./*/*
> > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> ./html/index.html
> > >
> > > ./html/cgi-bin:
> > > итого 4
> > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > >
> > > Ну то что сервер должен запускаться от рута это в принципе понятно
> (иначе ошибка создания сокета)
> > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > >
> > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py
> HTTP/1.0" 200 -
> > > Traceback (most recent call last):
> > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > os.execve(scriptfile, args, env)
> > > OSError: [Errno 13] Permission denied
> > >
> > > Какие права должны быть у скрипта и сервера, что бы нормально все
> выполнилось?
На совет (где-то ниже) по поводу вставки #!/usr/bin/python <ключи> в
начало dict_cgi.py стоит обратить внимание. В качестве параметра для
execve, судя по всему, подается этот скрипт. А в начале скриптов такая
строчка необходима -- man 2 execve. Вызов execve, про который я говорю,
как раз находится в File "/usr/lib/python2.0/CGIHTTPServer.py", line 211.
Best regards,
Ivan.
> > >
> > > Сейчас у сервера права:
> > > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> > >
> > > Людии.... помогите.... а то я уже совсем запутался...
> > > И еще... в книге написано что скрипты запускаются от nobody, но в
> python-docs по этому поводу ничего
> > > нет.
> >
> > Приветствую!
> > В целях безопасности Апач работает с правами nobody, и соответственно
> > CGI с указанными Вами правами выполнять не имеет права :-), если
> только
> > nobody не является еще и членом группы unatine.
> > Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> > права -rwxr-xr--
> > оунер "любое_удобное_Вам_имя"
> > группа nobody
> > тогда Апач сможет его выполнить, но не сможет его редактировать, а
> права
> > на запись будут только у владельца, то есть у Вас :-))
> >
> > Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> > прогой, а есть скрипт, то очень желательно в заголовке указать имя
> > интерпретатора, тогда Апач будет знать что ему запустить для
> обработки
> > данного скрипта CGI.
> > Например, если это шелл скрипт, то бычно пишут в первой строке:
> > #!/ban/bash
> > или
> > #!/bin/sh
> > или имя любого другого нужного интепретатора.
> > Если это скрипт на перл, то пишут:
> > #!/usr/bin/perl
> > и таким образом сообщают Апачу, где искать обработчик, то есть сам
> perl.
> > Аналогично надо действовать и с Питоном.
> >
> > Удачи :-))
>
> ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность
> запуска cgi-скриптов.
> #hins.py - это я на всякий случай написал имя файла, в файле его нет:)
> Этот сервак скрипт находит,
> но не может запустить выдавая выше приведенное...
>
> Апач то все нормально запускает, но мне такой бегемот в моей маленькой
> квартирке не нужен, вот я и
> пытаюсь что-нибудь маленькое для себя написать.
>
>
--
Hi! I'm a .signature virus. Add me into your ~/.signature,
please. :-)
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 19:36 ` Pavel Marakhovsky
2001-04-09 22:24 ` Ivan Zakharyaschev
@ 2001-04-10 9:40 ` cornet
2001-04-10 19:05 ` Pavel Marakhovsky
2001-04-10 19:06 ` Pavel Marakhovsky
2001-04-16 8:37 ` Mikhail Zabaluev
2 siblings, 2 replies; 22+ messages in thread
From: cornet @ 2001-04-10 9:40 UTC (permalink / raw)
To: mandrake-russian
Pavel Marakhovsky wrote:
>
> On Mon, 09 Apr 2001 11:14:24 +0400
> cornet <cornet@zmail.ru> wrote:
>
> > Pavel Marakhovsky wrote:
> > >
> > > Привет!
> > >
> > > Сразу сорри за оффтопик, но спросить не у кого...
> > >
> > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> > > скриптов:
> > >
> > > #hins.py
> > > #!/usr/bin/python
> > > from BaseHTTPServer import HTTPServer
> > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > import os
> > >
> > > os.chdir("/home/unatine/hins/html")
> > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > >
> > > serv.serve_forever()
> > >
> > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
> > >
> > > unatine@localhost ~/hins $ ls -l ./*/*
> > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
> > >
> > > ./html/cgi-bin:
> > > итого 4
> > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > >
> > > Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > >
> > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> > > Traceback (most recent call last):
> > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > os.execve(scriptfile, args, env)
> > > OSError: [Errno 13] Permission denied
> > >
> > > Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
> > >
> > > Сейчас у сервера права:
> > > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> > >
> > > Людии.... помогите.... а то я уже совсем запутался...
> > > И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> > > нет.
> >
> > Приветствую!
> > В целях безопасности Апач работает с правами nobody, и соответственно
> > CGI с указанными Вами правами выполнять не имеет права :-), если только
> > nobody не является еще и членом группы unatine.
> > Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> > права -rwxr-xr--
> > оунер "любое_удобное_Вам_имя"
> > группа nobody
> > тогда Апач сможет его выполнить, но не сможет его редактировать, а права
> > на запись будут только у владельца, то есть у Вас :-))
> >
> > Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> > прогой, а есть скрипт, то очень желательно в заголовке указать имя
> > интерпретатора, тогда Апач будет знать что ему запустить для обработки
> > данного скрипта CGI.
> > Например, если это шелл скрипт, то бычно пишут в первой строке:
> > #!/ban/bash
> > или
> > #!/bin/sh
> > или имя любого другого нужного интепретатора.
> > Если это скрипт на перл, то пишут:
> > #!/usr/bin/perl
> > и таким образом сообщают Апачу, где искать обработчик, то есть сам perl.
> > Аналогично надо действовать и с Питоном.
> >
> > Удачи :-))
>
> ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность запуска cgi-скриптов.
> #hins.py - это я на всякий случай написал имя файла, в файле его нет:) Этот сервак скрипт находит,
> но не может запустить выдавая выше приведенное...
>
> Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
> пытаюсь что-нибудь маленькое для себя написать.
Ну, тык дык! Правам доступа побарабану кто перед ними, бегемот или
блоха, они все равно работают. Имхо, ежели хочется написать что то свое
легенькое - пожалуйста, то я не вижу причин почему бы не позаимствовать
механику работы с правами от Апача, ИМХО, там все логично. В конце
концов не суть важно от какого юзера работает все это (от nobody/nobody
или apache/apache) лишь бы не от root'а :-)). Так что если сервер
работает от юзера vasya из группы vasya, то и скриптик должен быть
выполняем для этого самого vasya, а иначе ничего не выйдет, хоть тресни
:-)
Так что пожалуйста, повнимательнее следите за правами доступа, половина
траблов происходят именно из за невнимательного обращения с пермишенами,
в том числе и у меня самого. Так что ежели у меня чего не пашет - парвым
делом смотю на права доступа, часто помогает :-)
Кстати, на счет "бегемотности" Апача, ИМХО, это Вы зря! Он очень
компактен, особенно если нагрузка на него маленькая, так что можно
сократить число резидентных копий в памяти и таким образом сократить его
аппетиты к памяти почти до нуля, помнится при 32Мб он мне да же в Квак2
играть нисколько не мешал :-))
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 9:40 ` cornet
@ 2001-04-10 19:05 ` Pavel Marakhovsky
2001-04-10 19:54 ` Ivan Zakharyaschev
2001-04-10 19:06 ` Pavel Marakhovsky
1 sibling, 1 reply; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-10 19:05 UTC (permalink / raw)
To: mandrake-russian
On Tue, 10 Apr 2001 09:40:39 +0400
cornet <cornet@zmail.ru> wrote:
> > > > Сразу сорри за оффтопик, но спросить не у кого...
> > > >
> > > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> > > > скриптов:
> > > >
> > > > #hins.py
> > > > #!/usr/bin/python
> > > > from BaseHTTPServer import HTTPServer
> > > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > > import os
> > > >
> > > > os.chdir("/home/unatine/hins/html")
> > > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > > >
> > > > serv.serve_forever()
> > > >
> > > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
> > > >
> > > > unatine@localhost ~/hins $ ls -l ./*/*
> > > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
> > > >
> > > > ./html/cgi-bin:
> > > > итого 4
> > > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > > >
> > > > Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> > > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > > >
> > > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> > > > Traceback (most recent call last):
> > > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > > os.execve(scriptfile, args, env)
> > > > OSError: [Errno 13] Permission denied
> > > >
> > > > Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
> > > >
> > > > Сейчас у сервера права:
> > > > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> > > >
> > > > Людии.... помогите.... а то я уже совсем запутался...
> > > > И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> > > > нет.
> > >
> > > Приветствую!
> > > В целях безопасности Апач работает с правами nobody, и соответственно
> > > CGI с указанными Вами правами выполнять не имеет права :-), если только
> > > nobody не является еще и членом группы unatine.
> > > Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> > > права -rwxr-xr--
> > > оунер "любое_удобное_Вам_имя"
> > > группа nobody
> > > тогда Апач сможет его выполнить, но не сможет его редактировать, а права
> > > на запись будут только у владельца, то есть у Вас :-))
> > >
> > > Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> > > прогой, а есть скрипт, то очень желательно в заголовке указать имя
> > > интерпретатора, тогда Апач будет знать что ему запустить для обработки
> > > данного скрипта CGI.
> > > Например, если это шелл скрипт, то бычно пишут в первой строке:
> > > #!/ban/bash
> > > или
> > > #!/bin/sh
> > > или имя любого другого нужного интепретатора.
> > > Если это скрипт на перл, то пишут:
> > > #!/usr/bin/perl
> > > и таким образом сообщают Апачу, где искать обработчик, то есть сам perl.
> > > Аналогично надо действовать и с Питоном.
> > >
> > > Удачи :-))
> >
> > ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность запуска cgi-скриптов.
> > #hins.py - это я на всякий случай написал имя файла, в файле его нет:) Этот сервак скрипт находит,
> > но не может запустить выдавая выше приведенное...
> >
> > Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
> > пытаюсь что-нибудь маленькое для себя написать.
>
> Ну, тык дык! Правам доступа побарабану кто перед ними, бегемот или
> блоха, они все равно работают. Имхо, ежели хочется написать что то свое
> легенькое - пожалуйста, то я не вижу причин почему бы не позаимствовать
> механику работы с правами от Апача, ИМХО, там все логично. В конце
> концов не суть важно от какого юзера работает все это (от nobody/nobody
> или apache/apache) лишь бы не от root'а :-)). Так что если сервер
> работает от юзера vasya из группы vasya, то и скриптик должен быть
> выполняем для этого самого vasya, а иначе ничего не выйдет, хоть тресни
> :-)
> Так что пожалуйста, повнимательнее следите за правами доступа, половина
> траблов происходят именно из за невнимательного обращения с пермишенами,
> в том числе и у меня самого. Так что ежели у меня чего не пашет - парвым
> делом смотю на права доступа, часто помогает :-)
Интересно, а ошибки в CGIHTTPServer.py быть не может?
> Кстати, на счет "бегемотности" Апача, ИМХО, это Вы зря! Он очень
> компактен, особенно если нагрузка на него маленькая, так что можно
> сократить число резидентных копий в памяти и таким образом сократить его
> аппетиты к памяти почти до нуля, помнится при 32Мб он мне да же в Квак2
> играть нисколько не мешал :-))
--
WBW, Pavel
e-mail: unatine@narod.ru
"Vodalian rank is displayed by the colors and patterns of their skin.
Beware the color red; that is the badge of the empress's favor."
---Corbio, pearl diver
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 9:40 ` cornet
2001-04-10 19:05 ` Pavel Marakhovsky
@ 2001-04-10 19:06 ` Pavel Marakhovsky
2001-04-10 19:42 ` Sergey Vlasov
1 sibling, 1 reply; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-10 19:06 UTC (permalink / raw)
To: mandrake-russian
On Tue, 10 Apr 2001 09:40:39 +0400
cornet <cornet@zmail.ru> wrote:
> > > > Сразу сорри за оффтопик, но спросить не у кого...
> > > >
> > > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с возможность выполнения cgi
> > > > скриптов:
> > > >
> > > > #hins.py
> > > > #!/usr/bin/python
> > > > from BaseHTTPServer import HTTPServer
> > > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > > import os
> > > >
> > > > os.chdir("/home/unatine/hins/html")
> > > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > > >
> > > > serv.serve_forever()
> > > >
> > > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в котором лежит скрипт:
> > > >
> > > > unatine@localhost ~/hins $ ls -l ./*/*
> > > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44 ./html/index.html
> > > >
> > > > ./html/cgi-bin:
> > > > итого 4
> > > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > > >
> > > > Ну то что сервер должен запускаться от рута это в принципе понятно (иначе ошибка создания сокета)
> > > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > > >
> > > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py HTTP/1.0" 200 -
> > > > Traceback (most recent call last):
> > > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > > os.execve(scriptfile, args, env)
> > > > OSError: [Errno 13] Permission denied
> > > >
> > > > Какие права должны быть у скрипта и сервера, что бы нормально все выполнилось?
> > > >
> > > > Сейчас у сервера права:
> > > > -rwxr-xr-x 1 unatine unatine 220 Апр 8 16:41 hins.py
> > > >
> > > > Людии.... помогите.... а то я уже совсем запутался...
> > > > И еще... в книге написано что скрипты запускаются от nobody, но в python-docs по этому поводу ничего
> > > > нет.
> > >
> > > Приветствую!
> > > В целях безопасности Апач работает с правами nobody, и соответственно
> > > CGI с указанными Вами правами выполнять не имеет права :-), если только
> > > nobody не является еще и членом группы unatine.
> > > Так что лучше всего, ИМХО, для вашего CGI'шника поставить:
> > > права -rwxr-xr--
> > > оунер "любое_удобное_Вам_имя"
> > > группа nobody
> > > тогда Апач сможет его выполнить, но не сможет его редактировать, а права
> > > на запись будут только у владельца, то есть у Вас :-))
> > >
> > > Кстати, если CGI и вообще запускаемый файл не является скомпиленной
> > > прогой, а есть скрипт, то очень желательно в заголовке указать имя
> > > интерпретатора, тогда Апач будет знать что ему запустить для обработки
> > > данного скрипта CGI.
> > > Например, если это шелл скрипт, то бычно пишут в первой строке:
> > > #!/ban/bash
> > > или
> > > #!/bin/sh
> > > или имя любого другого нужного интепретатора.
> > > Если это скрипт на перл, то пишут:
> > > #!/usr/bin/perl
> > > и таким образом сообщают Апачу, где искать обработчик, то есть сам perl.
> > > Аналогично надо действовать и с Питоном.
> > >
> > > Удачи :-))
> >
> > ААААААААААААА........ Люди!!! Этот скрипт и есть сервак с возможность запуска cgi-скриптов.
> > #hins.py - это я на всякий случай написал имя файла, в файле его нет:) Этот сервак скрипт находит,
> > но не может запустить выдавая выше приведенное...
> >
> > Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
> > пытаюсь что-нибудь маленькое для себя написать.
>
> Ну, тык дык! Правам доступа побарабану кто перед ними, бегемот или
> блоха, они все равно работают. Имхо, ежели хочется написать что то свое
> легенькое - пожалуйста, то я не вижу причин почему бы не позаимствовать
> механику работы с правами от Апача, ИМХО, там все логично. В конце
> концов не суть важно от какого юзера работает все это (от nobody/nobody
> или apache/apache) лишь бы не от root'а :-)). Так что если сервер
> работает от юзера vasya из группы vasya, то и скриптик должен быть
> выполняем для этого самого vasya, а иначе ничего не выйдет, хоть тресни
> :-)
Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер запускается от рута, иначе ошибка на
создание сокета. Масимум что еще можно добавить к выше приведенному серверу так это обработку
исключений и все, методы мне переопределять не надо. Но я не понимаю какие права должны быть у
cgi-скрипта
> Так что пожалуйста, повнимательнее следите за правами доступа, половина
> траблов происходят именно из за невнимательного обращения с пермишенами,
> в том числе и у меня самого. Так что ежели у меня чего не пашет - парвым
> делом смотю на права доступа, часто помогает :-)
>
> Кстати, на счет "бегемотности" Апача, ИМХО, это Вы зря! Он очень
> компактен, особенно если нагрузка на него маленькая, так что можно
> сократить число резидентных копий в памяти и таким образом сократить его
> аппетиты к памяти почти до нуля, помнится при 32Мб он мне да же в Квак2
> играть нисколько не мешал :-))
Нее... и все таки великоват... мне его навороты не нужны. Тем более разница все таки есть штук -цать
строчек или 1.5 метра...;)
--
WBW, Pavel
e-mail: unatine@narod.ru
The phantom warrior comes from nowhere and returns there just as quickly.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 19:06 ` Pavel Marakhovsky
@ 2001-04-10 19:42 ` Sergey Vlasov
2001-04-11 6:25 ` Pavel Marakhovsky
0 siblings, 1 reply; 22+ messages in thread
From: Sergey Vlasov @ 2001-04-10 19:42 UTC (permalink / raw)
To: mandrake-russian
On Tue, 10 Apr 2001 18:31:08 +0400
Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
> Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> запускается от рута, иначе ошибка на
> создание сокета. Масимум что еще можно добавить к выше приведенному
> серверу так это обработку
> исключений и все, методы мне переопределять не надо. Но я не понимаю
> какие права должны быть у
> cgi-скрипта
А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
Может быть, nobody просто не имеет права на вход в каталог, и
соответственно ничего не выполняется. (Насколько я помню, на домашнем
каталоге по умолчанию стоит 700.)
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 19:05 ` Pavel Marakhovsky
@ 2001-04-10 19:54 ` Ivan Zakharyaschev
2001-04-11 6:26 ` Pavel Marakhovsky
0 siblings, 1 reply; 22+ messages in thread
From: Ivan Zakharyaschev @ 2001-04-10 19:54 UTC (permalink / raw)
To: mandrake-russian
Hello, Pavel!
On Tue, 10 Apr 2001, Pavel Marakhovsky wrote:
> On Tue, 10 Apr 2001 09:40:39 +0400
> cornet <cornet@zmail.ru> wrote:
>
> > > > > Сразу сорри за оффтопик, но спросить не у кого...
> > > > >
> > > > > Из книжки "Язык прграммирования Питон" списан пример веб
> сервера с возможность выполнения cgi
> > > > > скриптов:
> > > > >
> > > > > #hins.py
> > > > > #!/usr/bin/python
> > > > > from BaseHTTPServer import HTTPServer
> > > > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > > > import os
> > > > >
> > > > > os.chdir("/home/unatine/hins/html")
> > > > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > > > >
> > > > > serv.serve_forever()
> > > > >
> > > > > в /home/unatine/hins/html лежит index.html и есть каталог
> cgi-bin в котором лежит скрипт:
> > > > >
> > > > > unatine@localhost ~/hins $ ls -l ./*/*
> > > > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> ./html/index.html
> > > > >
> > > > > ./html/cgi-bin:
> > > > > итого 4
> > > > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26
> dict_cgi.py
> Интересно, а ошибки в CGIHTTPServer.py быть не может?
А все-таки: что в dict_cgi.py (первая строка правильная?) и какие права
на директории, в которых он лежит?
Best regards,
Ivan.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 19:42 ` Sergey Vlasov
@ 2001-04-11 6:25 ` Pavel Marakhovsky
2001-04-11 9:37 ` cornet
2001-04-11 11:19 ` Sergey Vlasov
0 siblings, 2 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-11 6:25 UTC (permalink / raw)
To: mandrake-russian
On Tue, 10 Apr 2001 19:41:58 +0400
Sergey Vlasov <vsu@mivlgu.murom.ru> wrote:
> On Tue, 10 Apr 2001 18:31:08 +0400
> Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
>
> > Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> > запускается от рута, иначе ошибка на
> > создание сокета. Масимум что еще можно добавить к выше приведенному
> > серверу так это обработку
> > исключений и все, методы мне переопределять не надо. Но я не понимаю
> > какие права должны быть у
> > cgi-скрипта
>
> А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
> Может быть, nobody просто не имеет права на вход в каталог, и
> соответственно ничего не выполняется. (Насколько я помню, на домашнем
> каталоге по умолчанию стоит 700.)
drwxr-xr-x 3 root root 4096 Апр 5 00:31 /home
drwx------ 49 unatine unatine 4096 Апр 11 06:11 /home/unatine
drwxr-xr-x 3 unatine unatine 4096 Апр 8 16:31 /home/unatine/hins
drwxr-xr-x 3 unatine unatine 4096 Апр 8 21:27 /home/unatine/hins/html
drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 /home/unatine/hins/html/cgi-bin
Хотя ошибка именно на выполнение, значит он входит в каталог.
И еще вопрос: если владелец обычный пользователь, а запускает ее рут, то у программы какие права
рута или пользователя?
--
WBW, Pavel
e-mail: unatine@narod.ru
The crawler doesn't care what gets in is way. It pushes everything
into the boiling muck and waits for the meat to cook.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-10 19:54 ` Ivan Zakharyaschev
@ 2001-04-11 6:26 ` Pavel Marakhovsky
0 siblings, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-11 6:26 UTC (permalink / raw)
To: mandrake-russian
On Tue, 10 Apr 2001 19:55:24 +0400 (MSD)
Ivan Zakharyaschev <imz@linux.ru.net> wrote:
> Hello, Pavel!
>
> On Tue, 10 Apr 2001, Pavel Marakhovsky wrote:
>
> > On Tue, 10 Apr 2001 09:40:39 +0400
> > cornet <cornet@zmail.ru> wrote:
> >
> > > > > > Сразу сорри за оффтопик, но спросить не у кого...
> > > > > >
> > > > > > Из книжки "Язык прграммирования Питон" списан пример веб
> > сервера с возможность выполнения cgi
> > > > > > скриптов:
> > > > > >
> > > > > > #hins.py
> > > > > > #!/usr/bin/python
> > > > > > from BaseHTTPServer import HTTPServer
> > > > > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > > > > import os
> > > > > >
> > > > > > os.chdir("/home/unatine/hins/html")
> > > > > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > > > > >
> > > > > > serv.serve_forever()
> > > > > >
> > > > > > в /home/unatine/hins/html лежит index.html и есть каталог
> > cgi-bin в котором лежит скрипт:
> > > > > >
> > > > > > unatine@localhost ~/hins $ ls -l ./*/*
> > > > > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> > ./html/index.html
> > > > > >
> > > > > > ./html/cgi-bin:
> > > > > > итого 4
> > > > > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26
> > dict_cgi.py
>
> > Интересно, а ошибки в CGIHTTPServer.py быть не может?
>
> А все-таки: что в dict_cgi.py (первая строка правильная?) и какие права
> на директории, в которых он лежит?
Считайте что первой строки нет, файл начинается с #!/usr/bin/python.
вот права на cgi-bin:
drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 cgi-bin
Эта директория в моем домашнем каталоге...
--
WBW, Pavel
e-mail: unatine@narod.ru
The Cho-Arrim workship life and revere those who've experienced it longest.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-11 6:25 ` Pavel Marakhovsky
@ 2001-04-11 9:37 ` cornet
2001-04-11 18:56 ` Pavel Marakhovsky
2001-04-11 11:19 ` Sergey Vlasov
1 sibling, 1 reply; 22+ messages in thread
From: cornet @ 2001-04-11 9:37 UTC (permalink / raw)
To: mandrake-russian
Pavel Marakhovsky wrote:
>
> On Tue, 10 Apr 2001 19:41:58 +0400
> Sergey Vlasov <vsu@mivlgu.murom.ru> wrote:
>
> > On Tue, 10 Apr 2001 18:31:08 +0400
> > Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
> >
> > > Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> > > запускается от рута, иначе ошибка на
> > > создание сокета. Масимум что еще можно добавить к выше приведенному
> > > серверу так это обработку
> > > исключений и все, методы мне переопределять не надо. Но я не понимаю
> > > какие права должны быть у
> > > cgi-скрипта
> >
> > А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
> > Может быть, nobody просто не имеет права на вход в каталог, и
> > соответственно ничего не выполняется. (Насколько я помню, на домашнем
> > каталоге по умолчанию стоит 700.)
>
> drwxr-xr-x 3 root root 4096 Апр 5 00:31 /home
> drwx------ 49 unatine unatine 4096 Апр 11 06:11 /home/unatine
> drwxr-xr-x 3 unatine unatine 4096 Апр 8 16:31 /home/unatine/hins
> drwxr-xr-x 3 unatine unatine 4096 Апр 8 21:27 /home/unatine/hins/html
> drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 /home/unatine/hins/html/cgi-bin
>
> Хотя ошибка именно на выполнение, значит он входит в каталог.
> И еще вопрос: если владелец обычный пользователь, а запускает ее рут, то у программы какие права
> рута или пользователя?
Права у запускаемой программы всегда те, которые имеет юзер, ее
запустивший, и не зависят от того кто владелец, за исключением случая,
когда на файле программы установлен флаг SUID.
А такой дурацкий вопросец, Вы уверены, что по пути /usr/bin/python
который указан в начале скрипта, действительно живет Питон?? Не
обижайтесь, pls, но когда я начинал писать на perl, то куча траблов у
меня было из за того, что путь к perl в заголовке стоял неправильный
:-))
А вообще, для эксперимента, я бы посоветовал все это хозяйство пускануть
от root'а, полностью все. И если оно заработает должным образом, значит
траблы были именно с правами доступа, а если и из под root'а не
заработает, значит проблеммы еще где то, но уже не с правами точно.
Таким образом можно сильно сократить неопределенность при поиске
неисправности, причем не только в данном случае.
--
******** FIRE & STEEL ********
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-11 6:25 ` Pavel Marakhovsky
2001-04-11 9:37 ` cornet
@ 2001-04-11 11:19 ` Sergey Vlasov
2001-04-11 18:56 ` Pavel Marakhovsky
1 sibling, 1 reply; 22+ messages in thread
From: Sergey Vlasov @ 2001-04-11 11:19 UTC (permalink / raw)
To: mandrake-russian
On Wed, 11 Apr 2001 06:18:11 +0400
Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
> On Tue, 10 Apr 2001 19:41:58 +0400
> Sergey Vlasov <vsu@mivlgu.murom.ru> wrote:
>
> > On Tue, 10 Apr 2001 18:31:08 +0400
> > Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
> >
> > > Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> > > запускается от рута, иначе ошибка на
> > > создание сокета. Масимум что еще можно добавить к выше приведенному
> > > серверу так это обработку
> > > исключений и все, методы мне переопределять не надо. Но я не понимаю
> > > какие права должны быть у
> > > cgi-скрипта
> >
> > А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
> > Может быть, nobody просто не имеет права на вход в каталог, и
> > соответственно ничего не выполняется. (Насколько я помню, на домашнем
> > каталоге по умолчанию стоит 700.)
>
> drwxr-xr-x 3 root root 4096 Апр 5 00:31 /home
> drwx------ 49 unatine unatine 4096 Апр 11 06:11 /home/unatine
^^^^^^^^^^
Вот здесь и происходит облом.
> drwxr-xr-x 3 unatine unatine 4096 Апр 8 16:31 /home/unatine/hins
> drwxr-xr-x 3 unatine unatine 4096 Апр 8 21:27 /home/unatine/hins/html
> drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 /home/unatine/hins/html/cgi-bin
>
> Хотя ошибка именно на выполнение, значит он входит в каталог.
> И еще вопрос: если владелец обычный пользователь, а запускает ее рут, то у программы какие права
> рута или пользователя?
>
Права, естественно, рута (если нет SUID). Но посмотрите в CGIHTTPServer.py - за несколько строк до execve, который не проходит, Вы обнаружите вызов os.setuid(nobody). После этого рутовские права пропадают, а nobody не может добраться до скрипта из-за отсутствия прав на вход в каталог /home/unatine. В результате - Permission denied.
Придется ставить на /home/unatine права хотя бы 711 (читать каталог будет нельзя, но, зная имя, обратиться к файлу можно).
Кстати, с Apache та же самая проблема - при стандартной конфигурации http://host/~user не работает из-за прав на домашний каталог.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-11 9:37 ` cornet
@ 2001-04-11 18:56 ` Pavel Marakhovsky
0 siblings, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-11 18:56 UTC (permalink / raw)
To: mandrake-russian
On Wed, 11 Apr 2001 09:37:59 +0400
cornet <cornet@zmail.ru> wrote:
> Pavel Marakhovsky wrote:
> >
> > On Tue, 10 Apr 2001 19:41:58 +0400
> > Sergey Vlasov <vsu@mivlgu.murom.ru> wrote:
> >
> > > On Tue, 10 Apr 2001 18:31:08 +0400
> > > Pavel Marakhovsky <_troggy_@mtu-net.ru> wrote:
> > >
> > > > Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> > > > запускается от рута, иначе ошибка на
> > > > создание сокета. Масимум что еще можно добавить к выше приведенному
> > > > серверу так это обработку
> > > > исключений и все, методы мне переопределять не надо. Но я не понимаю
> > > > какие права должны быть у
> > > > cgi-скрипта
> > >
> > > А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
> > > Может быть, nobody просто не имеет права на вход в каталог, и
> > > соответственно ничего не выполняется. (Насколько я помню, на домашнем
> > > каталоге по умолчанию стоит 700.)
> >
> > drwxr-xr-x 3 root root 4096 Апр 5 00:31 /home
> > drwx------ 49 unatine unatine 4096 Апр 11 06:11 /home/unatine
> > drwxr-xr-x 3 unatine unatine 4096 Апр 8 16:31 /home/unatine/hins
> > drwxr-xr-x 3 unatine unatine 4096 Апр 8 21:27 /home/unatine/hins/html
> > drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 /home/unatine/hins/html/cgi-bin
> >
> > Хотя ошибка именно на выполнение, значит он входит в каталог.
> > И еще вопрос: если владелец обычный пользователь, а запускает ее рут, то у программы какие права
> > рута или пользователя?
>
> Права у запускаемой программы всегда те, которые имеет юзер, ее
> запустивший, и не зависят от того кто владелец, за исключением случая,
> когда на файле программы установлен флаг SUID.
>
> А такой дурацкий вопросец, Вы уверены, что по пути /usr/bin/python
> который указан в начале скрипта, действительно живет Питон?? Не
> обижайтесь, pls, но когда я начинал писать на perl, то куча траблов у
> меня было из за того, что путь к perl в заголовке стоял неправильный
> :-))
Полность:) Все остальные проги у меня также запускаются. Можно еще #!/usr/bin/env python.
> А вообще, для эксперимента, я бы посоветовал все это хозяйство пускануть
> от root'а, полностью все. И если оно заработает должным образом, значит
> траблы были именно с правами доступа, а если и из под root'а не
> заработает, значит проблеммы еще где то, но уже не с правами точно.
> Таким образом можно сильно сократить неопределенность при поиске
> неисправности, причем не только в данном случае.
Самое интересное что все это от рута и запускается:)))
Но главное заработало!!!
--
WBW, Pavel
e-mail: unatine@narod.ru
The il-Kor no longer roam the open plains, but they are still hunters.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-11 11:19 ` Sergey Vlasov
@ 2001-04-11 18:56 ` Pavel Marakhovsky
0 siblings, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-11 18:56 UTC (permalink / raw)
To: mandrake-russian
On Wed, 11 Apr 2001 11:17:50 +0400
Sergey Vlasov <vsu@mivlgu.murom.ru> wrote:
> > > > Права у скрипта и сервера мои, т.е. unatine.unatine. Только сервер
> > > > запускается от рута, иначе ошибка на
> > > > создание сокета. Масимум что еще можно добавить к выше приведенному
> > > > серверу так это обработку
> > > > исключений и все, методы мне переопределять не надо. Но я не понимаю
> > > > какие права должны быть у
> > > > cgi-скрипта
> > >
> > > А на каталогах какие права стоят (по всей цепочке от / до скрипта)?
> > > Может быть, nobody просто не имеет права на вход в каталог, и
> > > соответственно ничего не выполняется. (Насколько я помню, на домашнем
> > > каталоге по умолчанию стоит 700.)
> >
> > drwxr-xr-x 3 root root 4096 Апр 5 00:31 /home
> > drwx------ 49 unatine unatine 4096 Апр 11 06:11 /home/unatine
> ^^^^^^^^^^
> Вот здесь и происходит облом.
>
> > drwxr-xr-x 3 unatine unatine 4096 Апр 8 16:31 /home/unatine/hins
> > drwxr-xr-x 3 unatine unatine 4096 Апр 8 21:27 /home/unatine/hins/html
> > drwxr-xr-x 2 unatine unatine 4096 Апр 8 16:32 /home/unatine/hins/html/cgi-bin
> >
> > Хотя ошибка именно на выполнение, значит он входит в каталог.
> > И еще вопрос: если владелец обычный пользователь, а запускает ее рут, то у программы какие права
> > рута или пользователя?
> >
>
> Права, естественно, рута (если нет SUID). Но посмотрите в CGIHTTPServer.py - за несколько строк до
> execve, который не проходит, Вы обнаружите вызов os.setuid(nobody). После этого рутовские права
> пропадают, а nobody не может добраться до скрипта из-за отсутствия прав на вход в каталог
> /home/unatine.
> В результате - Permission denied.
>
> Придется ставить на /home/unatine права хотя бы 711 (читать каталог будет нельзя, но, зная имя,
> обратиться к файлу можно).
>
> Кстати, с Apache та же самая проблема - при стандартной конфигурации http://host/~user не работает
> из-за прав на домашний каталог.
УРАААААА!!!!!!!! Заработало!!! Действительно, изменил на 711 и все!!!
Потом только в /var перенесу, что бы обратно права на home изменить..
Всем спасибо! Узнал много нового про права доступа, надеюсь больше на эти грабли не наступать.
--
WBW, Pavel
e-mail: unatine@narod.ru
"It is nature that gives us our boundares and nature that enforce them."
---Eladamri, Lord of Leaves
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 19:36 ` Pavel Marakhovsky
2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-10 9:40 ` cornet
@ 2001-04-16 8:37 ` Mikhail Zabaluev
2001-04-16 20:02 ` Pavel Marakhovsky
2 siblings, 1 reply; 22+ messages in thread
From: Mikhail Zabaluev @ 2001-04-16 8:37 UTC (permalink / raw)
To: mandrake-russian
Hello Pavel,
On Mon, Apr 09, 2001 at 06:59:09PM +0400, Pavel Marakhovsky wrote:
>
> Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
> пытаюсь что-нибудь маленькое для себя написать.
Странно слышать. Apache - бегемот, а интерпретатор Python с загруженными
серверными модулями - нет? К тому же правильно собранный (читай -
собранный нашей командой ;)) Apache можно облегчить, отменив загрузку
ненужных модулей.
--
Stay tuned,
MhZ JID: mookid@jabber.org
___________
In this world, nothing is certain but death and taxes.
-- Benjamin Franklin
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-16 8:37 ` Mikhail Zabaluev
@ 2001-04-16 20:02 ` Pavel Marakhovsky
0 siblings, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-16 20:02 UTC (permalink / raw)
To: mandrake-russian
On Sun, 15 Apr 2001 18:20:12 +0400
Mikhail Zabaluev <mhz@alt-linux.org> wrote:
> Hello Pavel,
>
> On Mon, Apr 09, 2001 at 06:59:09PM +0400, Pavel Marakhovsky wrote:
> >
> > Апач то все нормально запускает, но мне такой бегемот в моей маленькой квартирке не нужен, вот я и
> > пытаюсь что-нибудь маленькое для себя написать.
>
> Странно слышать. Apache - бегемот, а интерпретатор Python с загруженными
> серверными модулями - нет? К тому же правильно собранный (читай -
> собранный нашей командой ;)) Apache можно облегчить, отменив загрузку
> ненужных модулей.
Согласен:) Но с другой стороны, если еще и писать что-то свое, опыт какой-то приобретается:)
--
WBW, Pavel
e-mail: unatine@narod.ru
"If the druids are so devoted to their trees,
I will carve the coffins from their precious heartwood."
---Volrath
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [mdk-re] offtopic: troubles with python programming
2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-09 22:24 ` Ivan Zakharyaschev
@ 2001-04-19 18:01 ` Pavel Marakhovsky
1 sibling, 0 replies; 22+ messages in thread
From: Pavel Marakhovsky @ 2001-04-19 18:01 UTC (permalink / raw)
To: mandrake-russian
On Mon, 9 Apr 2001 22:24:27 +0400 (MSD)
Ivan Zakharyaschev <imz@linux.ru.net> wrote:
> > > > Из книжки "Язык прграммирования Питон" списан пример веб сервера с
> > возможность выполнения cgi
> > > > скриптов:
> > > >
> > > > #hins.py
> > > > #!/usr/bin/python
> > > > from BaseHTTPServer import HTTPServer
> > > > from CGIHTTPServer import CGIHTTPRequestHandler
> > > > import os
> > > >
> > > > os.chdir("/home/unatine/hins/html")
> > > > serv=HTTPServer(('',80),CGIHTTPRequestHandler)
> > > >
> > > > serv.serve_forever()
> > > >
> > > > в /home/unatine/hins/html лежит index.html и есть каталог cgi-bin в
> > котором лежит скрипт:
> > > >
> > > > unatine@localhost ~/hins $ ls -l ./*/*
> > > > -rw-r--r-- 1 unatine unatine 314 Апр 8 16:44
> > ./html/index.html
> > > >
> > > > ./html/cgi-bin:
> > > > итого 4
> > > > -rwxr-xr-x 1 unatine unatine 764 Апр 8 16:26 dict_cgi.py
> > > >
> > > > Ну то что сервер должен запускаться от рута это в принципе понятно
> > (иначе ошибка создания сокета)
> > > > index.html грузится, скрипт даже пытается выполниться, но говорит:
> > > >
> > > > localhost - - [08/Apr/2001 21:36:39] "POST /cgi-bin/dict_cgi.py
> > HTTP/1.0" 200 -
> > > > Traceback (most recent call last):
> > > > File "/usr/lib/python2.0/CGIHTTPServer.py", line 211, in run_cgi
> > > > os.execve(scriptfile, args, env)
> > > > OSError: [Errno 13] Permission denied
> > > >
> > > > Какие права должны быть у скрипта и сервера, что бы нормально все
> > выполнилось?
>
> На совет (где-то ниже) по поводу вставки #!/usr/bin/python <ключи> в
> начало dict_cgi.py стоит обратить внимание. В качестве параметра для
> execve, судя по всему, подается этот скрипт. А в начале скриптов такая
> строчка необходима -- man 2 execve. Вызов execve, про который я говорю,
> как раз находится в File "/usr/lib/python2.0/CGIHTTPServer.py", line 211.
В ключах к питону нет ничего интересного или того что могло бы помочь.
Все таки что-то с правами на скрипт. В CGIHTTPServer.py все нормально заполняется и передается:
скрипт, аргументы и окружение. Я тут уже похоже все возможные варианты перебрал, все равно
Permission denied. Хотя у меня начинает появлятся подозрение что ошибки где-то в CGIHTTPServer.py...
Но может быть и у меня руки кривые:)
--
WBW, Pavel
e-mail: unatine@narod.ru
Cho-Arrim righteousness was no match for Benalish combat training.
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2001-04-19 18:01 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-04-08 22:12 [mdk-re] offtopic: troubles with python programming Pavel Marakhovsky
2001-04-08 23:46 ` Ivan Zakharyaschev
2001-04-09 6:20 ` Pavel Marakhovsky
2001-04-09 11:14 ` cornet
2001-04-09 16:50 ` Alexander Bokovoy
2001-04-09 19:36 ` Pavel Marakhovsky
2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-09 22:24 ` Ivan Zakharyaschev
2001-04-19 18:01 ` Pavel Marakhovsky
2001-04-10 9:40 ` cornet
2001-04-10 19:05 ` Pavel Marakhovsky
2001-04-10 19:54 ` Ivan Zakharyaschev
2001-04-11 6:26 ` Pavel Marakhovsky
2001-04-10 19:06 ` Pavel Marakhovsky
2001-04-10 19:42 ` Sergey Vlasov
2001-04-11 6:25 ` Pavel Marakhovsky
2001-04-11 9:37 ` cornet
2001-04-11 18:56 ` Pavel Marakhovsky
2001-04-11 11:19 ` Sergey Vlasov
2001-04-11 18:56 ` Pavel Marakhovsky
2001-04-16 8:37 ` Mikhail Zabaluev
2001-04-16 20:02 ` Pavel Marakhovsky
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git