トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

pc2m

[カテゴリ:サーバアプリ]

pc2m - PC用ホームページを携帯端末からアクセス可能に

参考

PCサイト->携帯変換スクリプト
http://www.rcdtokyo.com/pc2m/note/

概要

PC用Webサイトを簡単に携帯サイト化できる。

PCサイト->携帯変換スクリプト
http://www.rcdtokyo.com/pc2m/note/

パソコン用ホームページを、NTTドコモのiモード、
au/TU-KAのEZweb、Vodafone/J-Phoneといった携帯
電話端末で利用できるように変換します。フルブラ
ウザがなくても、アプリが動かなくても、3Gじゃな
くても、端末IDが送信できなくても大丈夫。

要はpc2mがProxyとして動くということ。

+----+     +-----+----+     +-----+
|    |     |     |    |     |     |
|携帯|---->|httpd|pc2m|---->|httpd|
|    |<----|     |    |<----|     |
|    |     |     |    |     |     |
+----+     +-----+----+     +-----+

インストール

ダウンロード

goun@prius:~/src$ mkdir pc2m
goun@prius:~/src$ cd pc2m
goun@prius:~/src/pc2m$ wget http://osdn.dl.sourceforge.jp/pc2m/20478/pc2m-0.9.18.zip
--16:16:24--  http://osdn.dl.sourceforge.jp/pc2m/20478/pc2m-0.9.18.zip
           => `pc2m-0.9.18.zip'
osdn.dl.sourceforge.jp をDNSに問いあわせています... 61.215.208.23
osdn.dl.sourceforge.jp[61.215.208.23]:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 64,906 [application/zip]

100%[====================================>] 64,906        --.--K/s

16:16:24 (1.85 MB/s) - `pc2m-0.9.18.zip' を保存しました [64906/64906]

goun@prius:~/src/pc2m$ wget http://www.rcdtokyo.com/pc2m/pearpack.zip
--16:16:37--  http://www.rcdtokyo.com/pc2m/pearpack.zip
           => `pearpack.zip'
www.rcdtokyo.com をDNSに問いあわせています... 222.227.75.7
www.rcdtokyo.com[222.227.75.7]:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 46,468 [application/zip]

100%[====================================>] 46,468        --.--K/s

16:16:37 (390.62 KB/s) - `pearpack.zip' を保存しました [46468/46468]

goun@prius:~/src/pc2m$ ls -al
合計 112
drwxr-xr-x  2 goun goun   112 2006-08-11 16:16 .
drwxr-xr-x  7 goun goun   176 2006-08-11 16:16 ..
-rw-r--r--  1 goun goun 64906 2006-06-11 15:01 pc2m-0.9.18.zip
-rw-r--r--  1 goun goun 46468 2006-06-09 19:37 pearpack.zip

解凍

goun@prius:~/src/pc2m$ unzip pc2m-0.9.18.zip
Archive:  pc2m-0.9.18.zip
  inflating: pc2m-0.9.18/.htaccess
  inflating: pc2m-0.9.18/Auth.inc.php
  inflating: pc2m-0.9.18/ClientDetect.class.php
  inflating: pc2m-0.9.18/Config.inc.php
  inflating: pc2m-0.9.18/data/.htaccess
  inflating: pc2m-0.9.18/DevInfo_DoCoMo.inc.php
  inflating: pc2m-0.9.18/ErrorMessages.inc.php
  inflating: pc2m-0.9.18/Frontpage.inc.php
  inflating: pc2m-0.9.18/IPRange.inc.php
  inflating: pc2m-0.9.18/r.php
  inflating: pc2m-0.9.18/README.TXT
  inflating: pc2m-0.9.18/Setup.inc.php
  inflating: pc2m-0.9.18/Template.inc.php
  inflating: pc2m-0.9.18/_check.php
  inflating: pc2m-0.9.18/_check_auth.php
  inflating: pc2m-0.9.18/_check_devinfo.php
  inflating: pc2m-0.9.18/pc2m.php
goun@prius:~/src/pc2m$ unzip pearpack.zip
Archive:  pearpack.zip
  inflating: pearpack/HTTP/Client/CookieManager.php
  inflating: pearpack/HTTP/Client.php
  inflating: pearpack/HTTP/Request/Listener.php
  inflating: pearpack/Net/CheckIP.php
  inflating: pearpack/Net/DNSBL.php
  inflating: pearpack/Net/Socket.php
  inflating: pearpack/Net/URL.php
  inflating: pearpack/PEAR.php
  inflating: pearpack/README_PEARPACK.TXT
  inflating: pearpack/XML/Parser.php
  inflating: pearpack/XML/RSS.php
  inflating: pearpack/HTTP/Request.php

ファイル配置

goun@prius:~/src/pc2m$ chmod a+w pc2m-0.9.18/data
goun@prius:~/src/pc2m$
goun@prius:~/src/pc2m$ chmod a+w pc2m-0.9.18/data
goun@prius:~/src/pc2m$ ls -al
合計 113
drwxr-xr-x  4 goun goun   168 2006-08-11 16:17 .
drwxr-xr-x  7 goun goun   176 2006-08-11 16:16 ..
drwxr-xr-x  3 goun goun   608 2006-08-11 16:17 pc2m-0.9.18
-rw-r--r--  1 goun goun 64906 2006-06-11 15:01 pc2m-0.9.18.zip
drwxr-xr-x  5 goun goun   184 2006-08-11 16:17 pearpack
-rw-r--r--  1 goun goun 46468 2006-06-09 19:37 pearpack.zip
goun@prius:~/src/pc2m$ sudo mv pc2m-0.9.18 /var/www/local/
Password:
goun@prius:~/src/pc2m$ sudo mv pearpack /var/www/local/pc2m-0.9.18/
goun@prius:~/src/pc2m$ ls -al /var/www/local
:
drwxr-xr-x    3 goun goun  608 2006-08-11 16:17 pc2m-0.9.18
:
goun@prius:~/src/pc2m$
goun@prius:~/src/pc2m$ cd /var/www/local
goun@prius:/var/www/local$ sudo ln -s /var/www/local/pc2m-0.9.18 /var/www/pc2m
goun@prius:/var/www/local$ ls -al /var/www
:
lrwxrwxrwx   1 root root      26 2006-08-11 16:20 pc2m -> /var/www/local/pc2m-0.9.18
goun@prius:/var/www/local$

http://localhost/pc2m/_check.php
を表示してみる。

エラーいっぱいでた
Config.inc.phpを適当に修正して表示できるようになった。

特定のURL以外へのアクセスを禁止するハック

Proxyとして踏み台に使われるのは困るので、
固定のURLにのみアクセス可能とする。

function sendRequest($_url, $_client_param = array(), $_post_data = array(), $_is_framesrc = false, $_referer = null) {

        global $client;
        global $remote_url;
        global $local_args;
        global $new_image;
        global $image_quality;
        global $mime_types;
        global $_current_url;
        global $_remote_charset;
        global $_is_httperror;
// ↓ここから
if (!ereg("^http://localhost/hogehoge/", $_url)) {
        $_url = "dummy";
}
// ↑ここまで
        $_remote_charset = null;
        if (isset($_SESSION)
                and $local_args['i'] !== null
                and $local_args['p'] !== null
                and $local_args['r'] !== null) {
                extract(parse_url($_url));
                $_SESSION['www_authenticate'][md5($host.$local_args['r'])] = array(
                        'path' => getDirName($path),
                        'user' => $local_args['i'],
                        'pass' => $local_args['p']
                );
        }

携帯に表示させたくない部分を明示的に指定するには。

<!--pc2m_void-->
hogehoge
<!--/pc2m_void-->

のように囲めばよい。

最終更新時間:2006年08月16日 14時42分47秒