我有一个生成xml文件的应用程序,它们可能包含特殊字符。我的问题是如果带有特殊字符的url被编码,Apache就不会给我xml文件。
实施例: 文件ABCö.xml可由http://host/path /ABCö.xml访问,但如果使用编码的URL http://host/path/ABC%F6.xml访问,则apache会给我404.
这是httpd.conf中的设置还是我需要som重写才能使两个网址都能访问xml文件?
答案 0 :(得分:3)
您可能遇到编码问题。
大多数(全部?)现代浏览器在URL中编码特殊字符时使用UTF-8,用户直接将其输入地址栏。
因此,当您在Firefox中输入ABCö.xml
时,它会将ö
转换为其UTF-8多字节表示形式,因此最终结果将是
ABC%C3%B6.xml
而不是单字节
ABC%F6.xml
其中只有一个会起作用。检查文件名中使用的编码。