Соответствующее предложение на странице, на которую вы ссылаетесь:
Если вы хотите просмотреть вывод на печать из вашего кода Python, вы должны напечатать print "Content-type: text / html \ n \n "как первая строка вывода.
Обратите внимание на первую часть -" если вы хотите просмотреть вывод на печать. "Это только требование, если вы ожидаете, что веб-браузер сможет отображать ваш вывод в формате HTML.Вы также можете вернуть изображения / gif, аудио / mpeg или любой другой допустимый тип MIME.
Dreamhost выдает ошибку, когда я делаю это.
Вы уверены втот?Или ваш браузер отображает ошибку, потому что он получил тип контента, с которым он не знает, что делать?Попробуйте использовать cURL , чтобы поразить ваш сценарий вместо браузера.
(продолжение)
Я подтвердил, что вывод XML действительно работает так, как объявлено, загрузив следующеепростой Python CGI для моей учетной записи DreamHost по адресу http://tests.shermpendley.com/person.py
#!/usr/bin/python
def main():
print "Content-type: text/xml"
print
print '<?xml version="1.0" encoding="UTF-8" ?>'
print '<person born="1912/06/23" died="1954/06/07">'
print ' <name>Alan Turing</name>'
print '</person>'
if __name__ == "__main__":
main()
Тестируя его с помощью cURL, я получаю:
Macintosh:~ sherm$ curl -i http://tests.shermpendley.com/person.py
HTTP/1.1 200 OK
Date: Mon, 28 Mar 2011 00:14:50 GMT
Server: Apache
Vary: Accept-Encoding
Content-Length: 124
Content-Type: text/xml
<?xml version="1.0" encoding="UTF-8" ?>
<person born="1912/06/23" died="1954/06/07">
<name>Alan Turing</name>
</person>
Для диагностики «Ошибка 500 серверов», проверьте свою ошибкужурналы.Подключите (с помощью SSH, SFTP, FTP - все, что вы обычно используете для управления своими файлами) к своей учетной записи и посмотрите на «/home/ndomusername‹/logs/ndomsitename broadcast/error.log» Например, когда я представляю преднамеренноеСинтаксическая ошибка в выше, затем попытался получить его с помощью cURL, я нашел следующее в error.log:
[Sun Mar 27 17:18:10 2011] [error] [client 98.236.96.39] File "person.py", line 3
[Sun Mar 27 17:18:10 2011] [error] [client 98.236.96.39] bogus!
[Sun Mar 27 17:18:10 2011] [error] [client 98.236.96.39] ^
[Sun Mar 27 17:18:10 2011] [error] [client 98.236.96.39] SyntaxError: invalid syntax
[Sun Mar 27 17:18:10 2011] [error] [client 98.236.96.39] Premature end of script headers: person.py