[晴]fancyurlできた

ちと諦め気味だったfancyurl
できたよー


【さくらインターネットの場合(CGI版PHP)】
コントロールパネルにある「PHP設定ファイルの編集」で
cgi.fix_pathinfo=1
という宣言を加える。
これで、
http://www.rottarte.net/nucleus/item/459
の部分を取得できるようになる。

次に、Nucleusの配置したディレクトリにあるextra/fancyurlsディレクトリの内容を編集する。
archive、archives、blog、category、item、memberファイルに拡張子phpを付け加えて
archive.php、archives.php、blog.php、category.php、item.php、member.phpにする。
PHP拡張子を加えたそれぞれのファイル内にある
 $data = explode(“/”,serverVar(‘PATH_INFO‘));

 $data = explode(“/”,serverVar(‘ORIG_PATH_INFO‘));
にする。

fancyurls.config.phpの$CONF[‘Self’]を自分のNucleusのディレクトリに設定。
例:)$CONF[‘Self’] = ‘http://www.rottarte.net/nucleus’
※最後に / は付けないこと

それらを、サーバのconfig.phpが置かれている場所にアップロード。
ちなみに、「.htaccess」はアップロードなくてよい。

アップロードしたPHPファイルにユーザーの実行権限を付け加える(chmod 744 とか)。

アップロードしたディレクトリにある、index.phpを編集
$CONF[‘Self’] = ‘index.php’;

$CONF[‘Self’] = ‘.’;
に変更。

Nucleusの管理画面から「Global Settings」を選択。
その中にある「URLモード」でFancyを選択して保存。

たしか、この位のはずだ。
URLとしてちょっとおかしい部分もあるけど、まぁ動いてる。

ちなみに、php拡張子をつけたのに何故 http://www.rottarte.net/nucleus/item/459 でアクセスできるかってと、
Apacheの設定として
 Options +MultiViews
があるから。
逆に拡張子なしで.htaccessでどうにかしようとすると500番台エラーが発生したり、phpコマンドがセキュリティー警告を出して動かない。

コメントを残す

メールアドレスが公開されることはありません。