しらぎくモバイルシステムはCGIですので、通常のご利用では、コンテンツは動的と思われるURIになります。
このため、URIがちょっと長くなってしまいます。
しかし、アパッチサーヴァでエクストラパスとmod_rewriteが利用出来る環境であれば、静的な短いURIにする事も可能です。
尚、この方法を実際に利用するには、第4.283版(平成19年 1月15日)以降にアップデートされる事を強く推奨します。
静的なURIに読み替えるためには、CGIでは必ずエクストラパスを利用するようにして下さい。
以下、
とします。
また、HTML文書の拡張子は「.html」とします。
先ず、設定スクリプト「KConfig.pl」での設定で変数$this_addr(当システムの設置アドレス)に空文字列を指定した状態で、スクリプトを設置します。
そして、PCブラウザにCGIの設置ディレクトリのURIを入力してCGIが正常に動作している事を確かめて下さい。
正常に動作しない場合は、設定が間違っている可能性がありますので、正しく動作するまでは次のステップに入らないようにして下さい。
正常に動作する事を確認したら、いよいよmod_rewriteに依るURI読替昨日の実装に入ります。
まずサイト最上位ディレクトリへの公称URIとなるディレクトリに以下の内容の.htaccessを設置します。
RewriteEngine onRewriteCond %{REQUEST_URI} \/img\.cgiRewriteRule (.*) http://www.xxx.net/cgi/$1 [L]RewriteCond %{REQUEST_URI} \.html$ [OR]RewriteCond %{REQUEST_URI} \.html\?RewriteRule (.*) http://www.xxx.net/cgi/K.cgi/$1 [L]RewriteCond %{REQUEST_URI} /$ [OR]RewriteCond %{REQUEST_URI} /\?RewriteRule (.*) http://www.xxx.net/cgi/K.cgi/$1 [L]RewriteCond %{REQUEST_URI} /[^^\/\.\?]+\?RewriteRule ([^\?]*)\?(.*) http://www.yyy.net/$1/?$2 [R=301,L]RewriteCond %{REQUEST_URI} \?RewriteRule (.*) http://www.xxx.net/cgi/K.cgi/$1 [L]RewriteCond %{REQUEST_URI} /[^^\/\.]+\ZRewriteRule (.*) http://www.yyy.net/$1/ [R=301,L]
続いて、設定スクリプト「KConfig.pl」に於いて変数$this_addr(当システムの設置アドレス)にはこの最上位ディレクトリへのURIに変更します。
すなわち、
$this_addr='http://www.yyy.net/';
と変更します。
この場合、.htaccessの記述が正しくないか、URIが間違っているなどが考えられます。
先ず、.htaccess内に四つある[L]の内、二番目から四番目の三つを[R,L]に書き換えて、正常にCGIのURIに書き換えられているかどうかを確かめて下さい。
http://www.xxx.net/cgi/K.cgi/hoge.htmlにリダイレクトされなければなりません。.htaccessを修正するなどして正常に動作した場合は、[R,L]を三つとも[L]に戻して下さい。
この場合、一番目の[L]を[R,L]に書き換え、「公称ディレクトリのURI/img.cgi」が正しく「CGI設置ディレクトリ/img.cgi」にリダイレクトされる事を確かめて下さい。
http://www.xxx.net/cgi/img.cgiにリダイレクトされなければなりません。.htaccessを修正するなどして正常に動作した場合は、[R,L]を[L]に戻して下さい。