一覧 検索 最終更新 改名 | ヘルプ | 最終更新のRSS |

memo/PukiWiki with PATH_INFO のバックアップ差分(No.2)


*PukiWiki with PATH_INFO
 
 要は pukiwiki で path_info を見るようにする改造。
 要は pukiwiki で path_info を見るようにする改造。適当。
 PHP の知識はあるものとします。
 
 **スクリプトの変更部分
 
 ***init.php
 -pukiwiki ルートディレクトリ内の php ファイルで
  // QUERY_STRINGを取得
  if (array_key_exists('QUERY_STRING',$_SERVER) and $_SERVER['QUERY_STRING'] != '') {
         $arg = $_SERVER['QUERY_STRING'];
  } else if (array_key_exists('argv',$_SERVER) and count($_SERVER['argv']))
 else if 以下の部分を下のように変更
  } else if (array_key_exists('PATH_INFO',$_SERVER) and $_SERVER['PATH_INFO'] != '') {
          $arg = preg_replace("/^\/*(.+)\/*$/","$1",$_SERVER['PATH_INFO']);
  } else if (array_key_exists('argv',$_SERVER) and count($_SERVER['argv']))
 
 ***make_link.php
 
 -先頭に以下を追加
  function rurlencode($uri) {
     $parts = explode('/', $uri);
     for ($i = 0; $i < count($parts); $i++) {
       $parts[$i] = rawurlencode($parts[$i]);
     }
     return implode('/', $parts);
  }
 -以下を探し出して
                  $this->url = ($url === FALSE) ?
                          $script.'?'.rawurlencode('[['.$name.':'.$this->param.']]') :
                          htmlspecialchars($url);
 以下のように変更
                  $this->url = ($url === FALSE) ?
                          $script.'/'.rurlencode('[['.$name.':'.$this->param.']]') :
                          htmlspecialchars($url);
 -その他の rawurlencode を rurlencode に置換。
 --関数 make_pagelink() 内の
  $r_refer = ($refer == '') ? '' : '&amp;refer='.rawurlencode($refer);
 はそのまま。
 
 ***html.php
 -function catbody 内の以下のパスを変更
         $link_top      = "$script/".rurlencode($defaultpage);
         $link_whatsnew = "$script/".rurlencode($whatsnew);
         $link_help     = "$script/".rurlencode($help_page);
 -上の一連の直後に以下を追加
         $r_page = rurlencode($_page);
 -その他の関数内の rawurlencode を rurlencode に置換。
 --catbody() 内の一連の $link_... 前の rawurlencode はそのまま。
 --make_search() 内の rawurlencode はそのまま。
 -$script?$r_link となっている部分を $script/$r_link に置換。
 -$script?$r_page となっている部分を $script/$r_page に置換。
 
 ***skin/pukiwiki.skin.ja.php
 --img タグ等の src を絶対パス指定に変更。
 -img タグ等の src を絶対パス指定に変更。
 (ex.  src="./image/new.png" → src="/image/new.png" )
 -$script?$r_page となっている部分を $script/$r_page に置換。
 
 **あとpluginからも適当に探し出して置換。
 -attachとかrefとか。
 -recent も。
 

(HTML conversion costs 0.005 sec.)