Найти - Пользователи
Полная версия: Apache2.X&FastCGI
Начало » Web » Apache2.X&FastCGI
1
penguen
Всем добрый день
Возникли некоторые проблемы при обработки 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 Что делаю не так? Помогите пожалуйста.
slav0nic
попробуй
chmod 777 /tmp/fcgi.sock
а вообще апач кошерней использовать с mod_wsgi, он всё-таки получше будет и пологичней в случае с апачем.
penguen
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
Просто столько советчиков. Все что-то там предполагают, но сами в этом не компитентны+да еще документацию не читали
regall
penguen
Извените, а вы пишите лишь бы?
penguen
но сами в этом не компитентны+да еще документацию не читали
penguen, вам, кстати, дали отличный совет, может стоит задуматься, и прояснить для себя вопрос, чем сразу наезжать. Тут вопрос в том, кто некомпетентен.
penguen
Есть связка, apache2&mod_fcgi ее я и пытаюсь осилить.
За советы естественно спасибо, но я ж не зря задаю именно по данной обвязке вопросы.
А не спрашиваю, что лучше или ваше мнение о выборе.
regall
Я так понимаю, код взят отсюда. Права на файлы проверяли?
penguen
regall
Я так понимаю, код взят отсюда. Права на файлы проверяли?
Верно. Ман взят от туда. Права стоят 777 на все папки и подпапки.
Напоминаю, на Suse 10.2 работает нормально. На Фря 6.2 и 7.2 не могу завести
slav0nic
/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 документации.
penguen
Во-первых это форум. Он задуман был, чтобы здесь разрешались некоторые вопросы.
Во-вторых, я вас ув. slav0nic не оскорблял.
Права на сокет выставлены нормально, то же 777
Документацию читал, сейчас еще раз перечитаю
Зы, slav0nic, нервы не востанавл., относитесь чуток проще к незнакомцам и гостям форума.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB