ALT Linux Community general discussions
 help / color / mirror / Atom feed
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



  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