应用引擎:具有特殊字符的静态文件导致找不到404文件

时间:2014-07-22 16:48:27

标签: google-app-engine character-encoding http-status-code-404 static-files

正如tite所说;我在访问具有特殊字符的静态文件时遇到问题。

我有以下文件夹结构:“war / public / mystuff / images /my_weird_åäö_chars.png”,但当我尝试访问其中包含特殊字符的图像时,我得到响应404.任何其他不包含特殊字符的文件

在Dev-server上一切正常,但在Production-server上找不到文件。即使我逃脱了网址中的字符,也无法找到它们。

我应该在web.xml中设置任何设置,以便它允许文件名中包含UTF-8字符吗?或任何其他设置?

值得一提的是,我可能无法更改如何我访问这些文件(意味着我无法在检索文件之前将url-escape路径转义),页面是使用Construct 2创建,它将“app”构建为HTML5。

谢谢!

1 个答案:

答案 0 :(得分:0)

我害怕你运气不好。我对特殊字符(在这种情况下为〜)也有同样的问题。当运行mvn appengine时:更新日志吐出:

Aug 13, 2015 3:56:15 PM com.google.appengine.tools.admin.AppVersionUpload addFile
SEVERE: Invalid character in filename: __static__/img/0~452203~200~150~2

您似乎无法上传带有非ascii字符的静态文件,因此404实际上是404(文件未发送到GAE)

这里有一个错误跟踪线程,但似乎没有取得任何进展: https://code.google.com/p/googleappengine/issues/detail?id=2211

我环顾四周,但除了重命名文件外没有找到解决方法