ユーザーのブラウザーから要求がある度にCGIを動かしていたらサーバーの生産性が低いです。特にカミュプリィの『西暦・年齢・和暦・干支対照表』CGIは1年に1回更新すればよい表ですので、要求の度にCGIを動かしていたら、、、うん、無駄よね。

CGIの対応

 CGIですので実行結果は標準出力へHTMLの内容を出します。また、HTMLの内容をそのままキャッシュファイルにも書き出します。こうしてCGIを動かす度にキャッシュファイルが更新されるようにしました。

HTTPサーバーの対応

 CGIを置いたディレクトリに「.htaccess」設定ファイルを作成します。URLの指定がディレクトリ止まりであれば、キュッシュファイルを優先して開くようにしました。
 次の例では「まるまる.html」キュッシュファイルが優先で、Pythonで書いた「まるまる.cgi」CGIが劣後になりましす。

DirectoryIndex まるまる.html まるまる.cgi

 これで、普段はCGIを置いたディレクトリを呼び出すと、「まるまる.html」キャッシュファイルがクライアントに渡されます。
 キャッシュファイルがないときは「まるまる.cgi」CGIが呼び出されます。キャッシュファイルがないのは最初だけなので、ディレクトリを呼び出してCGIを実行するのは最初の1回だけですね、この設定は不要かもしれません。

OSの対応

 タイマーで定期的にプログラムを開始できるクーロン(cron)で、毎年1月1日に「まるまる.cgi」CGIを呼び出します。

管理者の対応

 年号が変わったときは、年号ファイルの設定を変更してから、CGIのファイル名を含めたURL「https://www.commuply.co.jp/tools/wareki/まるまる.cgi」をブラウザーから呼び出します。
 CGIのプログラム内容を変更したときもCGIのファイル名を含めたURLをブラウザーから呼びます。

.htaccess (2) @False (3) @True (5) ByRef (3) ByVal (3) CGI (6) cron (2) CSS (8) Excel (3) False (3) Goto (3) HTML (4) httpd.conf (2) if (3) Java (5) Java Servlet (3) Linux (3) List (3) Lotus Script (35) Lotus 式言語 (28) ls (2) MariaDB (4) Notes/Domino (12) null (5) Option Compare (3) Path (3) PHP (5) Python (7) Spring Boot (3) True (3) UTF-8 (4) VBScript (29) Windows (9) インストール (6) セットアップ (2) ダウンロード (2) ノーコード (4) ファイル一覧 (2) ローコード (3) 変換 (3) 変数 (3) 比較方法 (7) 環境変数 (4) 配列 (4) 開発環境 (4)