我想访问一个名称中包含UTF-8字符的PHP文件.
该文件中没有BOM.它只包含一个显示一些unicode字符的echo语句.
从浏览器访问PHP页面(FireFox 3.0.8,IE7)会导致HTTP错误500.
Apache日志中有两个条目(文件是/க.php;字母க是复合的,对应于下面日志中的字符\ xe0\xae\x95):
[2009年4月4日星期六09:30:25] [错误] [客户端127.0.0.1] PHP警告:未知:无法打开流:第0行的"未知"中没有此类文件或目录
[Sat Apr 04 09:30:25 2009] [错误] [客户端127.0.0.1] PHP致命错误:未知:未能打开所需的'D:/ va/ROOT /\xe0\xae\x95.php'(include_path ='在第0行的Unknown中有.; C:\ php5\pear')
当文件和目录名称为英语时,同一页面有效.在相同的设置中,使用SSI对这些页面没有问题.
编辑
删除了网址重写的信息,因为它似乎不是一个因素.
删除mod_rewrite时,PHP文件仍然无效.如果文件重命名为非UTF名称,则工作.但是,shtml甚至可以在文件和/或路径名中使用UTF字符.