Найти - Пользователи
Полная версия: Python и CGI
Начало » Web » Python и CGI
1
pyOut
Пишу cgi скрипт на питоне, нужно сделать так чтобы после исполнения скрипта открылась указанная web-страничка. Как мне лучше поступить?
slivlen
Думаю лучше всего поступить так:

#!/usr/bin/python

do_smth_bad :)

print "Location: http://redirect.here.tu/index.html"
pyOut
2sliblen спасибо. Данная конструкция не работает в случае если я пишу так:

#!/usr/bin/env python
print “Content-type: text/html\n”
#выполняю какие-то действия
print "Location: http://abracadabra.ru"

Может есть выход из данной ситуации?
nerezus
перед этой конструкцией не должно идти вывода в браузер.
slivlen
pyOut
2slivlen спасибо. Данная конструкция не работает в случае если я пишу так:

#!/usr/bin/env python
print “Content-type: text/html\n”
#выполняю какие-то действия
print "Location: http://abracadabra.ru"

Может есть выход из данной ситуации?
“Content-type: text/html\n” - это строка заголовка HTTP, которая сообщаят браузеру что дальше идет контент вэб-страницы, поэтому "Location: http://abracadabra.ru“ им воспринимается как часть страницы, в этом и кроется ошибка, т.к. ”Location: http://abracadabra.ru" - это часть HTTP заголовка и должна идти соответсвенно перед контентом.
pyOut
Мне нужно что бы сначало выполнилось все что находится после print “Content-type: text/html\n” и затем выполнилось Location: http://abracadabra.ru
slivlen
Я так понимаю что скрипт должен выполниться и вывести пользователю какую-то инфу(иначе зачем вообще выводить “Content-type”?) и после этого уже направить его на другую страницу?
pyOut
ну типа да.
slivlen
Тогда надо просто в html заголовок добавить:

<head>

<meta http-equiv=“refresh” content=“1;URL=page_to_redirect.html” />

</head>

1 - это время(сек) через которое произойдет переход на страницу page_to_redirect.html
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