对于Apache来说,我是一个相当新手,因为我刚刚开始Web开发,所以如果我没有提供足够的信息,请询问更多细节。关于Mac OS X Lion上的Apache
我使用Lion附带的开箱即用的Apache,并且我创建了一个Python应用程序,每隔一段时间需要打印一个UTF-8字符。
但是,无论我使用什么方法,或者尝试了多少次,当我尝试打印出UTF-8字符时,它将丢弃500 Internal Server Error
,而我将一无所有。
我已经试过各种事情:(随着# -*- coding: utf-8 -*-
在代码的顶部)
- 打印出的字符直接从Python代码
- 打印出来使用
.decode('utf-8')
功能的字符。 (这会导致打印出3个单独的字符) - 打印出一个占位符,然后打印出将用符号代替占位符的Jquery(并且页面引发内部服务器错误)
- 打印出一个占位符,然后打印出一个链接到一个将替换它的Jquery脚本。 (Firebug说,当试图访问脚本时,Firefox得到500服务器错误。)
我想不出别的什么。 这就是为什么我在这里问过。
有什么建议吗?
感谢 〜DragonXDoom
编辑:下面尝试了威尔的建议之后,我现在得到以下错误。
<type 'exceptions.UnicodeDecodeError'>: 'ascii' codec can't decode byte 0xe2 in position 0: ordinal not in range(128)
args = ('ascii', '\xe2\x80\xa2', 0, 1, 'ordinal not in range(128)')
encoding = 'ascii'
end = 1
message = ''
object = '\xe2\x80\xa2'
reason = 'ordinal not in range(128)'
start = 0
我并不熟悉Python作为Web语言,但如果您在请求中发送正确的UTF-8内容类型/字符集HTTP标头或同等HTML元标记,则第二种方法可能会正常工作。浏览器可能试图使用ISO-8859-1来解码它。 – 2012-01-12 07:41:17
正如我所说,我很新,所以你可以举一个这样的meta标签或头的例子吗? – DragonXDoom 2012-01-12 07:45:06
这实际上与Apache或Mac OS X无关。:)只是python和unicode,我建议使用这两个标签来代替。 – Arafangion 2012-01-12 08:33:26