掲示板/5/wiki内部のリンクが正常でない
■ 帽子草 2005-09-08 13:25:08
wikiやphpについての知識が全く無いので要領を得ないかもしれませんが、ご容赦くださりませ。
wiki内部のページへ移動するリンクが、本来なら
ttp://XXXX/index.php?YYYYY
等となるべきところが、
ttp://XXXX/index.php/YYYYY
等となってしまいページが正常に表示されません。文字コードの変換に問題があるのかもと思いましたが、
どのファイルのどの部分を修正するべきかわかりません。
これだけでは情報に乏しいかもしれませんが、何かおわかりならお教えください。
ようか 2005-09-08 18:55:24
「index.php?xxx」ではなく「index.php/xxx」となっているのは正しい動作で、エキストラパス(PATH_INFO)と呼ばれるものを使っています(*1)。
可能であればサーバの設定を見直してください。apacheではデフォルトでエキストラパスが使えますが、IISでは設定を変える必要があります。
「ホームディレクトリ」タブの「構成」「マッピング」でphpの設定を選び「編集」で表示される「アプリケーションの拡張子マッピングの追加/編集」で「ファイルの存在を確認する」チェックボックスをoffにしてください。それでエキストラパスが有効になります。
サーバの設定を変えられない場合は、hideable/func.inc.phpの「function getURL($page)」のところを次のように書き換えてください。
/**
* URLを取得する。
*
* @param mixed $page ページ。Pageまたはstring。
* @return string URL
*/
function getURL($page)
{
if(is_string($page)){
$page = Page::getinstance($page);
}
$encoded = rawurlencode($page->getpagename());
return SCRIPTURL . '?' . $encoded;
}
これでエキストラパスではなく「index.php?xxx」のスタイルになります(ただ、バージョンアップのたびに書き換えないといけません。オプションで選択できるようにするつもりはありません)。
帽子草 2005-09-08 20:35:39
解決しました。有難う御座います。
エキストラパスについても、サーバ管理者に問い合わせてみます。
- 8: http://wordtantei.com/result/%E3%82%A8%E3%82%AD%E3%82%B9%E3%83%88%E3%83%A9/tbs+%E3%82%A8%E3%82%AD%E3%82%B9%E3%83%88%E3%83%A9+%E8%8A%B1%E3%82%88%E3%82%8A%E7%94%B7%E5%AD%90
- 2: http://apple.excite.co.jp/search.gw?look=applejp_jp&search=getURL+%83p%83X
- 2: http://php.nekosuke.net/go.php?http://kinowiki.net/index.php/%E6%8E%B2%E7%A4%BA%E6%9D%BF/5/wiki%E5%86%85%E9%83%A8%E3%81%AE%E3%83%AA%E3%83%B3%E3%82%AF%E3%81%8C%E6%AD%A3%E5%B8%B8%E3%81%A7%E3%81%AA%E3%81%84
- 1: http://www.google.com/search
- 1: http://cgi.search.biglobe.ne.jp/cgi-bin/search_bl_top?q=%E3%83%AA%E3%83%B3%E3%82%AF%E3%81%8C%E3%81%A7%E3%81%A6%E3%81%93%E3%81%AA%E3%81%84&ie=utf8&num=10&start=0

