From: Pavel Marakhovsky <_troggy_@mtu-net.ru> To: mandrake-russian@altlinux.ru Subject: Re: [mdk-re] offtopic: troubles with python programming Date: Tue Apr 10 19:05:01 2001 Message-ID: <20010410183220.0b129238._troggy_@mtu-net.ru> (raw) In-Reply-To: <3AD29CD7.D33A536@zmail.ru> 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
next prev parent reply other threads:[~2001-04-10 19:05 UTC|newest] Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top 2001-04-08 22:12 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 [this message] 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
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20010410183220.0b129238._troggy_@mtu-net.ru \ --to=_troggy_@mtu-net.ru \ --cc=mandrake-russian@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
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