#include "apr_buckets.h"
#include "apr_date.h"
#include "apr_errno.h"
#include "apr_strings.h"
#include "apr_tables.h"
#include "util_filter.h"
#include "http_request.h"
static apr_status_t rdat_filter(ap_filter_t *f, apr_bucket_brigade *b)
{
return ap_save_brigade(f, (apr_bucket_brigade **)&f->ctx, &b, f->r->pool);
}
static apr_status_t read_dat(CH2READ *ch2, request_rec *r)
{
int rv;
ap_filter_rec_t frec = {"READDAT", {rdat_filter}, NULL, AP_FTYPE_RESOURCE, NULL};
ap_filter_t f = {&frec, NULL, NULL, r, r->connection};
char *uri = apr_pstrcat(r->pool, "/", ch2->zz_bbs, "/dat/", ch2->zz_key, ".dat", NULL);
request_rec *rdat = ap_sub_req_lookup_uri(uri, r, &f);
if (!(rv = rdat->status == HTTP_OK ? ap_run_sub_req(rdat) : rdat->status)) {
apr_brigade_pflatten(f.ctx, &ch2->BigBuffer, &ch2->zz_fileSize, r->pool);
apr_brigade_destroy(f.ctx);
ch2->zz_fileLastmod = rdat->mtime ? rdat->mtime
: apr_date_parse_http(apr_table_get(rdat->headers_out, "Last-Modified"));
}
ap_destroy_sub_req(rdat);
return rv ? APR_ENOENT : APR_SUCCESS;
}
----------------------------------------------------------------------
雪だるま版 read.cgi での dat 読み込みは↑な感じかなぁ,というのを何となく.
普通の CGI だと localhost にソケットで接続して(ryってところでしょうけど,
DSO ではサブリクエストを使えばいいんでソケット不要ですね.
ただ,mod_rewrite ではサブリクエストで reverse proxy を使えないという
制限があるんで,ProxyPass ディレクティブで↓のように指定で.
ProxyPass /livejupiter/kako !
ProxyPass /livejupiter/_datArea !
ProxyPass /livejupiter/ http://live22priv.2ch.net/livejupiter/
ProxyPassReverse /livejupiter/ http://live22priv.2ch.net/livejupiter/
CacheDisable /livejupiter/kako
CacheDisable /livejupiter/_datArea
CacheEnable disk /livejupiter/
過去ログ・dat 落ちログに関しては
・ ライブな dat のように転送 (live22 -> live22x) の即時性は要求されない.
・ mod_disk_cache のキャッシュ領域を /md に確保するとして,
即時性が要求されないデータで /md を食い潰すのはもったいない.
ということで,それらは rsync でマターリ転送することにすれば,
offlaw.cgi は無修正で Ok でしょうかね.
read.cgi再開発スレ Part2
■ このスレッドは過去ログ倉庫に格納されています
287▲ ◆cZfSunOs.U
2005/07/24(日) 14:12:59ID:6ksh67gl0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 頼みの新米に異変 干上がる田んぼに…枯れ始める苗 コメ農家悲鳴「心折れそう」 [ぐれ★]
- 「水道水で食中毒」14人が下痢や腹痛などの症状を訴え 「カンピロバクター」を検出 群馬・神流町 [少考さん★]
- 【ラジオ】永野芽郁、田中圭との不倫疑惑後初の『ANNX』で謝罪「誤解を招くような行動…反省」「本当にごめんなさい」★9 [Ailuropoda melanoleuca★]
- 【Switch2】争奪過熱の任天堂スイッチ2、行き渡るのは1年以上先か 応募条件厳しく予約権プラチナ化 [煮卵★]
- 【アイドル】『≠ME』、暴行行為でイベント中止の状況判明… 20数人に優先入場券を数百枚強奪される トラブル同時多発発生 [冬月記者★]
- 【国際】81億円の抽象画を子どもが損傷、オランダの美術館 [シャチ★]
- __石破、ベトナムの脱炭素に2.9兆円投資「ベトナムの声に誠実に耳を傾けていく」 [827565401]
- コテ粘粘が発狂してコテ粘連呼するお🏡
- 財務省解体デモ、規模が大きくなりすぎて不穏な感じになり始める [606757419]
- 危険物乙四の勉強しているんだが
- 【石破毛髪】 テレ東、来日した外国人旅行者(兄弟)の弟の方を年上扱いしてしまい謝罪 [732912476]
- 【画像】フジテレビに4月に入社した新人女子アナшшшшшшшшшшшш [632966346]