我有这个简单的PHP脚本:
<!DOCTYPE html>
<html lang="es-ES" xmlns="http://www.w3.org/1999/xhtml" xml:lang="es-ES">
<head>
<meta charset="iso-8859-1" />
</head>
<body><p><?php
if(isset($_GET['echo'])){
echo $_GET['echo'];
}
?></p>
<form action="" method="get">
<input type="text" name="echo" value="" />
</form>
<p>áéíóúàèìòùñ</p>
</body>
</html>
提交西班牙语单词“cañón”会生成GET参数字符串?echo=ca%F1%F3n
,我的主机会以406 Not Acceptable
错误回答。保留charset iso-8859-1
对我来说很重要,并且脚本文件用ANSI编写。
使用表单元素中的accept-charset="UTF-8"
属性可以避免错误,但回显到页面中的单词显示为“cañón”。
是否有某种方法可以配置Apache,希望使用.htaccess
来避免这种行为并在结果页面上正确呈现“cañón”这个词?
感谢您的帮助。
答案 0 :(得分:0)
最后,该问题的解决方案是要求我的主机检查mod_security
配置。他们以某种方式修复它,现在脚本运行正常。
答案 1 :(得分:-1)
我认为你不能使用“回声”这个词。作为变量,因为它是php语法单词之一。尝试使用其他变量。