1. URL重写规则中指定编码在Apache的.htaccess文件中,URL重写规则可以指定编码,例如:
RewriteRule ^(.*)$ /index.php?s=$1 [L,QSA,NE,EP,N,R=301,NC,URLENCODE(UTF-8)]
URLENCODE(UTF-8)指定URL编码为UTF-8,从而解决中文乱码问题。
2. header(“Content-Type: text/html; charset=utf-8”);在PHP页面开头添加HTTP头信息,指定编码为UTF-8:
<?php header("Content-Type: text/html; charset=utf-8"); ?>
3. URL中使用中文时,需要进行 urlencode() 编码对URL中的中文参数进行urlencode编码,例如:
<?php $s = urlencode('中文内容'); ?>
4. Nginx配置utf8编码在Nginx的server配置中添加编码定义:
server { charset utf-8; }
5. Tomcat配置URIEncoding=”UTF-8″在Tomcat的server.xml配置文件中添加URIEncoding=”UTF-8″:
xml <Connector URIEncoding="UTF-8" port="8080" .../>
这将指定Tomcat使用UTF-8编码解析URL和表单参数。
综上,解决伪静态URL中文乱码的关键在于指定正确的编码,确保从输入URL到页面显示的整个过程使用统一的编码。
© 版权声明
本文刊载的所有内容,包括文字、图片、音频、视频、软件、程序、以及网页版式设计等部门来源于互联网,版权均归原作者所有!本网站提供的内容服务于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。
联系信息:邮箱aoxolcom@163.com或见网站底部。
联系信息:邮箱aoxolcom@163.com或见网站底部。
THE END
请登录后发表评论
注册
社交帐号登录