「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>アプリケーション設計のポイント]]

*目次 [#yf53fe18]
#contents

*概要 [#a9338cf0]
.NETによるキャッシュ・コントロール処理

*詳細 [#s1a06ac9]

**方針 [#jce5c581]
キャッシュ・コントロールについては、アプリケーションの不整合を引き起こす可能性があるので無効化する。

>キャッシュ有効化は、主に性能を考慮したものであるが、~
Webアプリケーションでは、アプリケーションの不整合を懸念して無効化して利用することが多い。

また、”Open棟梁”の「[[不正操作防止機能]]」・「[[画面遷移制御機能]]」を併用することで、キャッシュ参照の問題を回避することができる。

**設定 [#g23b047e]

***インフラ側から設定 [#kfda9754]
Cache-ControlのHTTPヘッダーは、IISから設定することもできる。

キャッシュ、HTTP圧縮は、IISでも可能だがアプライアンスに~
負荷をオフロードすることもできるの導入なども合わせて検討する。

***プログラム側から設定 [#qdcc57c7]
例:

 // http - How to control web page caching, across all browsers? - Stack Overflow
 // http://stackoverflow.com/questions/49547/how-to-control-web-page-caching-across-all-browsers
 
 // Using ASP.NET:
 Response.AppendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
 Response.AppendHeader("Pragma", "no-cache"); // HTTP 1.0.
 Response.AppendHeader("Expires", "0"); // Proxies.

https://github.com/OpenTouryoProject/OpenTouryo/blob/develop/root/programs/CS/Frameworks/Infrastructure/Business/Presentation/MyBaseController.cs#L385

*参考 [#xe1ff2dd]
-[[キャッシュ・コントロールのHTTPヘッダ - マイクロソフト系技術情報 Wiki>https://techinfoofmicrosofttech.osscons.jp/index.php?%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E3%83%BB%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%81%AEHTTP%E3%83%98%E3%83%83%E3%83%80#rbd8a4d8]]
-[[キャッシュ・コントロールのHTTPヘッダ - マイクロソフト系技術情報 Wiki>https://techinfoofmicrosofttech.osscons.jp/index.php?%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E3%83%BB%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB%E3%81%AEHTTP%E3%83%98%E3%83%83%E3%83%80]]

-IPA ISEC セキュア・プログラミング講座:~
Webアプリケーション編 第5章 暴露対策:プロキシキャッシュ対策~
https://www.ipa.go.jp/security/awareness/vendor/programmingv2/contents/405.html
-webにおけるキャッシュと時刻の話 - Qiita~
http://qiita.com/0xfffffff7/items/56a8d6832c152fbeeacf
-HTTPキャッシュについて整理してみた - Qiita~
http://qiita.com/karore/items/2dc6ab8347c940ea4648

-最新バージョンでは以下に従って処理を改修しました。
--Implement no-cache processing in the base class.~
Issue #218 · OpenTouryoProject/OpenTouryo~
https://github.com/OpenTouryoProject/OpenTouryo/issues/218

IP:210.234.63.131 TIME:"2021-04-01 (木) 12:22:47" REFERER:"https://opentouryo.osscons.jp/index.php?cmd=edit&page=%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%A5%E3%83%BB%E3%82%B3%E3%83%B3%E3%83%88%E3%83%AD%E3%83%BC%E3%83%AB" USER_AGENT:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36"

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS