PATH_INFO
PATH_INFO を用いた SEO 対策の調査ログ
index.php/hoge/hoge でアクセス
lib/html.php
if (isset($_SERVER['QUERY_STRING']) && $_SERVER['QUERY_STRING']) { $arg = & $_SERVER['QUERY_STRING']; +} else if (array_key_exists('PATH_INFO',$_SERVER) and $_SERVER['PATH_INFO'] != '') { + $arg = preg_replace("/^\/*(.+)\/*$/","$1",$_SERVER['PATH_INFO']); } else if (isset($_SERVER['argv']) && ! empty($_SERVER['argv'])) { $arg = & $_SERVER['argv'][0]; }
+function rurlencode($uri) { + $parts = explode('/', $uri); + for ($i = 0; $i < count($parts); $i++) { + $parts[$i] = rawurlencode($parts[$i]); + } + return implode('/', $parts); +} +
ところどころの rawurlencode を rurlencode に、$script . '?' を $script . '/' にする模様。 基本的には従来方式でも動くので、プラグイン作者に強いることはなく、本体だけ変えれば。
Refer sitedev2。
index.php の .php を削るのは .htaccess をいじる
<FilesMatch "^index$"> ForceType application/x-httpd-php </FilesMatch>
元ネタはこちらのようだ
http://wiki.nothing.sh/page/memo/PukiWiki%20with%20PATH_INFO