| 7 |
<meta http-equiv="Content-Script-Type" content="text/javascript"> |
<meta http-equiv="Content-Script-Type" content="text/javascript"> |
| 8 |
<meta name="generator" content="SmartDoc 1.1"> |
<meta name="generator" content="SmartDoc 1.1"> |
| 9 |
<meta name="author" content="Atsushi Konno" lang="ja"> |
<meta name="author" content="Atsushi Konno" lang="ja"> |
| 10 |
<meta name="date" content="29 Mar 2005" lang="ja"> |
<meta name="date" content="Last modified: 21 Jan 2008" lang="ja"> |
| 11 |
<title>mod_chxj</title> |
<title>mod_chxj</title> |
| 12 |
<style type="text/css"> |
<style type="text/css"> |
| 13 |
<!-- |
<!-- |
| 692 |
|
|
| 693 |
<h1 class="title">mod_chxj<br><span class="subtitle"></span></h1> |
<h1 class="title">mod_chxj<br><span class="subtitle"></span></h1> |
| 694 |
|
|
| 695 |
<div class="date">29 Mar 2005</div> |
<div class="date">Last modified: 21 Jan 2008</div> |
| 696 |
<div class="author">Atsushi Konno</div> |
<div class="author">Atsushi Konno</div> |
| 697 |
<h2>目次</h2> |
<h2>目次</h2> |
| 698 |
|
|
| 699 |
<div class="toc"> |
<div class="toc"> |
| 700 |
<ul> |
<ul> |
| 701 |
<li> <a href="#doc1_15" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Overview</a> |
<li> <a href="#doc1_17" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Overview</a> |
| 702 |
<li> <a href="#doc1_18" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">インストール</a> |
<li> <a href="#doc1_23" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">インストール</a> |
| 703 |
<ul> |
<ul> |
| 704 |
<li> <a href="#doc1_20" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">準備</a> |
<li> <a href="#doc1_25" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">準備</a> |
| 705 |
<li> <a href="#doc1_47" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">mod_chxjの入手</a> |
<li> <a href="#doc1_52" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">mod_chxjの入手</a> |
| 706 |
<li> <a href="#doc1_53" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">インストール</a> |
<li> <a href="#doc1_58" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">インストール</a> |
| 707 |
</ul> |
</ul> |
| 708 |
<li> <a href="#doc1_102" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Configuration</a> |
<li> <a href="#doc1_104" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Configuration</a> |
| 709 |
<ul> |
<ul> |
| 710 |
<li> <a href="#doc1_104" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">htmlファイルが変換対象の場合</a> |
<li> <a href="#doc1_106" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">htmlファイルが変換対象の場合</a> |
| 711 |
<li> <a href="#doc1_119" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">php等の出力結果が変換対象の場合</a> |
<li> <a href="#doc1_121" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">php等の出力結果が変換対象の場合</a> |
| 712 |
<li> <a href="#doc1_134" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">xoopsを使用し、且つwordpress、bwikiを使用している場合</a> |
<li> <a href="#doc1_136" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">xoopsを使用し、且つwordpress、bwikiを使用している場合</a> |
| 713 |
<li> <a href="#doc1_149" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">画像自動変換機能を使用する場合</a> |
<li> <a href="#doc1_151" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">画像自動変換機能を使用する場合</a> |
| 714 |
<li> <a href="#doc1_214" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">文字コードを変換したい場合(EXPERIMENTAL)</a> |
<li> <a href="#doc1_216" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">文字コードを変換したい場合(EXPERIMENTAL)</a> |
| 715 |
<li> <a href="#doc1_258" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">ディレクティブ</a> |
<li> <a href="#doc1_260" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">ディレクティブ</a> |
| 716 |
</ul> |
</ul> |
| 717 |
<li> <a href="#doc1_375" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">対応するCHTMLタグ</a> |
<li> <a href="#doc1_377" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">対応するCHTMLタグ</a> |
| 718 |
<li> <a href="#doc1_1083" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">独自拡張タグ</a> |
<li> <a href="#doc1_1085" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">独自拡張タグ</a> |
| 719 |
<li> <a href="#doc1_1120" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">絵文字について</a> |
<li> <a href="#doc1_1122" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">絵文字について</a> |
| 720 |
<ul> |
<ul> |
| 721 |
<li> <a href="#doc1_1125" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">絵文字変換定義</a> |
<li> <a href="#doc1_1127" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">絵文字変換定義</a> |
| 722 |
</ul> |
</ul> |
| 723 |
<li> <a href="#doc1_1170" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">デバイス定義 device_data.xml</a> |
<li> <a href="#doc1_1172" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">デバイス定義 device_data.xml</a> |
| 724 |
<li> <a href="#doc1_1173" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">イメージ画像変換機能</a> |
<li> <a href="#doc1_1175" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">イメージ画像変換機能</a> |
| 725 |
<ul> |
<ul> |
| 726 |
<li> <a href="#doc1_1182" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">サムネイルモード</a> |
<li> <a href="#doc1_1184" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">サムネイルモード</a> |
| 727 |
<li> <a href="#doc1_1188" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">壁紙モード</a> |
<li> <a href="#doc1_1190" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">壁紙モード</a> |
| 728 |
<li> <a href="#doc1_1194" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">EzGetモード</a> |
<li> <a href="#doc1_1196" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">EzGetモード</a> |
| 729 |
<li> <a href="#doc1_1200" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">その他の機能</a> |
<li> <a href="#doc1_1202" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">その他の機能</a> |
| 730 |
</ul> |
</ul> |
| 731 |
<li> <a href="#doc1_1231" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコード出力機能</a> |
<li> <a href="#doc1_1233" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコード出力機能</a> |
| 732 |
<ul> |
<ul> |
| 733 |
<li> <a href="#doc1_1233" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコード出力ハンドラの登録</a> |
<li> <a href="#doc1_1235" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコード出力ハンドラの登録</a> |
| 734 |
<li> <a href="#doc1_1239" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコードソースファイルの設置</a> |
<li> <a href="#doc1_1241" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコードソースファイルの設置</a> |
| 735 |
<li> <a href="#doc1_1263" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコードの動的出力機能</a> |
<li> <a href="#doc1_1265" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">QRコードの動的出力機能</a> |
| 736 |
</ul> |
</ul> |
|
<li> <a href="#doc1_1270" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieシミュレート機能(EXPERIMENTAL)</a> |
|
|
<ul> |
|
| 737 |
<li> <a href="#doc1_1272" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieシミュレート機能(EXPERIMENTAL)</a> |
<li> <a href="#doc1_1272" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieシミュレート機能(EXPERIMENTAL)</a> |
|
<li> <a href="#doc1_1278" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">One-Time ID</a> |
|
|
<li> <a href="#doc1_1281" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieの保存場所</a> |
|
|
<li> <a href="#doc1_1287" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieの保持期間</a> |
|
|
</ul> |
|
|
<li> <a href="#doc1_1294" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Refererシミュレート機能(EXPERIMENTAL)</a> |
|
| 738 |
<ul> |
<ul> |
| 739 |
|
<li> <a href="#doc1_1274" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieシミュレート機能(EXPERIMENTAL)</a> |
| 740 |
|
<li> <a href="#doc1_1280" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">One-Time ID</a> |
| 741 |
|
<li> <a href="#doc1_1283" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieの保存場所</a> |
| 742 |
|
<li> <a href="#doc1_1289" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Cookieの保持期間</a> |
| 743 |
|
</ul> |
| 744 |
<li> <a href="#doc1_1296" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Refererシミュレート機能(EXPERIMENTAL)</a> |
<li> <a href="#doc1_1296" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Refererシミュレート機能(EXPERIMENTAL)</a> |
| 745 |
|
<ul> |
| 746 |
|
<li> <a href="#doc1_1298" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">Refererシミュレート機能(EXPERIMENTAL)</a> |
| 747 |
</ul> |
</ul> |
| 748 |
</ul> |
</ul> |
| 749 |
</div> |
</div> |
| 750 |
|
|
| 751 |
<h2 id="doc1_15">Overview</h2> |
<h2 id="doc1_17">Overview</h2> |
| 752 |
|
|
| 753 |
|
<p class="first_ja">mod_chxjはオープンソースの携帯向けコンテンツ変換Apache2.x用モジュールであり、CHTML(DoCoMo i-Mode用CHTML3.0)で記述された文書や通常のHTMLで記述された文書を、アクセスに来た端末のUser-Agentヘッダを見て、それぞれの端末にあった形式に変換します。HTML文書に限らず、画像(jpg、gif、png)、絵文字についても、定義ファイルに従ってそれぞれのキャリアにあった絵文字に変換します。Cookie非対応端末、Refer非対応端末のために、Set-Cookie、CookieヘッダやRefererヘッダをシミュレートすることもできます(EXPERIMENTAL)。<span class="note"><a href="#doc1_19" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="Apache2.2はバージョン0.8.1から対応"><sup>(1)</sup></a></span></p> |
| 754 |
|
|
| 755 |
|
<div class="footnote"> |
| 756 |
|
<ol> |
| 757 |
|
<li id="doc1_19" value="1"> Apache2.2はバージョン0.8.1から対応</ol> |
| 758 |
|
</div> |
| 759 |
|
|
|
<p class="first_ja">mod_chxjはオープンソースの携帯向けコンテンツ変換Apache2.0用モジュールであり、CHTML(DoCoMo i-Mode用CHTML3.0)で記述された文書や通常のHTMLで記述された文書を、アクセスに来た端末のUser-Agentヘッダを見て、それぞれの端末にあった形式に変換します。HTML文書に限らず、画像(jpg、gif、png)、絵文字についても、定義ファイルに従ってそれぞれのキャリアにあった絵文字に変換します。Cookie非対応端末、Refer非対応端末のために、Set-Cookie、CookieヘッダやRefererヘッダをシミュレートすることもできます(EXPERIMENTAL)。</p> |
|
| 760 |
|
|
| 761 |
<h2 id="doc1_18">インストール</h2> |
<h2 id="doc1_23">インストール</h2> |
| 762 |
|
|
| 763 |
|
|
| 764 |
<h3 id="doc1_20">準備</h3> |
<h3 id="doc1_25">準備</h3> |
| 765 |
|
|
| 766 |
<p class="first_ja">mod_chxjをインストールする前に、下記のものを用意する必要があります。</p> |
<p class="first_ja">mod_chxjをインストールする前に、下記のものを用意する必要があります。</p> |
| 767 |
|
|
| 768 |
<ol> |
<ol> |
| 769 |
<li> Apache2.0のヘッダーファイル群 |
<li> Apache2.xのヘッダーファイル群 |
| 770 |
<li> Apache2.0用のapxs |
<li> Apache2.x用のapxs |
| 771 |
<li> apr(Apache Portable Runtime)ライブラリとそのヘッダファイル郡(apu含む) |
<li> apr(Apache Portable Runtime)ライブラリとそのヘッダファイル郡(apu含む) |
| 772 |
<li> automake、autoconf、libtool1.3.X |
<li> automake、autoconf、libtool1.3.X |
| 773 |
<li> ImageMagick(MagickWand) |
<li> ImageMagick(MagickWand) |
| 774 |
<li> libiconvまたはlibiconv_hook |
<li> libiconvまたはlibiconv_hook(SJIS-WIN、EUCJP-WIN対応が望ましい) |
| 775 |
<li> Linux</ol> |
<li> Linux</ol> |
| 776 |
|
|
| 777 |
|
|
| 778 |
<h3 id="doc1_47">mod_chxjの入手</h3> |
<h3 id="doc1_52">mod_chxjの入手</h3> |
| 779 |
|
|
| 780 |
<p class="first_ja">mod_chxjは<a href="http://sourceforge.jp/projects/modchxj/" target="_top" onmouseover="hilightExternallink(this)" onmouseout="normal(this)">こちら</a>からダウンロードすることができます。</p> |
<p class="first_ja">mod_chxjは<a href="http://sourceforge.jp/projects/modchxj/" target="_top" onmouseover="hilightExternallink(this)" onmouseout="normal(this)">こちら</a>からダウンロードすることができます。</p> |
| 781 |
|
|
| 782 |
<h3 id="doc1_53">インストール</h3> |
<h3 id="doc1_58">インストール</h3> |
| 783 |
|
|
| 784 |
<p class="first_ja">以下にmod_chxjインストール手順を示します。</p> |
<p class="first_ja">以下にmod_chxjインストール手順を示します。</p> |
| 785 |
|
|
| 786 |
<ol> |
<ol> |
| 787 |
<li> <p>Configureスクリプトを生成します</p> |
<li> <p>Configureスクリプトを生成します</p> |
| 788 |
|
|
| 789 |
<div id="doc1_59" class="caption">Configure スクリプトの生成</div> |
<div id="doc1_64" class="caption">Configure スクリプトの生成</div> |
| 790 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 791 |
$ ./buildconf.sh |
$ ./buildconf.sh |
| 792 |
</pre> |
</pre> |
| 793 |
|
|
| 794 |
<p><span class="note"><a href="#doc1_62" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title=""$"はプロンプトをあらわします。"><sup>(1)</sup></a></span></p> |
<p><span class="note"><a href="#doc1_67" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title=""$"はプロンプトをあらわします。"><sup>(2)</sup></a></span></p> |
| 795 |
<li> <p>Configure</p> |
<li> <p>Configure</p> |
| 796 |
<p>以下は、/usr/include/apache2.0に、Apache2.0のヘッダーファイルが存在する場合です。</p> |
<p>以下は、/usr/include/apache2.xに、Apache2.xのヘッダーファイルが存在する場合です。</p> |
| 797 |
|
|
| 798 |
<div id="doc1_68" class="caption">Configure</div> |
<div id="doc1_73" class="caption">Configure</div> |
| 799 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 800 |
$ ./configure --with-apache-header=/usr/include/apache2.0 |
$ ./configure --with-apache-header=/usr/include/apache2.x |
| 801 |
</pre> |
</pre> |
| 802 |
|
|
| 803 |
<p><span class="note"><a href="#doc1_71" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="--with-apache-headerは必須です。"><sup>(2)</sup></a></span><span class="note"><a href="#doc1_74" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="FreeBSD等の場合は--with-iconvも必須です。"><sup>(3)</sup></a></span><span class="note"><a href="#doc1_77" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="場合によっては--with-aprや--with-apuも必要です。"><sup>(4)</sup></a></span></p> |
<p><span class="note"><a href="#doc1_76" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="--with-apache-headerは必須です。"><sup>(3)</sup></a></span><span class="note"><a href="#doc1_79" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="環境によっては--with-iconvや--with-apr、--with-apuも必要です"><sup>(4)</sup></a></span></p> |
| 804 |
<li> mod_chxj.soを生成します |
<li> mod_chxj.soを生成します |
| 805 |
<div id="doc1_83" class="caption">make</div> |
<div id="doc1_85" class="caption">make</div> |
| 806 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 807 |
$ make |
$ make |
| 808 |
</pre> |
</pre> |
| 809 |
<li> apacheにインストールします |
<li> apacheにインストールします |
| 810 |
<div id="doc1_89" class="caption">install</div> |
<div id="doc1_91" class="caption">install</div> |
| 811 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 812 |
$ make install |
$ make install |
| 813 |
</pre> |
</pre> |
| 814 |
<li> <p>データの設置etcディレクトリは以下のdevice_data.xmlとemoji.xmlをApacheからアクセスできるところに配置します。</p> |
<li> <p>データの設置etcディレクトリは以下のdevice_data.xmlとemoji.xmlをApacheからアクセスできるところに配置します。</p> |
| 815 |
<p>以下、/etc/apache2/chxjディレクトリにchxj用設定ファイルを用意する場合</p> |
<p>以下、/etc/apache2/chxjディレクトリにchxj用設定ファイルを用意する場合</p> |
| 816 |
|
|
| 817 |
<div id="doc1_95" class="caption">データの設置</div> |
<div id="doc1_97" class="caption">データの設置</div> |
| 818 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 819 |
$ mkdir -p /etc/apache2/chxj |
$ mkdir -p /etc/apache2/chxj |
| 820 |
$ cp etc/device_data.xml /etc/apache2/chxj |
$ cp etc/device_data.xml /etc/apache2/chxj |
| 824 |
|
|
| 825 |
<div class="footnote"> |
<div class="footnote"> |
| 826 |
<ol> |
<ol> |
| 827 |
<li id="doc1_62" value="1"> "$"はプロンプトをあらわします。<li id="doc1_71" value="2"> --with-apache-headerは必須です。<li id="doc1_74" value="3"> FreeBSD等の場合は--with-iconvも必須です。<li id="doc1_77" value="4"> 場合によっては--with-aprや--with-apuも必要です。</ol> |
<li id="doc1_67" value="2"> "$"はプロンプトをあらわします。<li id="doc1_76" value="3"> --with-apache-headerは必須です。<li id="doc1_79" value="4"> 環境によっては--with-iconvや--with-apr、--with-apuも必要です</ol> |
| 828 |
</div> |
</div> |
| 829 |
|
|
| 830 |
|
|
| 831 |
<h2 id="doc1_102">Configuration</h2> |
<h2 id="doc1_104">Configuration</h2> |
| 832 |
|
|
| 833 |
<p class="first_ja">以下はmod_chxjが/usr/lib/apache2/modulesディレクトリ配下に設置されたものとしています</p> |
<p class="first_ja">以下はmod_chxjが/usr/lib/apache2/modulesディレクトリ配下に設置されたものとしています</p> |
| 834 |
|
|
| 835 |
<h3 id="doc1_104">htmlファイルが変換対象の場合</h3> |
<h3 id="doc1_106">htmlファイルが変換対象の場合</h3> |
| 836 |
|
|
| 837 |
<p class="first_ja">例として、Locationが"/chxj"以下のものは全て変換する場合を説明します。</p> |
<p class="first_ja">例として、Locationが"/chxj"以下のものは全て変換する場合を説明します。</p> |
| 838 |
|
|
| 839 |
<ol> |
<ol> |
| 840 |
<li> httpd.confに以下を追加します。 |
<li> httpd.confに以下を追加します。 |
| 841 |
<div id="doc1_110" class="caption">httpd.conf</div> |
<div id="doc1_112" class="caption">httpd.conf</div> |
| 842 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 843 |
#==================================================================================== |
#==================================================================================== |
| 844 |
# モジュールをApache2.0にロード |
# モジュールをApache2.xにロード |
| 845 |
#==================================================================================== |
#==================================================================================== |
| 846 |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
| 847 |
|
|
| 867 |
<li> apacheの再起動。</ol> |
<li> apacheの再起動。</ol> |
| 868 |
|
|
| 869 |
|
|
| 870 |
<h3 id="doc1_119">php等の出力結果が変換対象の場合</h3> |
<h3 id="doc1_121">php等の出力結果が変換対象の場合</h3> |
| 871 |
|
|
| 872 |
|
|
| 873 |
<ol> |
<ol> |
| 874 |
<li> httpd.confに以下を追加します |
<li> httpd.confに以下を追加します |
| 875 |
<div id="doc1_125" class="caption">httpd.conf</div> |
<div id="doc1_127" class="caption">httpd.conf</div> |
| 876 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 877 |
#==================================================================================== |
#==================================================================================== |
| 878 |
# モジュールをApache2.0にロード |
# モジュールをApache2.xにロード |
| 879 |
#==================================================================================== |
#==================================================================================== |
| 880 |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
| 881 |
|
|
| 902 |
<li> apacheの再起動。</ol> |
<li> apacheの再起動。</ol> |
| 903 |
|
|
| 904 |
|
|
| 905 |
<h3 id="doc1_134">xoopsを使用し、且つwordpress、bwikiを使用している場合</h3> |
<h3 id="doc1_136">xoopsを使用し、且つwordpress、bwikiを使用している場合</h3> |
| 906 |
|
|
| 907 |
|
|
| 908 |
<ol> |
<ol> |
| 909 |
<li> httpd.confに以下を追加します |
<li> httpd.confに以下を追加します |
| 910 |
<div id="doc1_140" class="caption">httpd.conf</div> |
<div id="doc1_142" class="caption">httpd.conf</div> |
| 911 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 912 |
#==================================================================================== |
#==================================================================================== |
| 913 |
# モジュールをApache2.0にロード |
# モジュールをApache2.xにロード |
| 914 |
#==================================================================================== |
#==================================================================================== |
| 915 |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
LoadModule chxj_module /usr/lib/apache2/modules/mod_chxj.so |
| 916 |
|
|
| 977 |
<li> apacheの再起動。</ol> |
<li> apacheの再起動。</ol> |
| 978 |
|
|
| 979 |
|
|
| 980 |
<h3 id="doc1_149">画像自動変換機能を使用する場合</h3> |
<h3 id="doc1_151">画像自動変換機能を使用する場合</h3> |
| 981 |
|
|
| 982 |
|
|
| 983 |
<ol> |
<ol> |
| 984 |
<li> <p>httpd.confに以下を追加します。下記は、URIが/imgで始まる全ての画像に対して動作するようmod_chxjに指示しています。</p> |
<li> <p>httpd.confに以下を追加します。下記は、URIが/imgで始まる全ての画像に対して動作するようmod_chxjに指示しています。</p> |
| 985 |
|
|
| 986 |
<div id="doc1_155" class="caption">httpd.conf</div> |
<div id="doc1_157" class="caption">httpd.conf</div> |
| 987 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 988 |
<Location /img> |
<Location /img> |
| 989 |
ChxjImageEngine On |
ChxjImageEngine On |
| 999 |
<p><br></br> <br></br></p> |
<p><br></br> <br></br></p> |
| 1000 |
<li> <p>ChxjImageCacheDir<br></br> mod_chxj画像変換ハンドラが使用する変換後の画像をおいておくディレクトリを指定します。デフォルトは/tmp。</p> |
<li> <p>ChxjImageCacheDir<br></br> mod_chxj画像変換ハンドラが使用する変換後の画像をおいておくディレクトリを指定します。デフォルトは/tmp。</p> |
| 1001 |
|
|
| 1002 |
<div id="doc1_173" class="caption">ChxjImageCacheDir</div> |
<div id="doc1_175" class="caption">ChxjImageCacheDir</div> |
| 1003 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1004 |
ChxjImageCacheDir /tmp |
ChxjImageCacheDir /tmp |
| 1005 |
|
|
| 1008 |
<p>mod_chxjに画像変換キャッシュとして/tmpを使用するよう指示します。<br></br><br></br></p> |
<p>mod_chxjに画像変換キャッシュとして/tmpを使用するよう指示します。<br></br><br></br></p> |
| 1009 |
<li> <p>ChxjImageCopyright<br></br> mod_chxjの画像変換ハンドラに、転送禁止設定を行うよう指示します。パラメータとして任意の文字列をとります。ChxjImageCopyrightディレクティブで指定された文字列は、それぞれのイメージのコメント部に埋め込まれます。</p> |
<li> <p>ChxjImageCopyright<br></br> mod_chxjの画像変換ハンドラに、転送禁止設定を行うよう指示します。パラメータとして任意の文字列をとります。ChxjImageCopyrightディレクティブで指定された文字列は、それぞれのイメージのコメント部に埋め込まれます。</p> |
| 1010 |
|
|
| 1011 |
<div id="doc1_185" class="caption">ChxjImageCopyright</div> |
<div id="doc1_187" class="caption">ChxjImageCopyright</div> |
| 1012 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1013 |
ChxjImageCopyright "A.Konno" |
ChxjImageCopyright "A.Konno" |
| 1014 |
|
|
| 1017 |
<p>mod_chxjに転送禁止設定を行うよう指示しています。変換後イメージのコメント部分には、キャリア毎に以下の文字列を埋め込みます。</p> |
<p>mod_chxjに転送禁止設定を行うよう指示しています。変換後イメージのコメント部分には、キャリア毎に以下の文字列を埋め込みます。</p> |
| 1018 |
<p><b>AU の場合</b></p> |
<p><b>AU の場合</b></p> |
| 1019 |
|
|
| 1020 |
<div id="doc1_191" class="caption">AU</div> |
<div id="doc1_193" class="caption">AU</div> |
| 1021 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1022 |
kddi_copyright=on,A.Konno |
kddi_copyright=on,A.Konno |
| 1023 |
|
|
| 1025 |
|
|
| 1026 |
<p><b>DoCoMoの場合</b></p> |
<p><b>DoCoMoの場合</b></p> |
| 1027 |
|
|
| 1028 |
<div id="doc1_197" class="caption">DoCoMo</div> |
<div id="doc1_199" class="caption">DoCoMo</div> |
| 1029 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1030 |
copy="NO",A.Konno |
copy="NO",A.Konno |
| 1031 |
</pre> |
</pre> |
| 1032 |
|
|
| 1033 |
<p><b>Vodafone</b>の場合は、レスポンスヘッダに</p> |
<p><b>Vodafone</b>の場合は、レスポンスヘッダに</p> |
| 1034 |
|
|
| 1035 |
<div id="doc1_203" class="caption">Vodafone/J-PHONE</div> |
<div id="doc1_205" class="caption">Vodafone/J-PHONE</div> |
| 1036 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1037 |
x-jphone-copyright:no-transfer |
x-jphone-copyright:no-transfer |
| 1038 |
|
|
| 1039 |
</pre> |
</pre> |
| 1040 |
|
|
| 1041 |
<p>を埋め込みます。<span class="note"><a href="#doc1_206" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="Vodafoneの場合は、リクエストURLの最後が.pnzか、.jpzで終わるようにダミーを付けなければなりません。"><sup>(5)</sup></a></span></p></ol></ol> |
<p>を埋め込みます。<span class="note"><a href="#doc1_208" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="Vodafoneの場合は、リクエストURLの最後が.pnzか、.jpzで終わるようにダミーを付けなければなりません。"><sup>(5)</sup></a></span></p></ol></ol> |
| 1042 |
|
|
| 1043 |
|
|
| 1044 |
<div class="footnote"> |
<div class="footnote"> |
| 1045 |
<ol> |
<ol> |
| 1046 |
<li id="doc1_206" value="5"> Vodafoneの場合は、リクエストURLの最後が.pnzか、.jpzで終わるようにダミーを付けなければなりません。</ol> |
<li id="doc1_208" value="5"> Vodafoneの場合は、リクエストURLの最後が.pnzか、.jpzで終わるようにダミーを付けなければなりません。</ol> |
| 1047 |
</div> |
</div> |
| 1048 |
|
|
| 1049 |
|
|
| 1050 |
<h3 id="doc1_214">文字コードを変換したい場合(EXPERIMENTAL)</h3> |
<h3 id="doc1_216">文字コードを変換したい場合(EXPERIMENTAL)</h3> |
| 1051 |
|
|
| 1052 |
|
|
| 1053 |
<ol> |
<ol> |
| 1054 |
<li> <p>httpd.confに以下を追加します。下記は、URIが/chxjで始まる全てのコンテンツに対して動作するようmod_chxjに指示しています。サーバ側はEUC-JPであった場合の例です。mod_chxjによってSJISに変換するように指示しています。サーバ側がShift_JISで無い場合は、Shift_JISコードの10進参照文字列表記を記述することによってShift_JISコードの絵文字2バイトコードに変換しクライアントへ返します。</p> |
<li> <p>httpd.confに以下を追加します。下記は、URIが/chxjで始まる全てのコンテンツに対して動作するようmod_chxjに指示しています。サーバ側はEUC-JPであった場合の例です。mod_chxjによってSJISに変換するように指示しています。サーバ側がShift_JISで無い場合は、Shift_JISコードの10進参照文字列表記を記述することによってShift_JISコードの絵文字2バイトコードに変換しクライアントへ返します。</p> |
| 1055 |
|
|
| 1056 |
<div id="doc1_220" class="caption">httpd.conf</div> |
<div id="doc1_222" class="caption">httpd.conf</div> |
| 1057 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1058 |
ChxjConvRule "^/chxj.+$" "EngineOn" "EUC-JP" |
ChxjConvRule "^/chxj.+$" "EngineOn" "EUC-JP" |
| 1059 |
</pre> |
</pre> |
| 1069 |
<p><br></br><br></br></p></ol></ol> |
<p><br></br><br></br></p></ol></ol> |
| 1070 |
|
|
| 1071 |
|
|
| 1072 |
<h3 id="doc1_258">ディレクティブ</h3> |
<h3 id="doc1_260">ディレクティブ</h3> |
| 1073 |
|
|
| 1074 |
|
|
| 1075 |
<ol> |
<ol> |
| 1076 |
<li> ChxjLoadDeviceData<br></br>デバイス定義ファイルを指定します。 |
<li> ChxjLoadDeviceData<br></br>デバイス定義ファイルを指定します。 |
| 1077 |
<div id="doc1_266" class="caption">ex)</div> |
<div id="doc1_268" class="caption">ex)</div> |
| 1078 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1079 |
ChxjLoadDeviceData /etc/apache2/device.xml |
ChxjLoadDeviceData /etc/apache2/device.xml |
| 1080 |
|
|
| 1081 |
</pre> |
</pre> |
| 1082 |
<li> ChxjLoadEmojiData<br></br>絵文字変換定義ファイルを指定します。 |
<li> ChxjLoadEmojiData<br></br>絵文字変換定義ファイルを指定します。 |
| 1083 |
<div id="doc1_274" class="caption">ex)</div> |
<div id="doc1_276" class="caption">ex)</div> |
| 1084 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1085 |
ChxjLoadEmojiData /etc/apache2/chxj/emoji.xml |
ChxjLoadEmojiData /etc/apache2/chxj/emoji.xml |
| 1086 |
|
|
| 1087 |
</pre> |
</pre> |
| 1088 |
<li> ChxjImageEngine<br></br>画像変換エンジンを有効にします。パラメータとしてOnとOffを指定できます。DefaultはOffです。 |
<li> ChxjImageEngine<br></br>画像変換エンジンを有効にします。パラメータとしてOnとOffを指定できます。DefaultはOffです。 |
| 1089 |
<div id="doc1_282" class="caption">ex)</div> |
<div id="doc1_284" class="caption">ex)</div> |
| 1090 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1091 |
ChxjImageEngine On |
ChxjImageEngine On |
| 1092 |
|
|
| 1093 |
</pre> |
</pre> |
| 1094 |
<li> ChxjImageCacheDir<br></br>イメージの一時ファイル保存場所を指定します。 |
<li> ChxjImageCacheDir<br></br>イメージの一時ファイル保存場所を指定します。 |
| 1095 |
<div id="doc1_290" class="caption">ex)</div> |
<div id="doc1_292" class="caption">ex)</div> |
| 1096 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1097 |
ChxjImageCacheDir /tmp |
ChxjImageCacheDir /tmp |
| 1098 |
|
|
| 1099 |
</pre> |
</pre> |
| 1100 |
<li> ChxjImageCopyright<br></br>イメージに著作権情報を付与します。 |
<li> ChxjImageCopyright<br></br>イメージに著作権情報を付与します。 |
| 1101 |
<div id="doc1_298" class="caption">ex)</div> |
<div id="doc1_300" class="caption">ex)</div> |
| 1102 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1103 |
ChxjImageCacheDir "chosakuken jyoho" |
ChxjImageCacheDir "chosakuken jyoho" |
| 1104 |
|
|
| 1105 |
</pre> |
</pre> |
| 1106 |
<li> ChxjConvertRule<br></br> HTML変換エンジンの適用ルールを記述します。本ディレクティブを使用し、変換エンジンのOn|Offを指定します。DefaultはOFFです。また、ルールは記述された順番に評価し、マッチするものがあれば、その時点で対象ルールを適用します。パラメータは3つ必要です。下記にパラメータを記します。 |
<li> ChxjConvertRule<br></br> HTML変換エンジンの適用ルールを記述します。本ディレクティブを使用し、変換エンジンのOn|Offを指定します。DefaultはOFFです。また、ルールは記述された順番に評価し、マッチするものがあれば、その時点で対象ルールを適用します。パラメータは3つ必要です。下記にパラメータを記します。 |
| 1107 |
<div class="table"> |
<div class="table"> |
| 1108 |
<table id="doc1_306" class="data" rules="groups"> |
<table id="doc1_308" class="data" rules="groups"> |
| 1109 |
<caption>パラメータ</caption> |
<caption>パラメータ</caption> |
| 1110 |
<colgroup span="2"> |
<colgroup span="2"> |
| 1111 |
<col> |
<col> |
| 1137 |
</div> |
</div> |
| 1138 |
|
|
| 1139 |
|
|
| 1140 |
<div id="doc1_352" class="caption">ex)</div> |
<div id="doc1_354" class="caption">ex)</div> |
| 1141 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1142 |
ChxjConvertRule "^/chxj.+$/" EngineOn EUC-JP |
ChxjConvertRule "^/chxj.+$/" EngineOn EUC-JP |
| 1143 |
|
|
| 1144 |
</pre> |
</pre> |
| 1145 |
<li> <p>ChxjCookieDir<br></br>クッキーを使用する場合に指定します。クッキーの内容を保存するディレクトリを指定します。指定しない場合は/tmpに保存されます。</p> |
<li> <p>ChxjCookieDir<br></br>クッキーを使用する場合に指定します。クッキーの内容を保存するディレクトリを指定します。指定しない場合は/tmpに保存されます。</p> |
| 1146 |
|
|
| 1147 |
<div id="doc1_360" class="caption">ex)</div> |
<div id="doc1_362" class="caption">ex)</div> |
| 1148 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1149 |
<Location /> |
<Location /> |
| 1150 |
ChxjCookieDir /tmp |
ChxjCookieDir /tmp |
| 1155 |
<p>詳細は「Cookieシミュレート機能」の項を参照ください。</p> |
<p>詳細は「Cookieシミュレート機能」の項を参照ください。</p> |
| 1156 |
<li> <p>ChxjCookieTimeout<br></br>クッキーを使用する場合に指定します。クッキーの保持期間を秒単位で指定します。指定しない場合は、1800秒でクッキーデータを破棄します。</p> |
<li> <p>ChxjCookieTimeout<br></br>クッキーを使用する場合に指定します。クッキーの保持期間を秒単位で指定します。指定しない場合は、1800秒でクッキーデータを破棄します。</p> |
| 1157 |
|
|
| 1158 |
<div id="doc1_368" class="caption">ex)</div> |
<div id="doc1_370" class="caption">ex)</div> |
| 1159 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1160 |
<Location /> |
<Location /> |
| 1161 |
ChxjCookieTimeout 10 |
ChxjCookieTimeout 10 |
| 1166 |
<p>詳細は「Cookieシミュレート機能」の項を参照ください。</p></ol> |
<p>詳細は「Cookieシミュレート機能」の項を参照ください。</p></ol> |
| 1167 |
|
|
| 1168 |
|
|
| 1169 |
<h2 id="doc1_375">対応するCHTMLタグ</h2> |
<h2 id="doc1_377">対応するCHTMLタグ</h2> |
| 1170 |
|
|
| 1171 |
<p class="first_ja">変換可能なCHTMLタグは以下のとおりです。</p> |
<p class="first_ja">変換可能なCHTMLタグは以下のとおりです。</p> |
| 1172 |
|
|
| 1173 |
<div class="table"> |
<div class="table"> |
| 1174 |
<table id="doc1_377" class="data" rules="groups"> |
<table id="doc1_379" class="data" rules="groups"> |
| 1175 |
<caption>対応タグ一覧</caption> |
<caption>対応タグ一覧</caption> |
| 1176 |
<colgroup span="7"> |
<colgroup span="7"> |
| 1177 |
<col> |
<col> |
| 1390 |
<td align="center">○</td> |
<td align="center">○</td> |
| 1391 |
<td align="center">○</td> |
<td align="center">○</td> |
| 1392 |
<td align="center">○</td> |
<td align="center">○</td> |
| 1393 |
<td align="left"><span class="note"><a href="#doc1_932" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="必ず閉じてください。そのうち対応します。"><sup>(7)</sup></a></span></td> |
<td align="left"><span class="note"><a href="#doc1_934" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="必ず閉じてください。そのうち対応します。"><sup>(7)</sup></a></span></td> |
| 1394 |
</tr> |
</tr> |
| 1395 |
<tr class="even"> |
<tr class="even"> |
| 1396 |
<td></td> |
<td></td> |
| 1453 |
|
|
| 1454 |
<div class="footnote"> |
<div class="footnote"> |
| 1455 |
<ol> |
<ol> |
| 1456 |
<li id="doc1_932" value="7"> 必ず閉じてください。そのうち対応します。</ol> |
<li id="doc1_934" value="7"> 必ず閉じてください。そのうち対応します。</ol> |
| 1457 |
</div> |
</div> |
| 1458 |
|
|
| 1459 |
|
|
| 1460 |
<h2 id="doc1_1083">独自拡張タグ</h2> |
<h2 id="doc1_1085">独自拡張タグ</h2> |
| 1461 |
|
|
| 1462 |
|
|
| 1463 |
<ol> |
<ol> |
| 1464 |
<li> <p><CHXJ:IF><br></br></p> |
<li> <p><CHXJ:IF><br></br></p> |
| 1465 |
<p><CHXJ:IF>タグと</CHXJ:IF>タグではさまれたタグやテキストは、変換せずに<b>そのまま</b><span class="note"><a href="#doc1_1093" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="変換しませんので注意が必要です"><sup>(8)</sup></a></span>出力します。必須の属性としてlangがあります。lang属性を指定することによって、例えば、<b>「HDML機の場合のみ出力させる」</b>といったことを可能にします。<br></br><br></br>ex)</p> |
<p><CHXJ:IF>タグと</CHXJ:IF>タグではさまれたタグやテキストは、変換せずに<b>そのまま</b><span class="note"><a href="#doc1_1095" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="変換しませんので注意が必要です"><sup>(8)</sup></a></span>出力します。必須の属性としてlangがあります。lang属性を指定することによって、例えば、<b>「HDML機の場合のみ出力させる」</b>といったことを可能にします。<br></br><br></br>ex)</p> |
| 1466 |
|
|
| 1467 |
<div id="doc1_1103" class="caption">HTML文書中にHDML機の場合のみ有効にしたいタグ、または文書がある場合</div> |
<div id="doc1_1105" class="caption">HTML文書中にHDML機の場合のみ有効にしたいタグ、または文書がある場合</div> |
| 1468 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1469 |
<CHXJ:IF lang="HDML" > |
<CHXJ:IF lang="HDML" > |
| 1470 |
<NODISPLAY> |
<NODISPLAY> |
| 1478 |
<p><br></br></p> |
<p><br></br></p> |
| 1479 |
<p>ex)</p> |
<p>ex)</p> |
| 1480 |
|
|
| 1481 |
<div id="doc1_1107" class="caption">i-Modeのみ出力したい文書がある場合</div> |
<div id="doc1_1109" class="caption">i-Modeのみ出力したい文書がある場合</div> |
| 1482 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1483 |
<CHXJ:IF lang="chtml" > |
<CHXJ:IF lang="chtml" > |
| 1484 |
シークレットコードがどーのこーの。 |
シークレットコードがどーのこーの。 |
| 1489 |
<p><br></br></p> |
<p><br></br></p> |
| 1490 |
<p>また、lang属性は、複数指定することも可能です。<br></br></p> |
<p>また、lang属性は、複数指定することも可能です。<br></br></p> |
| 1491 |
|
|
| 1492 |
<div id="doc1_1113" class="caption">HDML機,J-PHONE機は以下を出力します</div> |
<div id="doc1_1115" class="caption">HDML機,J-PHONE機は以下を出力します</div> |
| 1493 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1494 |
<CHXJ:IF lang="chtml" lang="jhtml"> |
<CHXJ:IF lang="chtml" lang="jhtml"> |
| 1495 |
あなたの携帯は、HDML機かJ-HTML機です。 |
あなたの携帯は、HDML機かJ-HTML機です。 |
| 1502 |
|
|
| 1503 |
<div class="footnote"> |
<div class="footnote"> |
| 1504 |
<ol> |
<ol> |
| 1505 |
<li id="doc1_1093" value="8"> 変換しませんので注意が必要です</ol> |
<li id="doc1_1095" value="8"> 変換しませんので注意が必要です</ol> |
| 1506 |
</div> |
</div> |
| 1507 |
|
|
| 1508 |
|
|
| 1509 |
<h2 id="doc1_1120">絵文字について</h2> |
<h2 id="doc1_1122">絵文字について</h2> |
| 1510 |
|
|
| 1511 |
<p class="first_ja">i-Mode用の絵文字を書いておけば、アクセスしたキャリアによって、mod_chxjが対応の絵文字に自動変換します。ソースに2byteのバイナリコードを直接書いても、10進参照文字列<span class="note"><a href="#doc1_1122" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="16進参照文字列には対応していません"><sup>(9)</sup></a></span>(&#XXX;の形)で書いても、どちらでも変換対象になります。10進参照文字列で書いた場合は、mod_chxjにより、自動で2バイトコードに変換します。</p> |
<p class="first_ja">i-Mode用の絵文字を書いておけば、アクセスしたキャリアによって、mod_chxjが対応の絵文字に自動変換します。ソースに2byteのバイナリコードを直接書いても、10進参照文字列<span class="note"><a href="#doc1_1124" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="16進参照文字列には対応していません"><sup>(9)</sup></a></span>(&#XXX;の形)で書いても、どちらでも変換対象になります。10進参照文字列で書いた場合は、mod_chxjにより、自動で2バイトコードに変換します。</p> |
| 1512 |
|
|
| 1513 |
<div class="footnote"> |
<div class="footnote"> |
| 1514 |
<ol> |
<ol> |
| 1515 |
<li id="doc1_1122" value="9"> 16進参照文字列には対応していません</ol> |
<li id="doc1_1124" value="9"> 16進参照文字列には対応していません</ol> |
| 1516 |
</div> |
</div> |
| 1517 |
|
|
| 1518 |
|
|
| 1519 |
<h3 id="doc1_1125">絵文字変換定義</h3> |
<h3 id="doc1_1127">絵文字変換定義</h3> |
| 1520 |
|
|
| 1521 |
<p class="first_ja">絵文字の変換に関する動作を変えたい場合(例えば「ハートがあったら、AUの場合はスペードに」とか、「変換定義がおかしい」といった場合)は、emoji.xmlファイルを直接編集することによって定義を変更することが可能です。emoji.xmlはXMLファイルとなっていますので、vi等で簡単に定義を変更することができます<span class="note"><a href="#doc1_1127" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="厳密にはXMLになっていないので、日本語の記述はSJISでお願いします。"><sup>(10)</sup></a></span>。</p> |
<p class="first_ja">絵文字の変換に関する動作を変えたい場合(例えば「ハートがあったら、AUの場合はスペードに」とか、「変換定義がおかしい」といった場合)は、emoji.xmlファイルを直接編集することによって定義を変更することが可能です。emoji.xmlはXMLファイルとなっていますので、vi等で簡単に定義を変更することができます<span class="note"><a href="#doc1_1129" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="厳密にはXMLになっていないので、日本語の記述はSJISでお願いします。"><sup>(10)</sup></a></span>。</p> |
| 1522 |
<p><br></br>以下に、emoji.xmlファイルの一部を記します。</p> |
<p><br></br>以下に、emoji.xmlファイルの一部を記します。</p> |
| 1523 |
|
|
| 1524 |
<div id="doc1_1132" class="caption">emoji.xml</div> |
<div id="doc1_1134" class="caption">emoji.xml</div> |
| 1525 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1526 |
<?xml encoding="Shift_JIS" > |
<?xml encoding="Shift_JIS" > |
| 1527 |
|
|
| 1557 |
|
|
| 1558 |
<div class="footnote"> |
<div class="footnote"> |
| 1559 |
<ol> |
<ol> |
| 1560 |
<li id="doc1_1127" value="10"> 厳密にはXMLになっていないので、日本語の記述はSJISでお願いします。</ol> |
<li id="doc1_1129" value="10"> 厳密にはXMLになっていないので、日本語の記述はSJISでお願いします。</ol> |
| 1561 |
</div> |
</div> |
| 1562 |
|
|
| 1563 |
|
|
| 1564 |
<h2 id="doc1_1170">デバイス定義 device_data.xml</h2> |
<h2 id="doc1_1172">デバイス定義 device_data.xml</h2> |
| 1565 |
|
|
| 1566 |
<p class="first_ja">mod_chxjの動作を決定付ける重要な定義です。変換対象の端末は全て、device_data.xmlファイルに定義される必要があります。定義されていない端末は、mod_chxjとしては、認識することができません。認識できない場合には、変換せずにそのまま出力します。ただし、Perl互換の正規表現によって定義できるため、正規表現の書き方によっては全ての機種に対応させることも可能です。</p> |
<p class="first_ja">mod_chxjの動作を決定付ける重要な定義です。変換対象の端末は全て、device_data.xmlファイルに定義される必要があります。定義されていない端末は、mod_chxjとしては、認識することができません。認識できない場合には、変換せずにそのまま出力します。ただし、Perl互換の正規表現によって定義できるため、正規表現の書き方によっては全ての機種に対応させることも可能です。</p> |
| 1567 |
|
|
| 1568 |
<h2 id="doc1_1173">イメージ画像変換機能</h2> |
<h2 id="doc1_1175">イメージ画像変換機能</h2> |
| 1569 |
|
|
| 1570 |
<p class="first_ja">mod_chxjには、JPEG、GIF、PNG、BMPファイルを置いておくだけで、デバイス定義に従って、それぞれのキャリア対応のフォーマットに変換する機能があります。画像のサイズ(縦X横)も、端末の画面サイズに合わせて変換します。画像のサイズ(バイト数)については、デバイス定義中のキャッシュサイズを見て、その値よりも小さくなるように<b>努力</b>しますが、元の画像が大きすぎる場合や、複雑な画像の場合には、キャッシュサイズよりも小さくできずに表示できない場合があります。<br></br>それぞれのタグで指定する場合には、ファイル名の拡張子(.jpgや.gif等)をはずした形で指定します。<br></br>本機能には3つのモードが存在します。そのモードを以下に記します。</p> |
<p class="first_ja">mod_chxjには、JPEG、GIF、PNG、BMPファイルを置いておくだけで、デバイス定義に従って、それぞれのキャリア対応のフォーマットに変換する機能があります。画像のサイズ(縦X横)も、端末の画面サイズに合わせて変換します。画像のサイズ(バイト数)については、デバイス定義中のキャッシュサイズを見て、その値よりも小さくなるように<b>努力</b>しますが、元の画像が大きすぎる場合や、複雑な画像の場合には、キャッシュサイズよりも小さくできずに表示できない場合があります。<br></br>それぞれのタグで指定する場合には、ファイル名の拡張子(.jpgや.gif等)をはずした形で指定します。<br></br>本機能には3つのモードが存在します。そのモードを以下に記します。</p> |
| 1571 |
|
|
| 1572 |
<h3 id="doc1_1182">サムネイルモード</h3> |
<h3 id="doc1_1184">サムネイルモード</h3> |
| 1573 |
|
|
| 1574 |
<p class="first_ja">端末側画面サイズの約3分の1程度のサイズ(縦X横)に画像を縮小表示します。</p> |
<p class="first_ja">端末側画面サイズの約3分の1程度のサイズ(縦X横)に画像を縮小表示します。</p> |
| 1575 |
|
|
| 1576 |
<div id="doc1_1184" class="caption">サムネイルモード 使用例</div> |
<div id="doc1_1186" class="caption">サムネイルモード 使用例</div> |
| 1577 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1578 |
<IMG SRC="/img/logo?Mode=Thumbnail"> |
<IMG SRC="/img/logo?Mode=Thumbnail"> |
| 1579 |
|
|
| 1580 |
</pre> |
</pre> |
| 1581 |
|
|
| 1582 |
|
|
| 1583 |
<h3 id="doc1_1188">壁紙モード</h3> |
<h3 id="doc1_1190">壁紙モード</h3> |
| 1584 |
|
|
| 1585 |
<p class="first_ja">端末側画面のサイズにマッチするサイズに拡大・縮小します。横長の画像の場合には、縦幅を合わせた後に左右をトリミングします。</p> |
<p class="first_ja">端末側画面のサイズにマッチするサイズに拡大・縮小します。横長の画像の場合には、縦幅を合わせた後に左右をトリミングします。</p> |
| 1586 |
|
|
| 1587 |
<div id="doc1_1190" class="caption">壁紙モード 使用例</div> |
<div id="doc1_1192" class="caption">壁紙モード 使用例</div> |
| 1588 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1589 |
<IMG SRC="/img/logo?Mode=WP"> |
<IMG SRC="/img/logo?Mode=WP"> |
| 1590 |
|
|
| 1591 |
</pre> |
</pre> |
| 1592 |
|
|
| 1593 |
|
|
| 1594 |
<h3 id="doc1_1194">EzGetモード</h3> |
<h3 id="doc1_1196">EzGetモード</h3> |
| 1595 |
|
|
| 1596 |
<p class="first_ja">壁紙ダウンロードを行いたい場合に使用します。EzGETモードは、壁紙モードで出力される画像サイズと同一サイズの画像が使用されます。</p> |
<p class="first_ja">壁紙ダウンロードを行いたい場合に使用します。EzGETモードは、壁紙モードで出力される画像サイズと同一サイズの画像が使用されます。</p> |
| 1597 |
|
|
| 1598 |
<div id="doc1_1196" class="caption">EzGetモード 使用例</div> |
<div id="doc1_1198" class="caption">EzGetモード 使用例</div> |
| 1599 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1600 |
<A HREF="/img/logo?Mode=EzGet"> |
<A HREF="/img/logo?Mode=EzGet"> |
| 1601 |
|
|
| 1602 |
</pre> |
</pre> |
| 1603 |
|
|
| 1604 |
|
|
| 1605 |
<h3 id="doc1_1200">その他の機能</h3> |
<h3 id="doc1_1202">その他の機能</h3> |
| 1606 |
|
|
| 1607 |
<p class="first_ja">モードの他に、画像サイズ(縦X横)を直接指定することも可能です。<b>w</b>パラメータ、<b>h</b>パラメータを使用して指定します。</p> |
<p class="first_ja">モードの他に、画像サイズ(縦X横)を直接指定することも可能です。<b>w</b>パラメータ、<b>h</b>パラメータを使用して指定します。</p> |
| 1608 |
|
|
| 1610 |
<li> wパラメータ<br></br>横幅を指定します。 |
<li> wパラメータ<br></br>横幅を指定します。 |
| 1611 |
<li> hパラメータ<br></br>縦幅を指定します。 |
<li> hパラメータ<br></br>縦幅を指定します。 |
| 1612 |
|
|
| 1613 |
<div id="doc1_1220" class="caption">w/hパラメータ 使用例</div> |
<div id="doc1_1222" class="caption">w/hパラメータ 使用例</div> |
| 1614 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1615 |
<IMG SRC="/img/logo?w=100&h=200"> |
<IMG SRC="/img/logo?w=100&h=200"> |
| 1616 |
|
|
| 1620 |
|
|
| 1621 |
<p>上記全てのモード、パラメータはGETリクエストとしてのみ使用できます。</p> |
<p>上記全てのモード、パラメータはGETリクエストとしてのみ使用できます。</p> |
| 1622 |
|
|
| 1623 |
<h2 id="doc1_1231">QRコード出力機能</h2> |
<h2 id="doc1_1233">QRコード出力機能</h2> |
| 1624 |
|
|
| 1625 |
|
|
| 1626 |
<h3 id="doc1_1233">QRコード出力ハンドラの登録</h3> |
<h3 id="doc1_1235">QRコード出力ハンドラの登録</h3> |
| 1627 |
|
|
| 1628 |
<p class="first_ja">QRコード出力機能を使用するには、QRコードハンドラを登録します。httpd.confに以下の記述を追加します。</p> |
<p class="first_ja">QRコード出力機能を使用するには、QRコードハンドラを登録します。httpd.confに以下の記述を追加します。</p> |
| 1629 |
|
|
| 1630 |
<div id="doc1_1235" class="caption">httpd.conf</div> |
<div id="doc1_1237" class="caption">httpd.conf</div> |
| 1631 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1632 |
AddHandler chxj-qrcode .qrc |
AddHandler chxj-qrcode .qrc |
| 1633 |
</pre> |
</pre> |
| 1634 |
|
|
| 1635 |
<p>なお、ハンドラを登録しないでも、出力フィルターを経由させることで、QRコードを出力させることも可能です。(※QRコードの動的出力を参照)</p> |
<p>なお、ハンドラを登録しないでも、出力フィルターを経由させることで、QRコードを出力させることも可能です。(※QRコードの動的出力を参照)</p> |
| 1636 |
|
|
| 1637 |
<h3 id="doc1_1239">QRコードソースファイルの設置</h3> |
<h3 id="doc1_1241">QRコードソースファイルの設置</h3> |
| 1638 |
|
|
| 1639 |
<p class="first_ja">ハンドラを登録したら、その登録した拡張子を持つファイルを用意します。</p> |
<p class="first_ja">ハンドラを登録したら、その登録した拡張子を持つファイルを用意します。</p> |
| 1640 |
|
|
| 1641 |
<div id="doc1_1241" class="caption">例:a.qrc</div> |
<div id="doc1_1243" class="caption">例:a.qrc</div> |
| 1642 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1643 |
<?xml version=1.0 ?> |
<?xml version=1.0 ?> |
| 1644 |
|
|
| 1661 |
<li> dataタグdataタグは、QRコードに出力するデータを指定します。改行した場合は、改行文字もQRコード内に符号化されます。</ol> |
<li> dataタグdataタグは、QRコードに出力するデータを指定します。改行した場合は、改行文字もQRコード内に符号化されます。</ol> |
| 1662 |
|
|
| 1663 |
|
|
| 1664 |
<h3 id="doc1_1263">QRコードの動的出力機能</h3> |
<h3 id="doc1_1265">QRコードの動的出力機能</h3> |
| 1665 |
|
|
| 1666 |
<p class="first_ja">プログラム等を使用し、動的にQRコードを出力したい場合は、上記の.qrcファイルの内容をそのままOutputFilterに通してあげればOKです。つまり、ChxjConvertRuleディレクティブで"EngineOn"と指定したURIが指すディレクトリに設置すれば良いということです。mod_chxj内部で、Content-Typeがtext/xmlの場合、QRCode用のファイルであるかどうかを一度読み込んで判断するので、Content-Typeには、text/xmlを設定してください。</p> |
<p class="first_ja">プログラム等を使用し、動的にQRコードを出力したい場合は、上記の.qrcファイルの内容をそのままOutputFilterに通してあげればOKです。つまり、ChxjConvertRuleディレクティブで"EngineOn"と指定したURIが指すディレクトリに設置すれば良いということです。mod_chxj内部で、Content-Typeがtext/xmlの場合、QRCode用のファイルであるかどうかを一度読み込んで判断するので、Content-Typeには、text/xmlを設定してください。</p> |
| 1667 |
|
|
| 1668 |
<div id="doc1_1265" class="caption">phpでQRコードを動的に出力する例</div> |
<div id="doc1_1267" class="caption">phpでQRコードを動的に出力する例</div> |
| 1669 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1670 |
<php |
<php |
| 1671 |
$version = $_POST["version"]; |
$version = $_POST["version"]; |
| 1689 |
|
|
| 1690 |
<p>そして、上記のコードを、mod_chxj変換エンジンが処理するはずであるところに設置すれば完了です。</p> |
<p>そして、上記のコードを、mod_chxj変換エンジンが処理するはずであるところに設置すれば完了です。</p> |
| 1691 |
|
|
| 1692 |
<h2 id="doc1_1270">Cookieシミュレート機能(EXPERIMENTAL)</h2> |
<h2 id="doc1_1272">Cookieシミュレート機能(EXPERIMENTAL)</h2> |
| 1693 |
|
|
| 1694 |
|
|
| 1695 |
<h3 id="doc1_1272">Cookieシミュレート機能(EXPERIMENTAL)</h3> |
<h3 id="doc1_1274">Cookieシミュレート機能(EXPERIMENTAL)</h3> |
| 1696 |
|
|
| 1697 |
<p class="first_ja">Cookieを受け付けない(無視する)端末のためにCookieをシミュレートします。本機能を有効にするためにはChxjConvertRuleディレクティブを使用する必要があります。ChxjConvertRuleディレクティブの第2パラメータにCookieOnを指定します。</p> |
<p class="first_ja">Cookieを受け付けない(無視する)端末のためにCookieをシミュレートします。本機能を有効にするためにはChxjConvertRuleディレクティブを使用する必要があります。ChxjConvertRuleディレクティブの第2パラメータにCookieOnを指定します。</p> |
| 1698 |
|
|
| 1699 |
<div id="doc1_1274" class="caption">Cookieシミュレート機能を有効にする例</div> |
<div id="doc1_1276" class="caption">Cookieシミュレート機能を有効にする例</div> |
| 1700 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1701 |
ChxjConvertRule "^/chxj.+$" "EngineOn,CookieOn" "NONE" |
ChxjConvertRule "^/chxj.+$" "EngineOn,CookieOn" "NONE" |
| 1702 |
|
|
| 1703 |
</pre> |
</pre> |
| 1704 |
|
|
| 1705 |
|
|
| 1706 |
<h3 id="doc1_1278">One-Time ID</h3> |
<h3 id="doc1_1280">One-Time ID</h3> |
| 1707 |
|
|
| 1708 |
<p class="first_ja">Cookieシミュレートでは、aタグ、imgタグ、formタグのURL部にOne-Time IDを埋め込むことで実現します。そのため、ユーザがブラウザの戻るボタン等で戻った場合はCookieを取得できなくなります。</p> |
<p class="first_ja">Cookieシミュレートでは、aタグ、imgタグ、formタグのURL部にOne-Time IDを埋め込むことで実現します。そのため、ユーザがブラウザの戻るボタン等で戻った場合はCookieを取得できなくなります。</p> |
| 1709 |
|
|
| 1710 |
<h3 id="doc1_1281">Cookieの保存場所</h3> |
<h3 id="doc1_1283">Cookieの保存場所</h3> |
| 1711 |
|
|
| 1712 |
<p class="first_ja">Cookieの内容は、サーバ側に保存されます。保存ディレクトリはChxjCookieDirディレクティブを使用することで指定することができます。指定しなかった場合は、/tmpに保存されます。</p> |
<p class="first_ja">Cookieの内容は、サーバ側に保存されます。保存ディレクトリはChxjCookieDirディレクティブを使用することで指定することができます。指定しなかった場合は、/tmpに保存されます。</p> |
| 1713 |
|
|
| 1714 |
<div id="doc1_1283" class="caption">ChxjCookieDirの例</div> |
<div id="doc1_1285" class="caption">ChxjCookieDirの例</div> |
| 1715 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1716 |
ChxjCookieDir /var/abc |
ChxjCookieDir /var/abc |
| 1717 |
|
|
| 1718 |
</pre> |
</pre> |
| 1719 |
|
|
| 1720 |
|
|
| 1721 |
<h3 id="doc1_1287">Cookieの保持期間</h3> |
<h3 id="doc1_1289">Cookieの保持期間</h3> |
| 1722 |
|
|
| 1723 |
<p class="first_ja">ChxjCookieTimeoutディレクティブで保持期間を指定することができます。指定しなかった場合は1800秒でサーバに保存されているCookieは削除されます。</p> |
<p class="first_ja">ChxjCookieTimeoutディレクティブで保持期間を指定することができます。指定しなかった場合は1800秒でサーバに保存されているCookieは削除されます。</p> |
| 1724 |
|
|
| 1725 |
<div id="doc1_1289" class="caption">ChxjCookieTimeoutの例</div> |
<div id="doc1_1291" class="caption">ChxjCookieTimeoutの例</div> |
| 1726 |
<pre class="program" style="margin-top:0"> |
<pre class="program" style="margin-top:0"> |
| 1727 |
<Location /> |
<Location /> |
| 1728 |
ChxjCookieTimeout 10 |
ChxjCookieTimeout 10 |
| 1732 |
|
|
| 1733 |
<p>上記の例は、10秒でタイムアウト(サーバから削除)するように指定しています。</p> |
<p>上記の例は、10秒でタイムアウト(サーバから削除)するように指定しています。</p> |
| 1734 |
|
|
| 1735 |
<h2 id="doc1_1294">Refererシミュレート機能(EXPERIMENTAL)</h2> |
<h2 id="doc1_1296">Refererシミュレート機能(EXPERIMENTAL)</h2> |
| 1736 |
|
|
| 1737 |
|
|
| 1738 |
<h3 id="doc1_1296">Refererシミュレート機能(EXPERIMENTAL)</h3> |
<h3 id="doc1_1298">Refererシミュレート機能(EXPERIMENTAL)</h3> |
| 1739 |
|
|
| 1740 |
<p class="first_ja">DoCoMo端末などのRefererに対応していない機種のためにRefererシミュレート機能を提供します。本機能は、Cookieシミュレート機能を有効にすると、自動で有効になります(将来的には変更予定)。</p> |
<p class="first_ja">DoCoMo端末などのRefererに対応していない機種のためにRefererシミュレート機能を提供します。本機能は、Cookieシミュレート機能を有効にすると、自動で有効になります(将来的には変更予定)。</p> |
| 1741 |
</body> |
</body> |