Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 25, 2010 11:22:31

penguen
От:
Зарегистрирован: 2010-01-25
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

Всем добрый день
Возникли некоторые проблемы при обработки python скриптов
в режиме fastcgi

Они или отображаются как текст или после правки в конфиге апачи выбивает ошибку 500 или 403
——————————
Уже измучался, так и не поборол. Прошу вашей помощи.
Данные, есть апач+мод-питон, сам питон2.5, mod_fcgid, mod_rewrite

Вот что по системе Код:
Код: Выделить всё • Развернуть

FreeBSD *.net.ua 7.2-RELEASE FreeBSD 7.2-RELEASE #0: Fri May 1 08:49:13 UTC 2008 root@*
————————–
Код:
httpd -V
Код:
Server version: Apache/2.2.11 (FreeBSD) 
Server built: Jul 3 2009 15:34:51
Server's Module Magic Number: 20051115:21
Server loaded: APR 1.3.3, APR-Util 1.3.4
Compiled using: APR 1.3.3, APR-Util 1.3.4
Architecture: 32-bit
Server MPM: Prefork
threaded: no
forked: yes (variable process count)
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_USE_FLOCK_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D DYNAMIC_MODULE_LIMIT=128
-D HTTPD_ROOT="/usr/local"
-D SUEXEC_BIN="/usr/local/sbin/suexec"
-D DEFAULT_PIDLOG="/var/run/httpd.pid"
-D DEFAULT_SCOREBOARD="/var/run/apache_runtime_status"
-D DEFAULT_LOCKFILE="/var/run/accept.lock"
-D DEFAULT_ERRORLOG="/var/log/httpd-error.log"
-D AP_TYPES_CONFIG_FILE="etc/apache22/mime.types"
-D SERVER_CONFIG_FILE="etc/apache22/httpd.conf"
====================================
Код:
Apache/2.2.11
> (FreeBSD) mod_ssl/2.2.3 OpenSSL/0.9.7e-p1 DAV/2 PHP/5.1.6 with 
> Suhosin-Patch mod_fastcgi/2.4.2 mod_scgi/1.11 mod_python/3.2.10
> Python/2.5
=====================
В виртуал хостах накуевертил что сам уже не понял что делал.
Если брать
PythonHandler mod_python.testhandler
То работает тестовый скрипт из директории /usr/local/lib/python25/site-packages/mod_python

Мой же тестовый скрипт
зависает или выдает апач 500 ошибку или 403

Код: 
<Directory /usr/local/www/tr.*.net.ua/www>
> Allow from All
> #SetHandler fcgid-script
> Options +ExecCGI
> AllowOverride None
> <IfModule mod_fcgid.c>
> SetHandler fcgid-script
> </IfModule>
> </Directory>
>
> </VirtualHost>
Вот лог еррор:
Код: Выделить всё • Развернуть
[Thu Jan 14 11:57:03 2010] [error] [client 10.10.x.83] FastCGI: comm with server "/usr/local/www/apache22/data/test_fcgi/test.py" aborted: idle timeout (30 sec)
[Thu Jan 14 11:57:03 2010] [error] [client 10.10.x.83] FastCGI: incomplete headers (0 bytes) received from server "/usr/local/www/apache22/data/test_fcgi/test.py"
[Thu Jan 14 11:57:03 2010] [error] [client 10.10.x.83] File does not exist: /usr/local/www/apache22/data/test_fcgi/favicon.ico, referer: http://192.168.8.21/test.py
[Thu Jan 14 12:01:35 2010] [warn] FastCGI: server "/usr/local/www/apache22/data/test_fcgi/test.py" has failed to remain running for 30 seconds given 3 attempts, its restart interval has been backed off to 600 seconds
К самому python поставил flup

Сделал скрипт для теста, закинул в директорию мой скриптец
#!/usr/bin/env python
import fcgi

def app(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/html')])
return('''<html>
<head>
<title>Hello World!</title>
</head>
<body>
<h1>Hello world!</h1>
</body>
</html>''')

fcgi.WSGIServer(app, bindAddress = '/tmp/fcgi.sock').run()
Не работает скрипт. Он выдает через определенное время ошибку 503 или 403 Что делаю не так? Помогите пожалуйста.



Офлайн

#2 Янв. 25, 2010 19:36:42

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

попробуй

chmod 777 /tmp/fcgi.sock
а вообще апач кошерней использовать с mod_wsgi, он всё-таки получше будет и пологичней в случае с апачем.

Офлайн

#3 Янв. 26, 2010 09:49:33

penguen
От:
Зарегистрирован: 2010-01-25
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

slav0nic
попробуй
Код:
chmod 777 /tmp/fcgi.sock
а вообще апач кошерней использовать с mod_wsgi, он всё-таки получше будет и пологичней в случае с апачем.
Извените, а вы пишите лишь бы? В документации написано

# chown www-data:www-data /var/www/test/htdocs/app.py
# chmod 755 /var/www/test/htdocs/app.py

Но на всякий ставил 777
Просто столько советчиков. Все что-то там предполагают, но сами в этом не компитентны+да еще документацию не читали



Офлайн

#4 Янв. 26, 2010 11:32:03

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

penguen
Извените, а вы пишите лишь бы?
penguen
но сами в этом не компитентны+да еще документацию не читали
penguen, вам, кстати, дали отличный совет, может стоит задуматься, и прояснить для себя вопрос, чем сразу наезжать. Тут вопрос в том, кто некомпетентен.



Офлайн

#5 Янв. 26, 2010 15:58:50

penguen
От:
Зарегистрирован: 2010-01-25
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

Есть связка, apache2&mod_fcgi ее я и пытаюсь осилить.
За советы естественно спасибо, но я ж не зря задаю именно по данной обвязке вопросы.
А не спрашиваю, что лучше или ваше мнение о выборе.



Офлайн

#6 Янв. 26, 2010 16:06:18

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

Я так понимаю, код взят отсюда. Права на файлы проверяли?



Офлайн

#7 Янв. 27, 2010 09:39:23

penguen
От:
Зарегистрирован: 2010-01-25
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

regall
Я так понимаю, код взят отсюда. Права на файлы проверяли?
Верно. Ман взят от туда. Права стоят 777 на все папки и подпапки.
Напоминаю, на Suse 10.2 работает нормально. На Фря 6.2 и 7.2 не могу завести



Офлайн

#8 Янв. 27, 2010 16:59:16

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

/set mode mat on
penguen
я пишу за спасибо, для долбоёбов типа тебя.
В комментарие написано

chmod 777 /tmp/fcgi.sock
где тут *.py? я написал проверить права на fcgi сокет, причём тут права на py файлы, почитай лучше как fcgi работает.
а у советчиков типа меня почему-то таких проблем не возникает, ибо я способен без чужой помощи решать админ проблемы и читать опенсоурсовый код того же mod_fcgi

ps: заебали всякие умники…
/set mode mat off

а по сути или убери binAddress или укажи в конфиге путь к сокету (FastCgiServer … -socket ), или подумай головой как апач будет знать через какой сокет/порт общаться с таким конфигом.
Для гениев мыcли это всё можно прочесть в главе 4.3 документации.

Офлайн

#9 Янв. 28, 2010 10:29:56

penguen
От:
Зарегистрирован: 2010-01-25
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Apache2.X&FastCGI

Во-первых это форум. Он задуман был, чтобы здесь разрешались некоторые вопросы.
Во-вторых, я вас ув. slav0nic не оскорблял.
Права на сокет выставлены нормально, то же 777
Документацию читал, сейчас еще раз перечитаю
Зы, slav0nic, нервы не востанавл., относитесь чуток проще к незнакомцам и гостям форума.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version