欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python3.x + Apache2.x 输出html中文乱码问题解决方案

程序员文章站 2022-04-10 12:02:43
...

Python3.x + Apache2.x 输出html中文乱码问题

以下内容仅供参考使用,结合自身情况选择
代码示范:

#!H:/worksoft/Python38/python.exe #Python安装路径
# coding:utf-8  #字符编码
print("Content-type:text/html;\n")
print('<!DOCTYPE html>')
print('<head>')
print('<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />')
print('<title>我的第一个 CGI 程序!</title>')
print('</head>')
print('<body>')
print('<h2>Hello Word! 这是我的第一CGI程序</h2>')
print('</body>')
print('</html>')

通常在这个时候我们会以为是正常的,当你运行访问的时候会发现出现乱码了,那么解决方案来了:

方案一:去掉 <meta http-equiv=“Content-Type” content=“text/html; charset=UTF-8” />

方案二:将charset=UTF-8修改为charset=GB2312。

方案三:引入sys模块,使用sys.stdout = codecs.getwriter(‘utf-8’)(sys.stdout.buffer)。

方案四:修改Appache/conf/httpd.conf文件中AddDefaultCharset状态on或者字符utf-8,没有则添加。(不推荐)

语法:AddDefaultCharset On|Off|charset ,默认值 AddDefaultCharset Off。
说明:当应答内容是text/plain或text/html时,在HTTP应答头中加入的默认字符集。