メモ代わり。てきとーに。 いや、ですからてきとーですって。 2年前ぐらいにPythonあたりでメールくれた方、ごめんなさい。メール紛失してしまい無視した形になってしまいました。。。

ラベル mod_chxj の投稿を表示しています。 すべての投稿を表示
ラベル mod_chxj の投稿を表示しています。 すべての投稿を表示

2011年3月12日土曜日

[Apache][mod_chxj] POST時微妙

POST時の動きが微妙なんだけど
クライアント側から送付された文字コードを変換したいからなんだよね・・・

header_fixup時にContent-Lengthを決めないといけないっぽいんだけど
そうするとPOSTデータはどっから持ってくるんだろう・・・

input filter側でPOSTデータは読めるんだけどそうすると
Content-Lengthを変更できないっぽい。

だもんでinput_filterは止めて、input_handlerで処理するように
し、serf使ってローカルに対してPOSTするようにしてる。 

1.3の時には変更(していいかどうかは別にして)できたんだけど、
2.xではできないみたい。(もっともっと調査必要)

なんだか、そもそも勘違いしていそうな気もするんだけど。

メーリングリストなんかでも、POSTデータを変更したい人はいるようで
質問投げてるみたいなんだけど、「何でそんなこと必要なのか」で終わっちゃっている。。。

えー。。。

。。。

。。



--
追記

apache付属のmod_charset_liteのinput filter部にも書いてあった。


A Content-Length header is present, but it won't be valid after
conversion because we're not converting between two single-byte
charsets. This will affect most CGI scripts and may affect
some modules.
Content-Length can't be unset here because that would break
being able to read the request body.
Processing of chunked request bodies is not impacted by this
filter since the the length was not declared anyway.
 

ま、無理やりセットしてもinput filterの時点では有効にならないようなんだけど。


ということから、やはり

1) Content-Lengthは無視する
2) 内部から外部リクエスト投げる
  

の2つぐらいしか解決策は思いつかない

.

2009年8月21日金曜日

[mod_chxj] mod_chxjでFlashを使う

今のところ、mod_chxjにはFlashに関して、特になんの機能もないので、
chxj:ifタグを使用して以下のようにする。


<chxj:if lang="xhtml" lang="chtml" lang="hdml" lang="jhtml" lang="jxhtml">
<object data="/swf/top_logo.swf" type="application/x-shockwave-flash" width="240" height="100">
<param name="bgcolor" value="#000000">
<param name="loop" value="on">
<param name="quality" value="high">
</object>
</chxj:if>
 


っと。

そんだけ。
.

2009年7月18日土曜日

[mod_chxj][携帯][deviceatlas] deviceatlas徘徊中

deviceatlasというサイトを、
http://sourceforge.jp/forum/forum.php?thread_id=23365&forum_id=6550
で教えてもらった。

googleで調べると、結構有名っぽい?

早速freeユーザ登録して、サイト内を徘徊中。

.

2009年3月19日木曜日

[mod_chxj] mailto: v2

メモ。

User-AgentがVodafoneとかSoftBankで始まるもの
ページの文字コードに関係なく、utf8にしてURLEncodeにしてsubjectパラメータ、bodyパラメータに設定

User-AgentがJ-PHONE/3.0で始まるもの
Windows-31Jにしてmailbody属性にURLEncodeしたbody部の値を設定

User-AgentがJ-PHONE/4.1/J-SA51で始まるもの
Windows-31Jにしてmailbody属性にURLEncodeしたbody部の値を設定
Windows-31JにしてsubjectパラメータにURLEncodeしたsubject部の値を設定

User-AgentがJ-PHONE/4.1またはJ-PHONE/4.0で始まるもの
Windows-31Jにしてmailbody属性にURLEncodeしたbody部の値を設定

User-Agentが上記以外でJ-PHONEで始まるもの
Windows-31Jにしてmailbody属性にURLEncodeしたbody部の値を設定
Windows-31JにしてsubjectパラメータにURLEncodeしたsubject部の値を設定

User-Agentがさらに上記以外の場合
Windows-31JにしてsubjectパラメータにURLEncodeしたsubject部の値を設定
Windows-31JにしてbodyパラメータにURLEncodeしたbody部の値を設定


・・・であってるかな?
.

2009年3月18日水曜日

[mod_chxj] mailto:

mailto:が面倒。

特にSoftBank/Vodafone/J-PHONEあたり。


どうにかしようっと。
.

2009年3月12日木曜日

[その他][mod_chxj] AdWords

今日Googleでmod_chxjで検索したら、

なんと!

あの有名(少なくとも私の中ではかなり有名)な会社が
「スポンサーリンク」として表示されているではありませんか!
ということは、キーワードに「mod_chxj」を指定してくれたということかな?


変かもしれないけど、かなり嬉しいです。

ちょっとは認めてくれたということでしょうか???
いや、ここは都合よく、認めてくれたと思うことにします。


そもそもAdWordsの認識が間違っているかもしれないけど、
まぁいいや。
.
--
追記 4/1

と思ったら今日から表示されなくなっていた。。
がっくし。
.

2008年12月20日土曜日

[mod_chxj] 0.12.31リリース

これまた今さら必要ないかもしれませんが、、

  1. QSConvOff
  2. JRConvOff
  3. NoCacheOn
の3つのオプションを加えました。

それぞれ、

ChxjConvRule "^/.+$" "EngineOn,QSConvOff,JRConvOff,NoCacheOn" "UTF-8"
 

などと指定します。

QSConvOff
QUERY_STRINGのhiddenタグへの振り替え処理を無効にします。

JRConvOff
SoftBank予約パラメータを透過的に扱えるようにするための変換を無効にします。

NoCacheOn

Pragma: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: no-cache, no-store
 

の3つのヘッダを強制出力します。既にセットされている場合は上書きします。

いつも、

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans
PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean
id="noCacheHandlerInterceptor"
class="org.springframework.web.servlet.mvc.WebContentInterceptor">
<property name="cacheSeconds"><value>0</value></property>
<property name="useCacheControlHeader"><value>true</value></property>
<property name="useExpiresHeader"><value>true</value></property>
</bean>
</beans>
 

なんてのを入れているのですが、毎回セットアップするのが馬鹿馬鹿しい。
ということで入れました。

HTMLファイルを直接変換させる場合などキャッシュが効きまくるのを防ぎます。

Wikiにも書きましたので、そちらもご参照ください。

.

2008年12月19日金曜日

[git][mod_chxj][subversion] trunkへのdcommitが失敗

reset --softオプションのメモ。

subversionのtrunk用ブランチmaster-svn
と、
gitのmaster用ブランチmaster
と2つあって、いつもmasterで修正をし、


$ git commit -a
$ git push sourceforge.git master
 

などとやって、sourceforge.jpにコミットする。
その修正分をsubversionにも反映したく

$ git checkout master-svn
$ git merge master --no-ff
 

とマージし、

$ git svn dcommit
 

とやっているんだけど、やり方がまずいのか、突然やたらと
コンフリクトが出てなんか変。

やむを得ないので、

$ git branch -D master-svn
$ git checkout -b master-svn master
 

とmasterからブランチを作成し、

$ git checkout master-svn
$ git reset --soft trunk
 

で切り替え、

$ git svn dcommit
 

で解決。
多分次から、git merge masterでいけると思う。。

.

2008年12月18日木曜日

[git][mod_chxj] clone

sourceforge.jpにも書いてあるし、もちろんドキュメントにも書いてあるんだけどメモ。


git clone git://git.sourceforge.jp/gitroot/modchxj/mod_chxj.git
 

が、

svn checkout http://svn.sourceforge.jp/svnroot/modchxj/mod_chxj
 

みたいな感じ。


git clone git://git.sourceforge.jp/gitroot/modchxj/mod_chxj.git hehehe
 



svn checkout http://svn.sourceforge.jp/svnroot/modchxj/mod_chxj hehehe
 

みたいな感じ。

originがセットされてるんで、branchを取りたい場合は

cd hehehe
git checkout -b branch_0.12.0 origin/branch_0.12.0
 

でいける。



で?
.

2008年12月16日火曜日

[mod_chxj] 0.12.28リリース

0.12.28をリリースしました。

0.12.27で追加したguidに関する機能のバグ修正と、SoftBankの予約パラメータを透過的に扱う機能追加です。

特にあたらしい設定はありません。

予約パラメータについてはこちらを参照ください。
.

[mod_chxj] ふと、Apache2::Filter

Apache2::Filterを使えば、結構楽ちんだと思いますよー。

しかも、perlハッカーらがいろいろ便利なモジュール作ってくれてるし。

というか、すでに誰かフレームワーク作ってるんで、今から作る必要ないような気もしないでもない。
.

2008年12月15日月曜日

[mod_chxj] POSTデータ中の絵文字を変換する件

心配になったので、書いておきます。

現在のリリースバージョンでは、POST/GETデータ中の絵文字を変換していません。


POST/GETデータ中の絵文字変換はsubversionのold-trunkで実装したのですが、
根本的な問題があり、リリースは見合わせました。

現在のリリースバージョンはその根本的な問題が解決されていますが、
リリースバージョンに導入するタイミングは今のところ0.14.x以降の予定です。

すみません。
.

2008年12月9日火曜日

[mod_chxj] 0.12.26リリース

昨日に引き続き、0.12.26をリリースしました。

内容は、


  • アニメーションGIFに関するバグを1つ修正

  • X-Chxj-Set-Content-Type


の2つです。

X-Chxj-Set-Content-Typeヘッダをアプリケーションから送出すると、
mod_chxjは、変換結果のContent-Typeヘッダと、metaタグを強制的に
X-Chxj-Set-Content-Typeヘッダで指定された文字列に置き換えます。

PHPでは、

<?php header("X-Chxj-Set-Content-Type: application/xhtml+xml; charset=SHIFT_JIS"); ?>
 

とすれば、出力されるContent-Typeヘッダは

Content-Type: application/xhtml+xml; charset=SHIFT_JIS
 

になり、
metaタグは、

<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=SHIFT_JIS" />
 

となります。

こちらにも同様のことを書いておきましたので、ご参照ください。

.

2008年12月8日月曜日

[mod_chxj] 0.12.25をリリース

必要ないかもしれませんが、、、

Z2hOnのほかに、Z2hAlphaOn、Z2hNumOnをつけました。

Z2hAlphaOnは全角英字を半角英字に変換します。
Z2hNumOnは全角数字を半角数字に変換します。

上記はそれぞれ、


ChxjConvertRule "^/.*$" "EngineOn,Z2hOn" "UTF-8"
ChxjConvertRule "^/.*$" "EngineOn,Z2hAlphaOn" "UTF-8"
ChxjConvertRule "^/.*$" "EngineOn,Z2hNumOn" "UTF-8"
 

と指定できます。
また、上記の3オプションとも有効にする、
Z2hAllOn
というものもつけました。


ChxjConvertRule "^/.*$" "EngineOn,Z2hAllOn" "UTF-8"
 

と指定すればOKです。

また、全角カタカナ、半角カタカナ変換機能(0.12.23以降)も参照ください。

.

2008年11月27日木曜日

[mod_chxj]とりあえずデータ追加終わり

やっと終わった。。

これで、11月7日発売分まで定義完了。

.

2008年11月25日火曜日

[mod_chxj] メモ:新たに追加しようとしているデータ


au W65K
au W62P
au W64S
SoftBank 830P
SoftBank 830SHs
SoftBank 830SH
au W64T
au W63Kカメラ無し
au W63SH
SoftBank 824T
DoCoMo SH706iw
au W62PT
DoCoMo N706iII
DoCoMo SH706ie
SoftBank 823T
DoCoMo N706ie
DoCoMo P706ie
DoCoMo NM706i
SoftBank 921P
DoCoMo F884iES
DoCoMo L706ie
au W64SA
SoftBank 824P
DoCoMo P706iμ
au W62CA
au W62H
au W62SH
DoCoMo SH706i
SoftBank 824SH
SoftBank 923SH
au W63S
au W63SA
DoCoMo SO706i
SoftBank 820N
SoftBank 821N
SoftBank 825SH
DoCoMo N706i
SoftBank 823P
DoCoMo F706i
DoCoMo SH906iTV
au W63K
au W64K
DoCoMo N906iL
DoCoMo N906i
au W63T
au W62K
 

.

2008年11月15日土曜日

[git][mod_chxj] SubversionにあるリポジトリをSourceforge.JPのGitに公開してみた

SubversionのリポジトリをSourceforge.JPのGitに公開する手順のメモ。

手順は以下のとおり。

  1. Sourceforge.JPのプロジェクト管理ページでGitを有効にする
  2. Sourceforge.JPのプロジェクトページから空のGitリポジトリを作成する
  3. Subversionのリポジトリをgit使ってclone
  4. cloneしたローカルリポジトリにremoteとしてSourceforge.JPの空のリポジトリを追加
  5. remoteにpush

Sourceforge.JPのプロジェクト管理ページでGitを有効にする
Sourceforge.JPのプロジェクトページから空のGitリポジトリを作成する
これはさっきやってきた。

Subversionのリポジトリをgit使ってclone
これはすでに作成済み。

$ git svn clone -T trunk -b branches -t tags \
svn+ssh://konn@svn.sourceforge.jp/svnroot/modchxj/mod_chxj
 

 

として作成したと思う。

cloneしたローカルリポジトリにremoteとしてSourceforge.JPの空のリポジトリを追加

$ git remote add origin \
konn@git.sourceforge.jp:/gitroot/modchxj/mod_chxj.git
 

んで 確認。

$ git remote show
origin
 


remoteにpush
さっき追加したoriginにmasterをpushする。
まず、念のため、user.emailをチェック。

$ git config user.email
konn@users.sourceforge.jp
  

で、push。

$ git push origin master
Counting objects: 23847, done.
Compressing objects: 100% (3552/3552), done.
Writing objects: 100% (23847/23847), 5.77 MiB 73 KiB/s, done.
Total 23847 (delta 20981), reused 23091 (delta 20252)
To konn@git.sourceforge.jp:/gitroot/modchxj/mod_chxj.git
* [new branch] master -> master
 

ほっほっほ。
完了。

一応ブランチとかも追加しておく。

$ git push origin branch_0.13.0
Counting objects: 1498, done.
Compressing objects: 100% (601/601), done.
Writing objects: 100% (1492/1492), 206.84 KiB 104 KiB/s, done.
Total 1492 (delta 891), reused 1492 (delta 891)
To konn@git.sourceforge.jp:/gitroot/modchxj/mod_chxj.git
* [new branch] branch_0.13.0 -> branch_0.13.0
$ git push origin branch_0.12.0
Total 0 (delta 0), reused 0 (delta 0)
To konn@git.sourceforge.jp:/gitroot/modchxj/mod_chxj.git
* [new branch] branch_0.12.0 -> branch_0.12.0
$ git push origin branch_0.11.0
Counting objects: 655, done.
Compressing objects: 100% (211/211), done.
Writing objects: 100% (616/616), 257.79 KiB 100 KiB/s, done.
Total 616 (delta 527), reused 482 (delta 404)
To konn@git.sourceforge.jp:/gitroot/modchxj/mod_chxj.git
* [new branch] branch_0.11.0 -> branch_0.11.0
 


いやいや、おなかいっぱい。

ん?
Git公開一番のり?
.

[git][mod_chxj] とりあえずSourceForge.JPにリポジトリを作成してみた

さっそくSourceforge.JPにGitリポジトリを作成してみた。
数日待つのかと思いきや、1~2分でリポジトリが作成された。

くっそー。

一番乗りできなかった。
すでにmagic3とnkfが先にあった。
多分、リポジトリ作成したのは3番目。

.

2008年11月14日金曜日

[git][mod_chxj]とりあえずGitを有効にしてみた

とりあえず、SourceForge.JPでGitを有効にしてきた。

リポジトリが作成されていないんで、まだ使えないけど。

へへ。
.

[git][mod_chxj] SourceForge.JPでGitがサポートされた!!

11月14日付けで、SourceForge.JPでGitがサポートされたみたい。
まだ試してないけど、gitwebもつかえるらしい。
現状限定的らいしんだけど徐々に機能を追加していくらしい。

多分、そのうちGitHubみたいになるんだろうなぁー。

さっそくのり変えよう。
一応、Subversionも生かしつつ。

.