【问题标题】:Apache - file not send with UTF-8Apache - 文件不使用 UTF-8 发送
【发布时间】:2015-01-09 20:49:04
【问题描述】:

在我的 Android 应用程序中,我需要通过网络访问 JSON 文件。因此我使用凌空抽射。它工作得很好,但特殊字符显示错误。 JSON 文件存储在我的服务器上,运行 apache。我以为我已经通过编辑 httpd.conf 并添加

解决了问题
AddCharset UTF-8 .json

当我第一次使用我的应用程序访问文件时,它会显示特殊字符。但第二次特殊字符再次未知。 当我连接到我的服务器并编辑和保存文件(或多或少有一些空格)时,第一次可以再次工作,但第二次不行。

我使用存储在 Dropbox 中的文件测试了该应用程序,它运行起来非常棒,所以问题一定出在我的服务器上。

我以前从未使用过 apache,所以我不知道在哪里寻找和寻找什么。

【问题讨论】:

    标签: android json apache utf-8 android-volley


    【解决方案1】:

    好的,我自己发现的。它与缓存控制有关。因为文件没有改变,我不知何故没有得到正确的文件,特殊字符被弄乱了。

    为了解决这个问题,我通过添加禁用了 apache 中的缓存:

    FileETag None
    
    Header unset ETag
    Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
    Header set Pragma "no-cache"
    Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
    

    进入 /etc/apache2/httpd.conf 文件。

    要使用标题,您还必须输入

    sudo a2enmod 标头

    进入你的终端。

    之后,重新启动您的 apache,它现在应该忽略所有缓存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      相关资源
      最近更新 更多