ページの作成や編集にはユーザ登録が必要です。
FSWikiサポート掲示板
- 設置に関するトラブルや要望などがあれば書き込んでください。
- 記事のタイトル一覧をサポート掲示板一覧で見る事ができます。それ以前の過去ログは[サポート掲示板]から参照できます。
- 投稿する前に
- Tips、FAQ、サポート掲示板の過去ログに同様の内容がないかを確認してください。
- バグ報告に関してはバグトラックのほうにお願いします。
- 機能拡張のためのパッチやプラグインの投稿はプラグイン投稿にお願いします。
- パッチは本体にあてるものの場合はGPL、プラグインにあてるものの場合はプラグインのライセンスにしたがうものとします。
- 開発に関するご意見、質問等はメーリングリストにお願いします。
- FSWikiとは無関係と思われる投稿、コメントに関しては削除させていただきますのでご了承ください。
- 特定の設置環境でのみ発生するトラブルがいくつかあります。トラブル報告の際には、「どんな設定の」「どのサーバ/レンタルスペースに」「どうやって」設置したかを詳しく書くと、返事がもらいやすいですよ
- どういうことを書けば回答を得やすいか判らない方は、こちらのページをご一読ください。
添付ファイルのダウンロードについて - clie (2008年12月13日 17時23分47秒)
WordやExcelなどのファイルを開こうとすると、
Content-Type: application/msword Content-Disposition: attachment;filename="〜ュ1ュ1ュ1$04h・lム1!Zニニニム〜
となってしまい、WordやExcelなどで開きません。サーバ環境はWindowsServer2003、WEBサーバはIIS6.0+ActivePer5.10.0ですが、何か設定が必要なのでしょうか?因みにWindows2000+IIS5.0+ActivePerlでは問題なく表示できていました。
- FSWikiの、perl5.10での動作実績ってあるんでしたっけ? 過去の不具合投稿(不具合内容は異なりますが)で、perlを5.8.xにバージョンダウンしたら動いたという報告がいくつかあったと思うのですが...。 - ななし (2008年12月13日 18時14分17秒)
- 5.8.xですか。一応、5.10.0でファイル部分以外はうまく動いてるんですけどねぇ。。。 - clie (2008年12月13日 20時23分03秒)
- 動いてたときの ActivePerl は 5.8.x と考えてよろしいですか? あと、ブラウザは IE ですか? 最後に、FSWiki のバージョンを教えて下さい。もしかしたら対策があるかもしれません。 - ぐうます (2008年12月16日 22時42分05秒)
FSwikiの負荷について - MRB (2008年12月11日 21時28分34秒)
BBS-サポート掲示板/59やBBS-サポート掲示板/701にも記載がありますが、FSwikiの負荷軽減について、知恵を貸していただけないでしょうか(FSwikiバージョン 3.6.3 dev3)。
1日のアクセスは5万件程度しかありませんが、503エラーが頻発しているのが現状です。
以下は実施済みです。
- 自動リンク生成無効化
- パート編集無効
- 使わないプラグインはインストールしない
- ヘッダ フッタ デフォルト 各.tmplの簡素化
ちなみに、サーバはさくらのスタンダードを使用しており、サーバCPU利用時間は3時間程度です。
- 50kPV/日が少ないかどうかはよくわかりませんが、3時間/50kPV = 60×60×3秒/50kPV = 0.216秒/PV となるので、ここからさらに減らすのは難しい気がします。ちなみに、うちもさくらのスタンダードですが、先ほど、ほとんど素のままでページ数もない3.6.3dev3で測ったら、だいたい 0.16秒/PV くらいです。 - 菜梨 (2008年12月11日 23時59分15秒)
- コメントありがとうございます。うちのほうが約20%負荷が増えているんですね…。JavaScriptで代替可能な部分については、変えていこうかと思います。念のため、さくらのサポートに障害ではないかどうかを確認したところ、やはり単なる負荷増でした。で、上位プランに変更しても状況はおそらく改善せず、複数サーバで負荷分散をするか、専用サーバを勧められました…。 - MRB (2008年12月14日 00時32分47秒)
- ええと、説明不足だったかもしれませんので補足致しますと、上記の 0.16 秒/PV というのは、Header なし、Footer なし、Menu(SideBar)なし、本文にはプラグインは 1 つも記述せず、文章も2行くらいしかない状態での測定値ですので、使用したサーバでの FSWiki 処理時間の下限値を示していると考えています。すなわち、実際のサイト運用にあたってはさらに処理が増えることは避けられないので、MRB さんのサイトの数値は、実運用サイトとしてはかなりよい数字なのではないかと思うのです。 - 菜梨 (2008年12月14日 01時08分32秒)
- かってながらこちらでまとめております。ご高覧下さい。 - すなぷ (2008年12月14日 10時47分19秒)
- 皆様、ありがとうございます。上記に加え、(1)wiki.cgiのmod_perlに関する部分をコメントアウト (2)wiki.cgiのfooterテンプレート部分をコメントアウト (3)テンプレートのTMPL_IF部分を極力削除 (4)アクセスログは取得しない、としたところで、CPU使用時間が3時間55分28秒、Hits:376433;Pages:108210(Webalizer)というところです。3.6.3がリリースされたので、ローカルで試して後本番適用してみます。 - MRB (2008年12月15日 01時08分53秒)
エラーが表示される - 小鳥 (2008年12月09日 15時23分45秒)
wikiを設置したのですが、エラーが表示されます。
これはなぜなのでしょうか?
URLを載せておきますね。http://ktkr.net/~inko/wiki/wiki.cgi
アドバイスいただけると幸いです。
- エラーメッセージは、「log ディレクトリがない」という内容ですね。log ディレクトリは作成しましたか? readme を読んで確認しましょう。 - 菜梨 (2008年12月09日 17時33分15秒)
Software Error: No such file or directory: ./log at lib/CGI2.pm line 33.
- logディレクトリを作成していませんでした; - 小鳥 (2008年12月09日 17時56分31秒)
- logディレクトリはどこに作成すればいいんですか?wikiディレクトリ内に作成すればいいのですか? - 小鳥 (2008年12月09日 17時57分33秒)
- ディレクトリを作成すると表示されました! - 小鳥 (2008年12月09日 17時59分04秒)
- 管理IDとパスワードが分からないのですが、どこで設定すればいいのでしょうか? - 小鳥 (2008年12月09日 17時59分30秒)
- もう一つ。 編集をしようと思い、保存ボタンを押したらまたエラーページが表示されました。なぜなのでしょうか? - 小鳥 (2008年12月09日 18時08分03秒)
- Software Error:No such file or directory at lib/Wiki/DefaultStorage.pm line 114. と表示されます。 - 小鳥 (2008年12月09日 18時10分20秒)
- あと、wikiの名前を変更したいんですけど、どこを編集すればいいのでしょうか? - 小鳥 (2008年12月09日 18時13分33秒)
- logと同じ階層にbackupというディレクトリを作ると、編集時のエラーは解消するかもしれません。 - おとん (2008年12月10日 00時27分57秒)
- ちなみに「readme」の「インストール」の中の「サーバへの設置」欄に、パーミッションについても書かれているのでぜひごらんください。 - おとん (2008年12月10日 00時32分16秒)
- wikiの名前は、ログイン後表示可能な「環境設定」ページで変更できます。 - おとん (2008年12月10日 00時37分01秒)
- おとんさん、ありがとうございます! 管理モードへのログインIDとパスワードが分かりません;どこに記述していますか?何度もすみません; - 小鳥 (2008年12月10日 13時46分53秒)
- ログインIDとパスワードは、配布ファイル(wiki3_6_2.zip)の docs ディレクトリ内にある readme.html に書いてあります。 - 菜梨 (2008年12月10日 14時12分02秒)
- 菜梨さん、本当にありがとうございます! - 小鳥 (2008年12月10日 14時48分56秒)
- トップページの名前がFrontPageとなっているのですが、これを編集するにはどうすればいいのでしょうか・・・? - 小鳥 (2008年12月10日 14時49分37秒)
- 本当にすみません! - 小鳥 (2008年12月10日 14時49分47秒)
- 教えていただけると幸いです。 - 小鳥 (2008年12月10日 14時50分01秒)
- setup.datに設定項目がありますよ。 - 名無しさん (2008年12月10日 16時17分17秒)
- 質問する前に少しはお調べになってはいかがでしょうか。 - 名無しさん (2008年12月10日 16時18分34秒)
- こちらもご参照ください。 - 名無しさん (2008年12月10日 16時20分33秒)
- 名無しさん、本当にありがとうございます! - 小鳥 (2008年12月10日 16時22分10秒)
- すみません…反省しています… - 小鳥 (2008年12月10日 16時22分30秒)
複数のヘッダーとフッターを使いたい - あきら (2008年12月06日 09時41分27秒)
ファームではなく、本体のほうで、あるページにはAというヘッダーを別のページにはBというヘッダーを使うことはできますか? よろしくお願いいたします。
- BugTrack-plugin/161 とか - 名無しさん (2008年12月06日 11時52分49秒)
- 問題解決になるかわかりませんが、当方ではページごとにincludeプラグインをページ頭とページ末に記載して対処しております。 - 名無しさん (2008年12月09日 23時37分22秒)
- あ、上記の場合は当然、任意の位置に挿入(include)するだけですので、通常のヘッダーとフッターはそのままになります。 - 名無しさん (2008年12月09日 23時38分57秒)
- 回答ありがとうございます。インクルードを使うと、通常のヘッダーが表示されるので、まずいのです。なにかいい方法はないでしょうか? - あきら (2008年12月11日 00時32分43秒)
- すでにどなたかが勧められてますが、BugTrack-plugin/161で。 - 名無しさん (2008年12月11日 01時58分46秒)
- なるほど、こういう用途にも使えるんですね。質問者ではありませんが、参考になりました。ありがとうございます。 - 名無し (2008年12月13日 11時02分55秒)
別のファームの一部をインクルード - あきら (2008年11月26日 22時26分50秒)
wikifarm を設定しています。ABCとあるとして、そのAに上のwiki というか本家の wiki のページをインクルードすることはできないでしょうか? 方法があれば教えください。よろしくお願いいたします。
- 検索しましょう。BugTrack-plugin/214はいかがでしょうか。 - 名無しさん (2008年11月26日 23時06分20秒)
- ありがとうございました。ちょっとむずかしそうですが、やってみます。 - あきら (2008年11月27日 23時48分45秒)
編集中に時間がかかると消えてしまう - あきら (2008年11月17日 21時09分43秒)
ページの編集に時間をかけていると、保存する前に自動的に更新されてしまって、結局、それまで書いていたものが保存されずに消えてしまいます。どのようにすればこれを解決できますか? よろしくお願いいたします。
- おそらく「気をつける」が最善の手じゃないでしょうか・・・ ヒント程度に、ブラウザに寄るかもしれませんが基本的に「戻る」で編集画面に戻ると、編集内容も戻ってきます(とりあえず愛用の火狐はできます)。そのあと何度書き込みしても更新できませんので、編集内容を丸ごとコピー(場合によってはテキストファイルなどにペーストまで)して、一度編集したいページに戻って再度「編集」から編集画面に行き、ソースをごっそり入れ替えでどうでしょうか。 - とおりすがり (2008年11月19日 09時09分26秒)
- 「AreaEditor」というソフトが便利かも。 - 7743 (2008年11月19日 13時36分15秒)
- [ログインメニュー]->[環境設定]->[セッションタイムアウト]を設定できます。あとは BugTrack-plugin/69 というのもありますよ。ご自身が管理者でなければ管理者に確認してください。という意味でよかったでしょうか? - kta (2008年11月21日 01時19分35秒)
- サーバーの時間が大幅に狂っていることもあるかも。タイムアウトのエラーとして詳細がでてくると有難いような。この問題で悩みたくないものですねぇ。 - 名無しさん (2008年11月21日 19時10分37秒)
- みなさん、ありがとうございました。その後いろいろと試してみたのですが、同じような現象は現れません。もう少し様子を見てみます。 - あきら (2008年11月26日 22時24分35秒)
整形済テキストの文字色について - コツ (2008年11月11日 12時25分37秒)
行頭をスペースorタブにて整形済テキストとした場合、整形済テキストの文字色を変える方法はありますでしょうか?同一テキスト内で2色以上使えると良いのですが。ご教授のほど宜しくお願いいたします。
- 補足です。整形済みテキスト内の特定の文字列の色を変更したいという趣旨になります。 - コツ (2008年11月11日 14時42分32秒)
- テーブルにまとめるのがひとつの答えかもしれません。 - 名無しさん (2008年11月12日 09時25分42秒)
ファイル添付時のInternal Server Errorについて - T (2008年11月06日 18時07分23秒)
第三者が管理しているサーバにFSWikiを設置しました。ページの作成,編集等は普通に行えるのですが、ファイル添付をしようとすると、必ず「500 Internal Server Error」になってしまい、困っています。FSWikiを設置したサーバは通常CGIを許可しておらず、CGIを使用するためには、設置対象ディレクトリに.htaccessを置き、明示的にCGIの使用を許可する必要があります。
.htaccessには
Options ExecCGI AddType application/x-httpd-cgi .cgi
の2行のみ記載しています。
ファイル添付を実施しようとした際に表示されるエラーは以下の通りです。
The server encountered an internal error or misconfiguration and was unable to complete your request.Please contact the server administrator, admin@XXX.XXX.XX and inform them of the time the error occurred, and anything you might have done that may have caused the error.
More information about this error may be available in the server error log.
Apacheのエラーログを確認したいところですが、参照できる権限を与えてもらえていないためそれも叶わず....。
何か設定が悪いのか、どなたかご教授いただけると幸いです。よろしくお願い致します。
- docs:readme にある通りに、attach ディレクトリが作成されていていますか? また、パーミッションは合っていますか? - 名無しさん (2008年11月06日 18時22分59秒)
- はい。attachディレクトリも作成してありますし、パーミッションも707になっています。 - T (2008年11月06日 18時59分16秒)
- 確認できていることは先に書きましょう。その他、確認できていることはありませんか? - 名無しさん (2008年11月06日 20時45分34秒)
- wiki.cgi の最初の方にある、
#use CGI::Carp qw(fatalsToBrowser);
を
use CGI::Carp qw(fatalsToBrowser);
に変更すると、エラーメッセージが変わったりしませんか? - 名無し (2008年11月07日 11時52分53秒)
- 上記変更を実施してみたところ、エラーが「ページを表示できません 検索中のページには問題があるため表示できません。」というHTTP 500 - 内部サーバー エラー に変わりました。 - T (2008年11月07日 14時53分02秒)
- 参考までに FSWiki のバージョン, Perl のバージョンを教えてください。また、FSWiki初期設置用CGI は既に試されていますでしょうか? - 名無し (2008年11月07日 16時53分43秒)
- FSWikiのバージョンが3.8.2で、Perlのバージョンが5.8 です。 - T (2008年11月10日 15時59分06秒)
- attachディレクトリのパーミッションを707以外(777等)で試してみましたか? - 名無しさん (2008年11月22日 00時14分37秒)
添付ファイルの表示 - 超初者 (2008年10月31日 15時19分07秒)
添付ファイルをダウンロード数(ref)をつけないで表示出来る方法を教えて下さい。また、添付ファイル名ではなくタイトルで表示は出来ませんか?
<イメージ>ページ内で「報告書」と表示されている所をクリックすると、添付(attach)した「報告書2008.xls」にリンクする。
- こちらを見ると、ダウンロード数は表示されちゃいますが、別名指定はできるみたいですね。 - 名無しさん (2008年10月31日 17時59分59秒)
{{ref test.txt,SandBox,テストのファイル}}
- ファイルが存在しません。 - 名無しさん (2008年10月31日 18時00分57秒)
- 手っ取り早く,attach内のRef.pmを改造する? - 泰司 (2008年11月19日 11時08分34秒)
- そうですね。すでに別名指定はできてるので、ダウンロード数を表示しないようにしてしまえばいいだけですね。 - 名無しさん (2008年11月19日 13時03分54秒)
- 削除依頼 間違ってUPしてしまいました。Ref.pmは,誤りです。お手数かけますが,削除してください。 - 名無しさん (2009年04月25日 13時15分40秒)
- 削除しておきました。 - たけぞう (2009年04月25日 22時37分45秒)
大文字と小文字を含む1つの単語に対する自動リンク - るーでぃ (2008年10月20日 19時50分08秒)
大文字と小文字を含む単語(DoCoMoやInternetExplorer、FireFoxなど)に対し、自動リンクしようとしてしまいます。そのようなページを作成していないため、背景が黄色で「?」マークが付き、編集ページに飛んでしまいます。なぜこういった状況になるのかわからないのですが、FSWikiの仕様でしょうか?自動リンク機能をオフにしたくはありません。回避策があれば教えて下さい。
宜しくお願い致します。
- 管理者メニューの環境設定のWikiNameの設定項目にて「WikiNameを使用する」を選択されている場合にそういう動作をします。「WikiNameを使用しない」にすれば解決すると思われます。 - KG (2008年10月20日 20時45分43秒)
- WikiNameの仕様についての理解が誤っていました。変更したところ、無事直りました。ご回答ありがとうございます。 - るーでぃ (2008年10月20日 23時06分11秒)
パート編集で - あきら (2008年10月07日 10時14分54秒)
パート編集をオンにしてあるのですが、編集をクリックしてもその部分の編集ではなく、その前のパート編集がでてしまったりします。インクルードなどを使っているのが原因なのかわかりませんが、どのような原因が考えられ、修正方法はあるでしょうか? よろしくお願いいたします。
- いろいろな状況で再現してしまう状況をもうすこし明確にされるといいかと思います。 - 名無しさん (2008年10月07日 14時34分41秒)
- 回答、ありがとうございました。少し試してみてまとめてみます。ちょっと待ってください。 - あきら (2008年10月09日 10時39分09秒)
- includeを使用しているとずれる様です。うちでも発生しています。修正方法はわかりません。^^; - 名無しさん (2008年10月09日 11時34分42秒)
- 単に include を利用するだけであればパート位置がずれることはないはずです(fswiki3.6.2/3.6.3)。他のプラグインを併用して発生するのではないでしょうか? - KG (2008年10月09日 14時00分23秒)
- 複数行プラグインを使っていませんか?複数行プラグインのソース部分に記述した見出しはパート編集に対応していなかったと思います。複数行プラグインのパース自体、新しい機能ですので、編集パートの抽出方法を再検討しなければならないと思います。 - A_M (2008年10月09日 19時09分50秒)
- 拙作の複数行プラグインに関しては、一応解決策は用意してあって、process_wiki()ではなく、process_outline()を利用してパースすれば大丈夫なはずです。3.6.3以降の標準実装された複数行プラグインでは get_current_parser()で取得したパーサーでパースすれば良いかと思います。 - KG (2008年10月10日 00時27分36秒)
- ただ、なんでもかんでも上記処理にすれば良いという訳ではなく、それぞれの複数行プラグインの性質によって使い分けが必要になってきます。 - KG (2008年10月10日 00時31分38秒)
- いろいろとやってみているのですが、使用しているプラグインは、outline3 と secret と、rolloutの中にmemoと、mediaplayer と、bbs と category と counter です。これから、いずれか消していってどうなるか試してみます。 - あきら (2008年10月12日 07時59分25秒)
- わかりました。以下のように、
{{layout rollout,title:●●● !!その1 !!その2 }} !!!その3
として、その3のパート編集をクリックすると、位置がずれてしまいます。 - あきら (2008年10月12日 08時00分56秒)
- layout プラグインのパラメータに OUTLINE を追加してみて下さい - KG (2008年10月12日 10時56分39秒)
- KGさん、layout プラグインのパラメータに OUTLINE を追加してみて下さい ――の意味がわかりません。具体的にどうすればいいのでしょうか? よろしくお願いいたします。 - あきら (2008年10月12日 21時22分29秒)
- 失礼、小文字の outline でした。このパラメータを使用すると、上記で説明している process_outline() を使用してブロック内のWiki書式をパースします。使用例は以下のとおり。 - KG (2008年10月12日 22時53分27秒)
{{layout rollout,title:●●●,outline !!その1 !!その2 }} !!!その3
- KGさん、ありがとうございました。うまくいきました。 - あきら (2008年10月13日 22時57分10秒)
パート編集モードについて - KU (2008年10月01日 17時34分45秒)
管理画面のほうでパート編集モードにチェックを入れましたが、見出し入れてもパート編集のリンクが表示されません。
何か他に設定するところ、もしくはパート編集にするための書式などあるのでしょうか。
以上、よろしくお願い致します。
- BBS-サポート掲示板/552とかは参考になりますでしょうか? - ななし (2008年10月01日 18時15分17秒)
- ななしさん、ありがとうございました。キャッシュのせいだったようで無事解決しましたm(_ _)m - KU (2008年10月02日 14時11分45秒)
Undefined subroutine &Jcode::_Classic::euc_utf8 called at lib/Jcode/_Classic.pm line 255. - sunoko (2008年09月29日 14時04分25秒)
本日、FreeStyleWiki3.6.2 から、3.6.3 dev3 + パッチ に変更してみました。で、編集を行うと以下のエラーが表示されます。
Software Error: Undefined subroutine &Jcode::_Classic::euc_utf8 called at lib/Jcode/_Classic.pm line 255.
エラーページは表示されますが、実際には書き込みは終了しているようです。
同じような症状を経験された方はいらっしゃいますか?
ここの sand ページにて書き込みを行っても上記エラーは出ないので、もしかしたら私のところだけなのかもしれませんが、何かしらの解決のヒントでも頂戴できればと投稿させていただきました。
- 申し訳ありません。自己レスです。BBS-サポート掲示板/759と同じ現象でした。私も同様の修正にて問題が解決しました。失礼いたしました。- sunoko (2008年09月29日 14時10分51秒)
SIZEでセル幅を広げると自動改行されてしまう - ミグ (2008年09月26日 16時33分13秒)
困っているので投稿させて頂きます。
なぜか、SIZEでセル幅を広げると文字が途中で自動改行されてしまいます。原因が全くわからないので、セル幅を広げても改行されない方法を御存知の方がいらっしゃいましたら御教授願います。
例を示します↓
,{c},{SIZE:11%},{SIZE:89%} ,, ,{TOP}解説, これは、SQL文が注入される原因を作らない実装です。{{br}} バインド機構とは、実際の値がまだ割り当てられていない記号文字(プレースホルダ)を使用してあらかじめ SQL 文の雛形を用意し、後に実際の値(バインド値)を割り当ててSQL文を完成させる、データベースの機能です。バインド値はエスケープ処理されてプレースホルダにはめ込まれるため、利用者に入力された悪意あるSQL文の実行を防ぐことができます。SQL分の実行方式として、SQLのプリペアドステートメント(準備された文)を使用する場合には、結果的にバインド機構を利用することになるので、この脆弱性を防止できます。また、何らかの理由でプリペアドステートメントを使用しない場合でも、プレースホルダによるバインド機構をAPIとして提供している処理系もあるので、その場合はそれを利用します。
↑このように記述すると途中で改行されてしまいます。
- 試してみましたが、{{br}}プラグインのところでは改行されますけど、それ以外では途中で自動改行されることはないですねぇ。サイト/スタイルは default でもそうなりますか? - KG (2008年09月26日 23時09分18秒)
FSwikiの設置ができない2 - TK (2008年09月23日 00時14分29秒)
tok2無料版は、かなり実績のあるサーバーのようです。 設置できない理由は、おそらくパーミッションの設定の問題だと 思っています。
そこで、やったことないPerlでなんとかtok2用の自動パーミッション設定を作れないかと思い、作ってみたつもりでしたが動作はしませんでした。
http://www42.tok2.com/home/quizlicense/fswiki/per_tok2.cgi.txt (EUC)
参考までにtok2用checker.cgi http://www42.tok2.com/home/quizlicense/fswiki/tokcheck.cgi.txt (EUC)
突っ込みどころも多いかと思われますが、よろしくお願いします。
- 2年ほど前に当方もtok2にFSwikiを設置しました。しばらくは問題なく運用できていたのですが、ある日突然「CGI負荷が高いため」との理由で動作停止にさせられました・・・。これはtok2の無料版もtok2.proの有料板も同じです。ただ、MySQLなどを使用するXOOPSなどは問題なく運用できていますので細かいことは不明です。 - 名無しさん (2008年09月23日 10時40分56秒)
- なお、設置できたとしても、ここのどこかにも書いてありましたがクッキーの処理等がtok2はちょっと違うので、そのままだとログインできなかったはずです。パーミッションはFSwikiに推奨値(tok2の推奨とは違いますが)で問題なかったはずです。いまではどうなんでしょう? - 名無しさん (2008年09月23日 10時42分49秒)
FSwikiの設置ができない - TK (2008年09月19日 08時02分56秒)
はじめまして、掲示板のCGIレベルなら設置の経験のあるものです。fresesytle wiki 3-6-2をFSWiki初期設置CGIsetup_rev03.zip(360)を用いて、無料レンタルサーバーに設置してみましたが、うまくいきません。
◇iswebベーシック(無料:但し***.at.infoseek.jpに移行前から使用) perl version: 5.006002 (5.6.2) # Error:セットアップファイル(./setup.dat)に指定のtheme_uriの指定(./theme)に誤りがあります。 ◇aaacafe perl version: 5.008007 (5.8.7) # Error:ご利用のサーバ環境では LWP::Simple モジュール内の get メソッドが利用できません。 # セットアップファイル(./setup.dat)に指定のtheme_uriの指定(./theme)の確認ができません。 ◇@Pages perl version: 5.008008 (5.8.8) # Error:ご利用のサーバ環境では LWP::Simple モジュール内の get メソッドが利用できません。 # セットアップファイル(./setup.dat)に指定のtheme_uriの指定(./theme)の確認ができません。 ◇my-sw.net:http://www.my-sv.net/ perl version: 5.008005 (5.8.5) # Error:ご利用のサーバ環境では LWP::Simple モジュール内の get メソッドが利用できません。 # セットアップファイル(./setup.dat)に指定のtheme_uriの指定(./theme)の確認ができません。 ◇e-fpage:http://www.e-fpage.com/ perl version: 5.008008 (5.8.8) # Error:セットアップファイル(./setup.dat)に指定のtheme_uriの指定(./theme)に誤りがあります。
どの上記サイトでも、下記の結果が出ます。
・tok2用のcheck.cgiの結果
[wiki.cgi:22:die] 「Wiki.pm」が見つかりません in @INC (@INC contains: ./lib /usr/local/perl-5.8.8/lib/5.8.8/i386-freebsd /usr/local/perl-5.8.8/lib/5.8.8 /usr/local/perl-5.8.8/lib/site_perl/5.8.8/i386-freebsd /usr/local/perl-5.8.8/lib/site_perl/5.8.8 /usr/local/perl-5.8.8/lib/site_perl .) 『wiki.cgi』の行:22. BEGIN failed--compilation aborted 『wiki.cgi』の行:22.
- 設置場所は、/fswiki/というフォルダを設けて、そこに入れています。 - TK (2008年09月19日 08時03分46秒)
- 改行が反映されていない(;; - TK (2008年09月19日 08時06分13秒)
- 初期設置用CGI - ちょっと通りますよ
- 無料版の制約があったりの対処がいるかもしれなかったり。まず文面のsetup.datの問題からひとつづつでしょうか。# 設置したサーバ は 外から見たルートになってますか? ./theme の部分は ../fswiki/theme がよさそうな気がします。- 名無しさん (2008年09月19日 13時06分46秒)
- エラーメッセージが読みにくかったので、勝手ながら{{pre }}でくくってみました。theme_uri は URI ですから、http://hogehoge.com/fswiki/theme とかにしてみてもよいかもしれませんね。 - 菜梨 (2008年09月19日 19時22分47秒)
- あと、話はそれますが、今から設置するなら、せめて 3.6.3dev3 にしといた方がよいかも。3.6.2 にあるたくさんの不具合が改善されていますし、本サイト fswiki.org を見てもお分かりの通り、開発版とはいえ十分安定しています。 - 菜梨 (2008年09月19日 19時26分24秒)
- /theme.urlはおっしゃるとおりにしたら、解決したようです。 - TK (2008年09月23日 00時06分05秒)
- 「tok2用のcheck.cgiの結果」を単純に読むと、「lib/Wiki.pmというファイルが存在しない」と読めるのですが、実際にはどうなっていますか? - 菜梨 (2008年09月23日 01時27分12秒)
- デフォルトのままです。だから/lib直下に存在します。 それと、「/home/menber/あなたの〜/」の意味はよくわかっていません。CGIが直接参照するアドレスはurlとは別だということでしょうか? - TK (2008年09月23日 18時14分51秒)
- Freestyle wiki liteというものを発見し、試したところ、こちらの設置&動作は確認できました。 - TK (2008年09月23日 21時30分40秒)
- 解決の糸口: そういえばFTPの設定で、ファイル名などをすべて小文字にするようにしていました。Windowsはアプリによって勝手に大文字小文字を変えられてしまうため。 - TK (2008年09月24日 07時51分07秒)
すべてのページにアウトラインなどのプラグインを - あきら (2008年09月11日 08時43分07秒)
大体ほとんどのページに以下のようなソースを入れています。
{{outline3}} {{b_secret {{layout rollout,title:メモ {{memo}} }} }}
新しく作るページもこれをコピペしているのですが、なんとかして、コピペしないでも、テンプレートのようにしておけないでしょうか?
- {{outline}}についてはHeaderというページを作ってそこに書いておくとよいでしょう。 - 菜梨 (2008年09月11日 08時55分25秒)
- なるほど、そういう方法があるのですね。メモについてはどうでしょう? ヘッダーに書いたら、おそらくすべてのページで共通のメモということになりますよね? - あきら (2008年09月11日 08時58分51秒)
- テンプレートについては、BBS-サポート掲示板/675参照。 - 菜梨 (2008年09月11日 09時01分39秒)
- 再度、ありがとうございます。テンプレートというのはページの色とかだと思っていました。さっそく試してみます。 - あきら (2008年09月11日 09時14分27秒)
- テンプレートのやりかたがわかりません。sitestyle Wikiの表示を任意のテンプレート/スタイルを使用して表示します。を使うということなのでしょうか? - あきら (2008年09月11日 10時10分10秒)
- テンプレートは、追加プラグインを必要としない FSWiki 本体の機能で、使い方は下記の通りです。(sitestyle は全く別の機能だと思います。) - 菜梨 (2008年09月11日 10時42分04秒)
- まず準備として「Template/大体ほとんどのページ」という名前のページを新規作成し、大体ほとんどのページに書き込む内容を記述しておく。
- 新規ページを作成する際、ページ名を入力して編集画面に移ると、「Template/*」というページが存在する場合にはテンプレートメニューからそれを選べるようになるので、1.で作成した「Template/大体ほとんどのページ」を選び、「読込み」ボタンを押す。
- すると、「Template/大体ほとんどのページ」の内容が新規ページ編集のテキストボックスにコピーされる。
- なるほどそういうことだったのですね。てっきりFTPでソースを書いたファイルをアップロードするのだと思い込んでいました。おかげさまで、これからページを作るのがかなり楽になりますし、統一性もとれてきて、ありがたいです。 - あきら (2008年09月11日 11時11分32秒)
Login 不具合事例:mod_rewrite 等による URL 書き換え併用時の cookie path 異常 - ぐうます (2008年09月10日 18時27分29秒)
概要
FSWiki において、mod_rewrite に代表される URL 書き換えを併用して運用する場合、生成されるクッキーの cookie path が異常となるため、Login 不具合(Session 継続不具合)が発生することがあるようです。
不具合事例
筆者は自サイトにて、mod_rewrite による URL 書き換えを併用して FSWiki を 2 年ほど運用してきましたが、週に 1 回程度の発生率で「Login に成功したにもかかわらず、ユーザ以上の権限でのみ閲覧可能なページについて『参照権限がありません』というエラーにより閲覧ができない」という問題が起きていました。たまにしか起きない問題であるため、原因がなかなか分からなかったのですが、調査の結果、どうやら mod_rewrite 併用時にはクッキーに付加する cookie path の値に問題があることが分かりました。そして、cookie path 生成部に修正を加えることにより、不具合が起きなくなることを確認しました(確認期間:1 ヶ月)。
Session の継続とクッキー
FSWiki の Session 管理は、概ね次のようにして行われます。
FSWiki の Session 管理概要
- Login が行われると、それにより開始された Session の情報(ログイン中のユーザ名など)は、FSWiki が動作する Web サーバ上に Session 情報ファイル (./log/cgisess_xxxxxx) として保存されます。
- FSWiki は、クライアントの Web ブラウザに対して、"CGISESSID" という名前のクッキーを送信し、Web ブラウザはこれを保存します。
- Web ブラウザは、あるページを閲覧しようとするとき、そのページの URL と前方一致するような cookie path をもつクッキーの値を Web サーバに送信します。このため、ログイン中のクライアントが FSWiki のページを閲覧しようとするとき、"CGISESSID" クッキーの値が Web サーバに送られます。
- FSWiki は、受け取った "CGISESSID" クッキーの値を基にして、継続中の Session に対応する Session 情報ファイル (./log/cgisess_xxxxxx; xxxxxx は "CGISESSID" クッキーの値) を特定することができ、ファイルの内容からどのような権限による閲覧なのかを知ることが出来ます。
- FSWiki は、得られた閲覧権限に基づいてリクエストされたページの html を生成してクライアントに返送するとともに、"CGISESSID" クッキーをクライアントに対して再度送信することにより、Session の有効期限を更新します。
以上のことから、"CGISESSID" クッキーに付加される cookie path とは、「その Session が有効となるページ URL 範囲」を意味することになります。FSWiki の Login は farm 単位で行われますので、ある 1 つの Session は、少なくともそれを開始した farm 内の全ページで有効となるべきです。これを実現するための最もシンプルな方法は、「Session を開始した farm 内の全てのページ URL に前方一致するような unique な値となるように cookie path の値を生成すること」です。
(注:本ページ内では、便宜上、root wiki の下にぶら下がる狭義の farm に加え、root wiki 自身も含めて "farm" と記述することにします。)
サブルーチン Util::cookie_path() の動作:mod_rewrite を使用しない、通常の FSWiki の場合
FSWiki においてクッキーを作成する際、cookie path は サブルーチン Util::cookie_path() を用いて生成されます。そのソースを下記に示します。
#=============================================================================== # <p> # Cookieのpathに指定する文字列を取得します。 # </p> # <pre> # $path = Util::cookie_path($wiki); # </pre> #=============================================================================== sub cookie_path { my $wiki = shift; my $script_name = quotemeta($wiki->config('script_name')); my $path = $ENV{'REQUEST_URI'}; $path =~ s/\?.*//; $path =~ s/$script_name$//; return $path; }
このサブルーチンの動作の概要は、次の通りです。
- 環境変数 "REQUEST_URI" の値(=「リクエストされた URL」からサーバ名を除いた文字列)を取得し、
- その値からクエリ文字列("http://example.jp/wiki.cgi?page=Page1" の "?" 以降の部分)を除去し、
- その値の末尾に $script_name に等しい部分があればそれを除去した値を cookie path として返却する。
具体例をいくつか示しますと、次のようになります。
Web ブラウザから要求された URL が "http://example.jp/wiki.cgi?page=Page1" の場合
項目 | 値 |
---|---|
REQUEST_URI | /wiki.cgi?page=Page1 |
script_name | wiki.cgi |
cookie path | / |
Web ブラウザから要求された URL が "http://example.jp/wiki.cgi/farm1?page=Page1" の場合
項目 | 値 |
---|---|
REQUEST_URI | /wiki.cgi/farm1?page=Page1 |
script_name | farm1 |
cookie path | /wiki.cgi/ |
Web ブラウザから要求された URL が "http://example.jp/wiki.cgi/farm1/farm2?page=Page1" の場合
項目 | 値 |
---|---|
REQUEST_URI | /wiki.cgi/farm1/farm2?page=Page1 |
script_name | farm2 |
cookie path | /wiki.cgi/farm1/ |
以上の例から明らかなように、mod_rewrite を使用しない通常の FSWiki として運用する場合の URL であるならば、生成される cookie path は、親 farm 内のページの URL には前方一致せず、その farm 内の全ページの URL には前方一致する、その farm 内で unique な値 になるため、ログインした同一 farm 内で『参照権限がない』エラーが発生することはありません。
サブルーチン Util::cookie_path() の動作:mod_rewrite を使用する場合
次に、mod_rewrite を使用する場合について考えてみます。例えば、BugTrack-plugin/350 での mod_rewrite 設定
RewriteRule ^/$ /wiki.cgi [L,NE,P,QSA] RewriteRule ^/(.+)\.html$ /wiki.cgi?page=$1 [L,NE,P,QSA]
を用いたとすると、サブルーチン Util::cookie_path() の動作例は次のようになります。
Web ブラウザから要求された URL が "http://example.jp/Page1.html" の場合
項目 | 値 |
---|---|
REQUEST_URI | /Page1.html |
script_name | wiki.cgi |
cookie path | /Page1.html |
この例から分かるように、生成される cookie path がそのページ固有の値となるので farm 内で unique な値になりません。このため、cookie path が異なる複数の "CGISESSID" クッキーが Web ブラウザに対して生成されるため、Session の継続に関する Web ブラウザと FSWiki との間の情報のやりとりがおかしくなってしまうようです。
対策の検討
mod_rewrite を使用しない場合と同様に、mod_rewrite を使用した場合でも、「1 つの farm 内では必ず unique な値となるように cookie path の値を生成すること」ができれば、本件は解決できそうです。上記した mod_rewrite 使用時の cookie path の例で何が問題かを考えると、「ページ名の部分が cookie path から除去できていないために、cookie path が各ページ毎に異なること」です。よって、cookie path からページ名の部分を除去するコードを追加することとし、次のような対策案としました。
対策案:(行頭 '+' が追加行, 行頭 '-' が削除行)
sub cookie_path { my $wiki = shift; my $script_name = quotemeta($wiki->config('script_name')); my $path = $ENV{'REQUEST_URI'}; $path =~ s/\?.*//; - $path =~ s/$script_name$//; + $path =~ s/[^\/]+$//; # 末尾に '/' 以外の文字があれば除去する。 return $path; }
なお、オリジナルのコードにある、末尾の $script_name を除去するコード
$path =~ s/$script_name$//;
は、対策案で追加した
$path =~ s/[^\/]+$//; # 末尾に '/' 以外の文字があれば除去する。
で代用することができるので削除しました。以上より、オリジナルの FSWiki の動作に影響を与えることなく対策できることになります。
この対策を施した状態での mod_rewrite 使用時のサブルーチン Util::cookie_path() の動作例は次のようになります。
Web ブラウザから要求された URL が "http://example.jp/Page1.html" の場合 (対策後)
項目 | 値 |
---|---|
REQUEST_URI | /Page1.html |
script_name | wiki.cgi |
cookie path | / |
よってこの対策により、mod_rewrite を使用しないときと同様に cookie path が正しく生成されるようになります。
制限事項
mod_rewrite の設定が複雑である次の例のような場合、上記対策案では問題が解決できません。
対策できない例:次のような 2 つの URL が、mod_rewrite により同一 farm 内のページ URL に書き換えられるような運用の場合、cookie path が farm 内で unique にならないため問題が解決できません。
- http://example.jp/Page1.html → cookie path = /
- http://example.jp/dir1/Page2.html → cookie path = /dir1/
このような運用では、各 farm 毎に手動で設定した値を cookie path として使用するなどの対策が必要になります。そのためには、管理者メニューから各 farm 毎に cookie path を手動で設定するインターフェースを準備する必要があるため、本ページでは検討外と致します。
patch
対策案の patch
--- ../wiki3.6.3dev3orig/lib/Util.pm Mon Dec 31 12:05:37 2007 +++ lib/Util.pm Wed Sep 10 17:27:53 2008 @@ -64,11 +64,9 @@ # </pre> #=============================================================================== sub cookie_path { - my $wiki = shift; - my $script_name = quotemeta($wiki->config('script_name')); my $path = $ENV{'REQUEST_URI'}; $path =~ s/\?.*//; - $path =~ s/$script_name$//; + $path =~ s/[^\/]+$//; # 末尾に '/' 以外の文字があれば除去する。 return $path; }
を Util.pm.20080910.patch(592) として添付致します。本 patch は、FSWiki 3.6.3dev3 の lib/Util.pm に対して作成したものですが、変更箇所である lib/Util.pm の cookie_path() が FSWiki 3.5.7 以降変更がないので、内容的には FSWiki 3.5.7 以降に対しては適用可能と思われます。なお、本 patch では、対策によって使用しなくなった $script_name, 及び $wiki の処理も削除しています。これに伴い、本来であれば cookie_path() の呼び出し側でも引数 $wiki を与えなくてよくなるのですが、変更しなくても動作に支障がないこと、及び、上記制限事項で述べた cookie path の手動設定機能をもし実装することになったら再度復活することになると思いますので、呼び出し側についての変更は本 patch では実施していません。
まとめ
mod_rewrite 使用時に cookie path が異常になること、そしてその対策案を示しました。この対策案により、自サイトでは「Login しているのに『参照権限がない』エラーが発生する」不具合が解消しました。
お願い
もし、本件と同様に mod_rewrite 等を併用した運用にて Session 継続不具合が発生している方がいらっしゃいましたら、本対策案を試していただき、成否をご報告いただきたく、よろしくお願い致します。(理由:上記の検討内容が、筆者自サイトのあるレンタルサーバ固有の設定等に依存した内容になっておらず、広く一般に適用できる対策であることを確認するため。もしこれが一般的な対策であることが確認できたならば、BugTrack-plugin/350 へのマージ等を視野に入れることができます。)
Javascriptについて - ミグ (2008年09月05日 11時02分17秒)
単純な質問で申し訳ないんですが、FsWikiでJavascriptを使いたいのです。そのようなプラグインあるいは文法があれば御教授願いたいです。
- include_html ここにJavascriptを書くだけでおk include_htmlで検索- 名無しさん (2008年09月05日 13時14分49秒)
- ありがとうございました。できました。 - ミグ (2008年09月16日 17時14分49秒)
表の中で、カンマ","を使いたいのですが。 - piyopiyo (2008年08月28日 13時23分11秒)
バージョン3.6.2を使用しています。表を作ろうとしています。これには、","区切りで要素を並べて作ることができました。その中で、要素の中で","を使いたいという要望があります(理由は後述)。そうすると、要素の中の","が、表の区切りの","とみなされて、表が崩れます。
理由:かなり大きな表です。縦の列の要素に、?番号、?日本語のタイトル、?PDFのファイル名(英数のみ)へのリンク,?日付、等があります。今はこれら全てを記述していますが、?と?は情報としては重複しています。一番スマートな方法は、日本語のタイトルをクリックすると、PDFファイルを開く等の操作ができればいいです。普通に表でないところなら、『{{ref 080828.pdf,2008年8月,8月28日資料}}』とすればよいのですが、表の要素としてこれを使うと、表の要素の区切りを表す","と混同してしまい、不可能です。
これを回避する手段はありますでしょうか?
- 『ファイルが存在しません』の部分は、refを使った別名の書き方を書いています。まさか、こんなことになろうとは…。 - piyopiyo (2008年08月28日 13時25分24秒)
- BBS-雑談掲示板/143 BBS-サポート掲示板/824 - 名無しさん (2008年08月28日 13時54分42秒)
- お世話になりっぱなしですので、FAQのようなものでお返しもいいかもしれない。http://www.kokodayo.net/wiki/index.xcg/fswikiFAQ - 自称サポーター (2008年08月28日 15時06分00秒)
- コメントありがとうございます。ダブルクォーテーションで囲む方法で、表の中でカンマを使うことはできました。が、文字の打ち消し線(==記号)とかが、そのまま表示されてしまいます。両立は難しいということでしょうか? - piyopiyo (2008年08月28日 15時42分35秒)
- 更新しました。 - 自称サポーター (2008年08月28日 17時16分27秒)
- SandBoxで試された方がいるようです。うまくいってるように見えますが。 - 名無しさん (2008年08月28日 18時16分14秒)
,1-1,1-2,1-3 ,"==要素1,要素2==","==要素3,要素4==","{{ref wikibook_mini.jpg,FrontPage,試しにリンクしました}}"
1-1 | 1-2 | 1-3 |
---|---|---|
試しにリンクしました(2011351) |
- この例の、"試しにリンクしました"の部分を打ち消し線にしたいのですが、うまく行っている方いますでしょうか? - piyopiyo (2008年08月29日 09時22分48秒)
- 以下、SandBoxからコピーします。 - 名無しさん (2008年08月29日 12時03分23秒)
1-1 | 1-2 | 1-3 | |
---|---|---|---|
wikibook_mini.jpg(2011351) =試しにリンクしました= |
とかならウチのとこではできてるんだけど意味合いとしては
1-1 | 1-2 | 1-3 | 状態 |
---|---|---|---|
試しにリンクしました(2011351) | × |
- もう「表の中で、カンマ","を使いたい」という話とは無関係になってますね。 - 名無しさん (2008年08月29日 12時05分05秒)
- 表の中にあるかどうかに関係なく、ref プラグインのエイリアス(「試しにリンクしました」という文字列)をwiki書式で修飾すること(==で囲んで打ち消すなど)はできません。 - 名無しさん (2008年08月29日 12時06分27秒)
- BugTrack-plugin/162 を使用して該当行の背景色を黒に近い色に変更するか、文字の色を薄くするとか・・・ - KG (2008年08月29日 12時42分36秒)
- BugTrack-wiki/313を適用すれば、下記でご所望のことができるっぽいです。ただし、3.6.3dev2 以上が必要。 - 名無しさん (2008年08月30日 03時53分41秒)
,1-1,1-2,1-3 ,"==要素1,要素2==","==要素3,要素4==","=={{ref wikibook_mini.jpg,FrontPage,試しにリンクしました}}=="
- みなさん、コメントありがとうございます。とりあえずですが、打ち消し線については無くてもとりあえず可との判断です。rev 3.6.3dev2以上での技も試したい所ですが、現状はまだバージョンアップできる状態ではないので、しばらくお待ち下さい。 - piyopiyo (2008年09月01日 11時27分20秒)
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 ]
最終更新時間:2011年08月03日 23時16分46秒