Ошибка Python при использовании азиатских символов через IIS - PullRequest
1 голос
/ 02 февраля 2011

Я сделал этот очень простой скрипт для проверки в браузере.setdefaultlanguage уже был utf-8

import sys
sys.getdefaultencoding()
f = 'ฟ'
print "Content-Type: text/plain;charset=utf-8"
print f`

В момент добавления f = 'some asian text' я всегда получаю страницу ошибки с IIS - веб-сервер 502 получает неверный ответ.Тем не менее, сам код выполняется и печатает символ очень хорошо, если я открою его с Python IDLE.

Любая помощь очень признательна.Спасибо!

Дополнительная информация: Я полагаю, что скрипт запускается на Windows Server 2008 R2, IIS 7.5 и WSGI.

1 Ответ

1 голос
/ 02 февраля 2011

Мне кажется, проблема в том, что вы выводите заголовки HTTP. Заголовки заканчиваются двойным переводом строки (обычно "\ r \ n \ r \ n"), в то время как у вас есть только один. Веб-сервер будет обрабатывать азиатский символ как часть заголовков HTTP (где это недопустимо) и, таким образом, выдает ошибку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...