@Ivan., я подумал нахуя тебе такие вопросы.
так нахуя?)
@phpdude, это шутка была, про php, я просто шутить не умею.
Форум → Сообщество → /dev/null → Не работают cgi скрипты python.
Страницы: ← Предыдущая страница • Следующая страница →
24 марта 2016 г. 23:09, спустя 50 минут 32 секунды
@Ivan., я подумал нахуя тебе такие вопросы.
так нахуя?)
@phpdude, это шутка была, про php, я просто шутить не умею.
24 марта 2016 г. 23:12, спустя 3 минуты 8 секунд
@adw0rd, не помогает
Exception ignored in: <module 'threading' from '/usr/lib/python3.4/threading.py'>
[Thu Mar 24 10:00:39.611191 2016] [:error] [pid 23466:tid 140658396813184] Traceback (most recent call last):
[Thu Mar 24 10:00:39.611207 2016] [:error] [pid 23466:tid 140658396813184] File "/usr/lib/python3.4/threading.py", line 1288, in _shutdown
[Thu Mar 24 10:00:39.611954 2016] [:error] [pid 23467:tid 140658396813184] Exception ignored in: <module 'threading' from '/usr/lib/python3.4/threading.py'>
[Thu Mar 24 10:00:39.611977 2016] [:error] [pid 23467:tid 140658396813184] Traceback (most recent call last):
[Thu Mar 24 10:00:39.611994 2016] [:error] [pid 23467:tid 140658396813184] File "/usr/lib/python3.4/threading.py", line 1288, in _shutdown
[Thu Mar 24 10:00:39.612800 2016] [:error] [pid 23466:tid 140658396813184] assert tlock is not None
[Thu Mar 24 10:00:39.612820 2016] [:error] [pid 23466:tid 140658396813184] AssertionError:
[Thu Mar 24 10:00:39.613543 2016] [:error] [pid 23467:tid 140658396813184] assert tlock is not None
[Thu Mar 24 10:00:39.613563 2016] [:error] [pid 23467:tid 140658396813184] AssertionError:
[Thu Mar 24 10:00:39.668984 2016] [mpm_event:notice] [pid 23462:tid 140658396813184] AH00491: caught SIGTERM, shutting down
[Thu Mar 24 10:00:40.713010 2016] [:warn] [pid 27017:tid 140430679345024] mod_wsgi: Compiled for Python/3.4.0.
[Thu Mar 24 10:00:40.713102 2016] [:warn] [pid 27017:tid 140430679345024] mod_wsgi: Runtime using Python/3.4.3.
[Thu Mar 24 10:00:40.713764 2016] [mpm_event:notice] [pid 27017:tid 140430679345024] AH00489: Apache/2.4.7 (Ubuntu) mod_wsgi/3.4 Python/3.4.3 configured -- resuming normal operations
[Thu Mar 24 10:00:40.713797 2016] [core:notice] [pid 27017:tid 140430679345024] AH00094: Command line: '/usr/sbin/apache2'
[Thu Mar 24 10:00:47.701664 2016] [cgid:error] [pid 27081:tid 140430679345024] (8)Exec format error: AH01241: exec of '/usr/lib/cgi-bin/test.py' failed
[Thu Mar 24 10:00:47.702041 2016] [cgid:error] [pid 27022:tid 140430557787904] [client 141.0.12.131:35322] End of script output before headers: test.py, referer: http://82.146.44.183/test.html
[Thu Mar 24 10:00:51.216380 2016] [cgid:error] [pid 27082:tid 140430679345024] (8)Exec format error: AH01241: exec of '/usr/lib/cgi-bin/test.py' failed
[Thu Mar 24 10:00:51.216781 2016] [cgid:error] [pid 27021:tid 140430557787904] [client 141.0.12.131:37494] End of script output before headers: test.py, referer: http://82.146.44.183/test.html
[Thu Mar 24 10:08:15.964466 2016] [cgid:error] [pid 27127:tid 140430679345024] (8)Exec format error: AH01241: exec of '/usr/lib/cgi-bin/test.py' failed
[Thu Mar 24 10:08:15.964828 2016] [cgid:error] [pid 27022:tid 140430547289856] [client 141.0.12.131:60605] End of script output before headers: test.py, referer: http://82.146.44.183/test.html
[Thu Mar 24 20:11:06.174843 2016] [cgid:error] [pid 27022:tid 140430297462528] [client 89.248.160.226:35848] AH01264: script not found or unable to stat: /usr/lib/cgi-bin/php
[Fri Mar 25 02:00:22.173375 2016] [cgid:error] [pid 30410:tid 140430679345024] (8)Exec format error: AH01241: exec of '/usr/lib/cgi-bin/test.py' failed
[Fri Mar 25 02:00:22.173834 2016] [cgid:error] [pid 27021:tid 140430444320512] [client 91.192.22.214:51799] End of script output before headers: test.py
25 марта 2016 г. 2:12, спустя 37 минут 21 секунду
@vanesuper, в ошибке же все написано
25 марта 2016 г. 2:35, спустя 23 минуты 32 секунды
@vanesuper,
Ошибка 500 Internal Server Error
Если вы получили сообщение 500 Internal Server Error, посмотрите лог сервера /var/log/apache2/error.log[Wed Mar 19 15:19:15.740781 2014] [cgid:error] [pid 3493:tid 139896478103424] (8)Exec format error: AH01241: exec of '/var/cgi-bin/echo.pl' failed [Wed Mar 19 15:19:15.741057 2014] [cgid:error] [pid 3413:tid 139896186423040] [client 192.120.120.120:62309] End of script output before headers: echo.pl
Это может произойти, если скрипт не начинается с sh-bang, либо не указывает на корректное размещение установленного Perl. Первая строка должна быть такая:
#!/usr/bin/perl
@vanesuper, я вас попросил выполнить команды в предыдущем посте, вы это сделали? Покажите вывод команд
@vanesuper, и еще, апачем уже никто почти не пользуется, это тупиковый путь развития вас как разработчика веб-приложений
cgi тоже не используется уже и я не понимаю как вы свой cgi запускаете через mod_wsgi апача
Почитайте
Сейчас популярность имеют в python-webdev: uWSGI/gunicorn, Supervisor, Nginx, Django/Flask, PostgreSQL/MongoDB/MySQL
Почитайте про эти технологии чтобы создать эффективное приложение
Perl/CGI script with Apache2
ru.perlmaven.com
Django. Запуск проекта в связке uWSGI и Nginx / Мастерская интернет-разработчика
Очень часто меня просят рассказать как запустить django-проект в продакшен. Я обычно кидаю несколько конфигов со своих проектов и пишу как все установ
adw0rd.com
FreeBSD. Установка и настройка supervisor / Мастерская интернет-разработчика
Supervisor - это система по управлению процессами в операционной системе. К примеру, у вас есть программы, которые надо перезапускать по определенным
adw0rd.com
27 марта 2016 г. 2:01, спустя 1 день 23 часа 25 минут
@adw0rd, Залил на другой сервер(тест [vanesuper.temp.swtest.ru]).Теперь проблема уже в кодировке utf-8.Без кириллицы всё работает, а с кириллицей нет.
tegi.py
#!/usr/bin/python3.4
# -*- coding: utf-8 -*-
import cgi
import html
import http.cookies
import os
import cgitb; cgitb.enable()
teg=("Content-Type: text/html\n\n")
html1=(u"""<!DOCTYPE HTML>
<html>
<head>
<title>Тест.Алгебра,7 класс.Повторение.</title>
<link rel="stylesheet" type="text/css" href="http://82.146.44.183/style.css" media="all" />
</head>
<body>
<table width=100% align="justify" align="justify">
<tr align="justify" align="justify">
<th align="justify" id="sag"><h1 align="center">Пифагор</h1></th>
</tr>
</table>
<table width=100% height=100%>
<tr>
<td width=20% align="center" id="menu">
<div id="m">
<a class="a" href="http://82.146.44.183/index.html">Главная</a><br>
<a href="http://82.146.44.183/test-math.html">Тесты по Математике</a><br>
<a href="http://82.146.44.183/test-alge.html">Тесты по Алгебре</a><br>
<a href="http://82.146.44.183/test-geom.html">Тесты по Геометрии</a>
</div>
</td>
<td width=60% id="content">""")
html2=(u"""</td>
<td width=20% id="menu">
</td>
</tr>
</table>
</body>
</html>""")
otsiv=(u"""<H1 align="center">Спасибо за отзыв.</h1><br>
<a href="/">На главную страницу</A><br>""")
form.py
#!/usr/bin/python3.4
# -*- coding: utf-8 -*-
import cgi
import html
import http.cookies
import os
import cgitb; cgitb.enable()
from tegi import *
print(teg)
print(html1)
print(otsiv)
print(html2)
form = cgi.FieldStorage()
name=form.getfirst("name","none")
email=form.getfirst("email","none")
predl=form.getfirst("predlog","none")
f = open('otvet.txt','a')
f.write('имя :'+name+'\n')
f.close
f = open('otvet.txt','a')
f.write('email: '+email+'\n')
f.close
f = open('otvet.txt','a')
f.write('отзыв:'+predl+'\n'+'\n')
f.close
тест
vanesuper.temp.swtest.ru
28 марта 2016 г. 0:21, спустя 22 часа 19 минут 24 секунды
Лучше использовать virtualenv, и третьему питону coding utf-8 не нужен
и f.close ничего не делает, и вообще по всей видимости проблемы с питоном
И нафига нужны абсолютные ссылки? И вообще уже всё изобретено, зачем говно делать -
Ну или
Выглядит словно какая-то курсовая работа студента-долбоеба, прошу прощения если кого-то обижаю.
Python
Codecademy is the easiest way to learn how to code. It's interactive, fun, and you can do it with your friends.
codecademy.com
Getting Started with Django
gettingstartedwithdjango.com
Quickstart — Flask Documentation (0.10)
flask.pocoo.org
28 марта 2016 г. 1:27, спустя 1 час 6 минут 17 секунд
@vanesuper, а где посмотреть лог ошибок?
28 марта 2016 г. 5:22, спустя 3 часа 55 минут 20 секунд
@adw0rd, form.py заработал нормально,а test.py не работает до сих пор.
error.log
vanesuper.temp.swtest.ru [Mon Mar 28 11:26:55 2016] [error] [client 5.18.225.34] File does not exist: /home/v/vanesuper/public_html/favicon.ico, referer: http://vanesuper.temp.swtest.ru/
vanesuper.temp.swtest.ru [Mon Mar 28 15:03:41 2016] [error] [client 91.192.22.214] File does not exist: /home/v/vanesuper/public_html/favicon.ico, referer: http://vanesuper.temp.swtest.ru/cgi-bin/form.py?name=%D0%B8%D0%BC%D1%8F&email=%D0%B5%D0%BC%D0%B0%D0%B9%D0%BB&predlog=%D0%BF%D1%80%D0%B5%D0%B4%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5
vanesuper.temp.swtest.ru [Mon Mar 28 15:11:57 2016] [error] [client 91.192.22.214] File does not exist: /home/v/vanesuper/public_html/favicon.ico, referer: http://vanesuper.temp.swtest.ru/
vanesuper.temp.swtest.ru [Mon Mar 28 15:12:09 2016] [error] [client 91.192.22.214] (8)Exec format error: exec of '/home/v/vanesuper/public_html/cgi-bin/test.py' failed, referer: http://vanesuper.temp.swtest.ru/test.html
vanesuper.temp.swtest.ru [Mon Mar 28 15:12:09 2016] [error] [client 91.192.22.214] Premature end of script headers: test.py, referer: http://vanesuper.temp.swtest.ru/test.html
test.py
#!/usr/bin/python3.4
import sys
import codecs
sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())
import cgi
import html
import http.cookies
import os
import cgitb; cgitb.enable()
from tegi import *
form = cgi.FieldStorage()
radio1 = int(form.getfirst("radio_1","none"))
radio2 = int(form.getfirst("radio_2","none"))
radio3 = int(form.getfirst("radio_3","none"))
radio4 = int(form.getfirst("radio_4","none"))
radio5 = int(form.getfirst("radio_5","none"))
radio6 = int(form.getfirst("radio_6","none"))
radio7 = int(form.getfirst("radio_7","none"))
radio8 = int(form.getfirst("radio_8","none"))
radio9 = int(form.getfirst("radio_9","none"))
radio10 = int(form.getfirst("radio_10","none"))
n=int(form.getfirst("numer","none"))
if n==7:
f=open('test7.txt')
name=f.readline()
r1=int(f.readline())
r2=int(f.readline())
r3=int(f.readline())
r4=int(f.readline())
r5=int(f.readline())
r6=int(f.readline())
r7=int(f.readline())
r8=int(f.readline())
r9=int(f.readline())
r10=int(f.readline())
f.close()
if n==11:
f=open('test11.txt')
name=f.readline()
r1=int(f.readline())
r2=int(f.readline())
r3=int(f.readline())
r4=int(f.readline())
r5=int(f.readline())
r6=int(f.readline())
r7=int(f.readline())
r8=int(f.readline())
r9=int(f.readline())
r10=int(f.readline())
f.close()
print("Content-Type: text/html\n\n")
print(html1)
print("""<h1 align="center">""",name,"</h1>")
t=int('1')
if radio1== r1:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r1)
print("<br>")
t=int('0')
if radio2== r2:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r2)
print("<br>")
if radio3== r3:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r3)
print("<br>")
if radio4== r4:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r4)
print("<br>")
if radio5== r5:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r5)
print("<br>")
if radio6== r6:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r6)
print("<br>")
if radio7== r7:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r7)
print("<br>")
if radio8== r8:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r8)
print("<br>")
if radio9== r9:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r9)
print("<br>")
if radio10== r10:
print("Верно")
print("<br>")
t=t+1
else:
print("Неверно,",r10)
print("<br>")
#t=t+0.5
t=int(t/2)
print("<h1>","Оценка:",t,"</h1>")
print(html2)
28 марта 2016 г. 5:38, спустя 16 минут
@vanesuper, запустите в консоли сервера
/usr/bin/python3.4 test.py
какие ошибки видите?
28 марта 2016 г. 5:42, спустя 4 минуты 1 секунду
@adw0rd, там нет консоли.А если и есть,то после тестового периода.
28 марта 2016 г. 5:50, спустя 8 минут 15 секунд
@adw0rd, есть SSH-консоль, доступна после тестового периода.
28 марта 2016 г. 6:10, спустя 19 минут 42 секунды
@vanesuper, ну хотябы локально запустите. Лучше конечно в "SSH-консоли"
@vanesuper, а вообще, как я говорил выше изучите современные технологии. Апач и cgi это далекое прошлое
28 марта 2016 г. 6:26, спустя 15 минут 39 секунд
@adw0rd, Всё новое-хорошо забытое старое.
Вот локально запустил.
127.0.0.1 - - [28/Mar/2016 16:24:18] "GET /test.html HTTP/1.1" 200 -
127.0.0.1 - - [28/Mar/2016 16:24:27] "GET /cgi-bin/test.py?radio_1=1&radio_2=1&radio_3=1&radio_4=1&radio_5=1&radio_6=1&radio_7=1&radio_8=1&radio_9=1&radio_10=1&numer=7 HTTP/1.1" 200 -
127.0.0.1 - - [28/Mar/2016 16:24:27] command: C:\Users\Admin\AppData\Local\Programs\Python\Python35\python.exe -u C:\Users\Admin\Desktop\сайт\cgi-bin\test.py
127.0.0.1 - - [28/Mar/2016 16:24:27] CGI script exited OK
28 марта 2016 г. 6:48, спустя 21 минуту 57 секунд
@vanesuper, ну гадать сложно что там у вас, логов ошибок вы не можете предоставить с сервера
а с учетом того что вы пользуетесь cgi+apache, то вы один в поле воин, комьюнити то почти нет
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!