ラック アプリで生成されたページの memcaching に少し問題があります。
次の (ruby) コードを使用して、ラック アプリによって生成されたページを memcache に保存しています。
require 'dalli'
memcached = Dalli::Client.new("localhost:11211")
memcached.set(req.path_info, response[2][0])
(ここで、response[2][0] は生成された html コードです)
私のnginxサーバー構成には、次のものがあります。
location @rack {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:9292;
}
location @memcached {
set $memcached_key $request_uri;
memcached_pass localhost:11211;
default_type text/html;
error_page 404 = @rack;
}
location / {try_files @memcached;}
これは機能しますが、完全ではありません。ブラウザに渡されるコンテンツは次で始まります。
I"¯[<!DOCTYPE html><html ...
私の質問は、html コードの前にある余分なビットは何ですか?ブラウザの結果に表示されないようにするにはどうすればよいですか?