Форум сайта python.su
Здравствуйте!
Есть проект написанный на python. Его суть в том что по таймеру в таблицу, в веб-браузере, добавляется строчка, путем запроса на сервер и обработки запроса wsgi скриптом.
Файл хоста:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
##Каталог с вашими документами
DocumentRoot /var/www/test/
##Имя сервера
ServerName test
##Логфайлы
ErrorLog /var/log/apache2/hosts/test-error.log
CustomLog /var/log/apache2/hosts/test-access.log combined
##Показывать или нет сигнатуру сервера
ServerSignature Off
WSGIProcessGroup nice
WSGIDaemonProcess nice user=nice group=nice threads=2 maximum-requests=1000
WSGIScriptAlias /indexl.html /var/www/test/index.wsgi
##Доступ к файлам
<Directory /var/www/test/>
Order Deny,Allow
Deny from all
#Allow from 127.0.0.0/24
Allow from all
</Directory>
</VirtualHost>
#!/usr/bin/python
def my_wsgi_application(environ,start_response):
import sys
s= 'Hello'
status = '200 OK'
test = 'welcome YA.RU'
s='<?xml version="1.0"?><HI>Hello =) \n</HI>'
output = s
response_headers = [('Content-type','text/xml')]
start_response(status,response_headers)
return [output]
application=my_wsgi_application
Офлайн
если локально работает, а с другого компа - нет, то может фаервол режет или ещё что…
а вообще вот рабочий пример wsgi+apache
Офлайн
фаервол здесь не причем… просто скрипт WSGI не хочет исполнятся по каким то причинам связанным с настройками Apache и WSGI … ошибок в лог файле нет…
Офлайн
На каком адресе и порту слушает апач?
Офлайн
порт и адрес указаны в файлах port.conf и /etc/hosts: 80 и IP получаемый от DHCP
Apache был пере установлен и проводился тест на другом компьютере, результат один и тот же. Вместо результата работы скрипта Apache выдает #!/usr/bin/python
Отредактировано (Март 24, 2010 07:05:44)
Офлайн
Судя по всему не отрабатывает строка WSGIScriptAlias /indexl.html /var/www/test/index.wsgi
Попробуйте указать не отдельный скрипт, а всю директорию или сделать то же альтернативным способом через Alias или
<Directory /var/www/test/index.wsgi>
SetHandler wsgi-script
Options ExecCGI
</Directory>
Офлайн
данная рекомендация не дала результата….
Офлайн
Проблема была решена таким образом:
<VirtualHost 192.168.0.183:80>
ServerAdmin webmaster@localhost
т.е. просто был указан конкретный IP компьютера сервера.
Остался вопрос можно ли решить эту проблему как то по другому?
Офлайн
если: ServerName test
то подключаться нужно по адресу http://test
и он должен быть прописан в dns, либо в /etc/hosts если нужно подключаться с локального компа
Офлайн
это сделано для того что-бы на одном порту одного ip, можно было повесить 2 и более виртуал хоста
Офлайн