私はapache2構成の専門家です。ApacheのGODSを見て、特定のヘッダーを使っていくつかのブラウザをキャッシュしないようにしています。クッキーは、私がやっているOAuthの実装に必要なものです。Cache-Controlを削除できません:Apache2のno-cache = "set-cookie"
私はコマンドを実行します。次のヘッダーを返しfoobar.com
lwp-request -e -d http://foobar.com
は、私のサイト:
Cache-Control: no-cache="set-cookie"
Connection: Close
Date: Thu, 13 Jan 2011 06:18:00 GMT
Vary: Accept-Encoding
Content-Language: en-US
Content-Type: text/html;charset=UTF-8
Client-Date: Thu, 13 Jan 2011 06:18:01 GMT
Client-Peer: 50.16.212.144:80
Client-Response-Num: 1
Client-Transfer-Encoding: chunked
Link: </images/ic_fav_alpha_32.png>; /="/"; rel="shortcut icon"
Set-Cookie: JSESSIONID=C5055D83F9B5A52C062D8A9F616D62AB; Path=/
Set-Cookie: AWSELB=3505DFB9122FAFC80483E17CBEB5E23D24546B00A71218A5BAE3B79F14317437BEAEDA7FECDE95AFFF6463C9769D0D0E3214FD9D67BAA906438E5D0FA925CD323D7E860C2A;MAX-AGE=600
Title: Foobar Home
X-Meta-Description: Foobar Home Page
X-Meta-Generator: Foobar
X-Meta-Google-Site-Verification: u9YkTj5gr6aeYBst1Aac-B_5cCvJe_Ataauqep_EwEE
X-Meta-Googlebot: index,follow
X-Meta-Refresh: 20
X-Meta-Robots: index,follow
だから私はapache2のための私のサイトの設定でのCache-Controlヘッダの設定を解除しようとしますなぜなら、このヘッダーは一部のブラウザにクッキーを受け入れさせないと思うからです。 私は彼らが私のクッキーを受け入れるようにしたい!
<VirtualHost *:80>
ServerName www.foobar.com
ServerAlias foobar.com
ProxyPass/ajp://localhost:8009/
ProxyPassReverse/http://localhost:8080/
ProxyPreserveHost On
# alert, emerg.
LogLevel warn
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
ServerSignature On
Header unset Cache-Control
Header append Cache-Control "public"
</VirtualHost>
そして今、私はキャッシュなしヘッダーが消えるとfoobar.comために「公共」になることを期待するが、それが起こるん。これは、apache2の再起動後のCache-Controlヘッダである:
Cache-Control: public
Cache-Control: no-cache="set-cookie"
これは私の予想ではありません、私は設定解除は、特定のタイプのすべてのヘッダの設定を解除するだろうと思いました!
注。これはlocalhost:8080のtomcatサーバーの前でajpプロキシとして動作しているApache HTTPサーバーです。私はそれが問題ではないと思っています。
この厄介なヘッダーを取り除く方法はありますか?
感謝!
すごい*これは*スタンパがありますか? –
こんにちは、これはどのような解決策を見つけましたか? – Muk