設定MEMO  ページ一覧  検索  更新履歴  編集履歴  PageRank  RSS  ソース  ログイン  HikiFarm

Pretend Static URLon Hiki Farm - 編集履歴

!HikiFarmでindex.cgi?hoge じゃなく hoge.html でアクセスしてもらうには
[[hiki.cgi?hoge じゃなく hoge.html でアクセスしてもらうには|http://www.namaraii.com/hiki/?PretendStaticURL]]をみて、HikiFarmでも出来ないか考えたら出来てしまったのでメモしておく。

!必要なプラグイン
上記のサイトにあるものをそのまま使わせて頂いてます。ちなみに
 def hiki_anchor( page, text )
   unless page == 'FrontPage' then
     make_anchor("#{page.gsub(/%2F/,'%252F')}.html", text)
   else
     make_anchor('.', text)
   end
 end
と言うものです。これをhtml_anchor.rbなどとして、pluginディレクトリに入れれば動きます。

! .htaccessに必要な記述
apacheのModRewriteを使うのでそれぞれのWikiに次の記述が必要です。
 RewriteEngine on
 RewriteBase /wikiname/
 RewriteRule ^(.+)\.html hiki.cgi?$1 [L]

!HikiFarmのindex.cgi修正
96行目あたりの
 def conf( wiki )
の下あたりに次の内容で追加する。
 def htaccess( wiki )
 <<HTACCESS
 RewriteEngine on
 RewriteBase /#{wiki}/
 RewriteRule ^(.+)\.html index.cgi?$1 [L]
 HTACCESS
 end
そして、237行目あたりの
 def create_wiki( wiki, data_path )
の中の適当なところに
 File::open( "#{wiki}/.htaccess", 'w' ) do |f|
    f.puts( htaccess( wiki ) )
 end
の様に記述する。

これでHikiFarmから新しいWikiを作成したら新しいWiki内にindex.cgiとhikiconf.rbに加えて.htaccessが出来て、作成した文書に「hoge.html」でアクセスできるようになりました。このサイトも現在その設定で動いています。
更新日時:2024/03/29 21:59:29
キーワード:
参照: