トップ 差分 一覧 Farm ソース 検索 ヘルプ RSS ログイン

サポート掲示板

ページの作成や編集にはユーザ登録が必要です。

FSWikiサポート掲示板

  • 設置に関するトラブルや要望などがあれば書き込んでください。
  • 記事のタイトル一覧をサポート掲示板一覧で見る事ができます。それ以前の過去ログは[サポート掲示板]から参照できます。
  • 投稿する前に
    • Tips、FAQ、サポート掲示板の過去ログに同様の内容がないかを確認してください。
    • バグ報告に関してはバグトラックのほうにお願いします。
    • 機能拡張のためのパッチやプラグインの投稿はプラグイン投稿にお願いします。
      • パッチは本体にあてるものの場合はGPL、プラグインにあてるものの場合はプラグインのライセンスにしたがうものとします。
    • 開発に関するご意見、質問等はメーリングリストにお願いします。
  • FSWikiとは無関係と思われる投稿、コメントに関しては削除させていただきますのでご了承ください。
  • 特定の設置環境でのみ発生するトラブルがいくつかあります。トラブル報告の際には、「どんな設定の」「どのサーバ/レンタルスペースに」「どうやって」設置したかを詳しく書くと、返事がもらいやすいですよ
  • どういうことを書けば回答を得やすいか判らない方は、こちらのページをご一読ください。
お名前
件名
本文

サーバ負荷対策 - 名無しさん (2004年04月15日 22時53分51秒)

Win2k AnHTTPd1.42k ActivePerl5.008003 FSWiki3.5.3 で運用しております。最近、処理に時間がかかるようになってきたので原因を探ろうと色々模索しているのですが、テキストオンリーのページの場合、1ページあたりの表示量(処理テキスト量)を別ページとして作成すべきなのか、ページ分散による「ページの自動リンク」の処理を避けるべきなのか、正確な時間(Perlの処理時間)が判らないので悩んでおります。

ここがボトルネックになりやすい構成なのでこっちがいい 等、ありますでしょうか?

取り扱いデータ

  • dataフォルダ
    • 総ファイル数699個 使用容量605KB
  • 最大負荷の掛かるページ
    • ソース 54,731Byte
      • ハイパーテキスト化時 287,801Byte
    • メディア 220,878Byte
  • ソース&メディア内訳(最大負荷の掛かるページ)
    • {{ 個数 約1150 7割以上が include
      • 1include当たり 1回のアンカー作成
      • 17kbほどのpngファイル呼び出し回数 約170
    • Hn 個数 約220 {{outline}}使用

コメント

  • この最大負荷のかかるページを表示しきるまでにAthlon(800MHz)で約1分半かかります - 名無しさん (2004年04月15日 23時00分11秒)
  • うーん、ページ数が699というのは自動リンクをしなければそれほどでもないと思いますが、includeとref_imageの数がかなり強烈ですね。特にref系は1つにつきFSWikiのプロセスが1つ立ち上がってしまうので、1ページで大量に使うのは避けたほうがよいです。 - たけぞう (2004年04月16日 00時50分53秒)
  • なるほど... ref_imageは閲覧側が非表示で避けれるとして、自動リンクをONにしてる限りこれ以上の負荷低減は望めなそうですね。 他のWikiで見かけた機能ですが、Perlの動作時間のわかるものがあると助かったりしますが、余計な機能入れるとさらに重くなるんだろうな...トホホ - 名無しさん (2004年04月17日 11時07分25秒)
  • プロセスのCPU消費時間を表示するプラグインが存在しますが、Win2Kだと実時間は取れないですね……。 - BJM(と) (2004年04月18日 20時42分31秒)
お名前: コメント:

はてなアンテナでUnknown Content-type - saitou (2004年04月06日 03時48分05秒)

こんにちは。運用中のFSWiki_Liteで気になることがありましたので書き込みさせてもらいました。

はてなアンテナからwiki.cgiへアクセスがあると、Apacheのエラーログに

cgi-lib.pl: Unknown Content-type:

が記録されます。どうやらはてなのアクセスでContent-typeが設定されていない(?)ようなのですが、正直知識が乏しいのでこれ以上分かりません。これはなにか修正した方が良いのでしょうか?どなたかアドバイスをお願いします。

  • その後、ログを調べたところ、どうやらHEADメソッドが送られてきた時にこのエラーが出るようです。HEADは本文を返さない以外はGETと同じ処理のはずなのですが、GETではこのエラーは出ていませんでした。 - saitou (2004年04月08日 15時31分02秒)
  • cgi-lib.plでエラーを返すようになってるみたいです。未確認ですがlib/cgi-lib.plを以下のように修正することで回避できるのではないかと思います。 - たけぞう (2004年04月08日 18時41分19秒)
diff -r1.1 cgi-lib.pl
81c81
<   if (!defined $meth || $meth eq '' || $meth eq 'GET' || 
---
>   if (!defined $meth || $meth eq '' || $meth eq 'GET' || $meth eq 'HEAD' ||
  • 上記の修正でエラーが出なくなりました。ありがとうございます。 - saitou (2004年04月10日 11時57分15秒)
お名前: コメント:

Windows2000Server IISのサーバにP900i(携帯)でアクセスできません。 - けじゃ (2004年04月05日 15時59分06秒)

こんにちは。FOMA(P900i)からFSWiki3.5.3dev5への接続を試みてみましたが、「接続先のサーバは現在ご利用できません(502)Your request cannot be processed.(502)」と表示されます。サーバ環境はWindows2000Server、IIS5となります。

PCからは動作確認ができているURL(プログラム)です。なお、念のためlinux等のサーバにおいてP900iでアクセスしてみると正常に動作するようです。やはりWindows2000であるのが原因のようですが私のレベルではこれ以上の追跡はギブアップでございます(^_^;)

どうぞよろしくお願い申し上げます。

  • この件、いかがでしょうか?情報が不足していますでしょうか?どうぞよろしくお願いします。 - けじゃ (2004年04月20日 21時27分26秒)
  • とりあえず、FSWiki以外の簡単なCGIで試してみると、Wikiに問題があるのかIISの(設定の)問題なのか見当が付くかもしれません。お試しになったでしょうか - 名無しさん (2004年04月21日 01時27分34秒)
  • 名無しさん、ご回答ありがとうございます。ご指摘の件ですが他CGIでは問題なく携帯からみれています。CJ-Clubさんの掲示板などは問題なく携帯でも動作するのですが・・・。 - けじゃ (2004年04月22日 11時22分27秒)
  • IISを使わないのが無難かと - 名無しさん (2009年03月23日 09時30分04秒)
お名前: コメント:

ユーザー管理にて変更を行うとPermission deniedになる - mega_lip (2004年04月04日 11時32分41秒)

初めまして、Wiki初挑戦です。WindowsServer2003 & IISにて、このサイトのWindowsでの設置方法を参考にしながらFSWikiを導入したところですが、他の設定変更はできるものの、なぜかユーザー管理のみ変更するとPermission denied になってしまいます。別段 /wiki/config/user.dat に他と異なるようなアクセス権限設定を施してもおりません。もちろんadmin/adminでログインしています。何かご助言いただけないものでしょうか?ちなみにエラーメッセージは・・・Software error:Permission denied at lib/Util.pm line 243.です。

  • 僕も困っています。 - mo (2004年10月28日 23時26分22秒)
お名前: コメント:

添付ファイルのアップロード時 - baz (2004年03月29日 15時47分57秒)

はじめまして。FreeStyleWiki3.5.2を導入してまだ間もありませんが、2000とIISで順調に動きました。Farmやプラグインも問題なく動いています。ただ、添付ファイルのアップロード時にBBS-サポート掲示板/50と同じ現象が出ます。掲示板/50を参考に「wiki.cgiのBEGINの中に $TempFile::TMPDIRECTORY='./tmp';」やtmpディレクトリを追加したのですが、解決されません。ディレクトリの試験にプラグインamazon2で試すとattachディレクトリに問題なく保管されます。wiki.cgiを設置しているディレクトリ以下も十分に権限を持たせています。実は、wiki.cgiのBEGINへの設定に自信がありません。これでよいのでしょうか?アドバイスをお願いします。

BEGIN {
	if(exists $ENV{MOD_PERL}){
		# カレントディレクトリの変更
		use Cwd;
		chdir ("D:/websoft/wiki");#"C:/Apache/htdocs/fswiki"
		$TempFile::TMPDIRECTORY='./tmp';
		# exit関数の上書き
		use subs 'exit';
		require Apache;
		*exit = \&Apache::exit;
		$| = 1;
	}
}
  • うちだと、IIS5.0(Win2000SP4)ですが、問題なく添付ファイルのアップロードが出来ていますよ。もちろん、CGIの修正はしてません。パーミッションエラーって事は、やはりセキュリティの書き込み権限が無いと思うので一度、FSWikiをインストールしたフォルダ以降のセキュリティを設定し直して見て下さい。 - リュナン (2004年03月29日 18時03分47秒)

FSWikiをインストールしているフォルダをC:\WIKI、現在WindowsにログインしているユーザーをAdministrator、IISのディレクトリセキュリティのアクセスを「匿名アクセス」とした場合。

  1. C:\WIKIのセキュリティの詳細設定で所有者を「サブコンテナとオブジェクト〜」をチェックして、Administratorに置き換える。
  2. アクセス許可にAdministratorとインターネットゲストアカウントを追加し、フルアクセスに設定して「子オブジェクトすべてのアクセス許可エントリを、ここに表示されているエントリで子オブジェクトに適用するもので置換する」にチェックして、OK。

IISを認証アクセスにしている場合は、アクセスするユーザーをインターネットゲストアカウントの替わりに追加して下さい。これで、すべてのフォルダのセキュリティにアクセス権が設定されるので、いけると思いますが。

  • ありがとうございます。うちもIIS5.0(Win2000SP4)です。初期の状況を確認するためにオリジナルのままインストールしました。設置ディレクトリ以下継承共、インターネットゲストアカウントで全開のフルコントロールにしましたが、状況はアップロード時のみ、同じエラーが出ます。他に考えられる対策などありましたらお願いいたします。 - baz (2004年03月30日 02時38分18秒)
  • うーん、IISのFSWikiをインストールした仮想ディレクトリか、ルートにインストールしたならWebサイトのプロパティでディレクトリセキュリティの「匿名アクセスおよび認証コントロール」の編集では「匿名アクセス」にチェックが入っていて、ユーザー名にはインターネットゲストアカウントのユーザーが入ってますよね?あとは、ちょっと思いつかないです。通常、デフォルトから触る所は、CGIの設定以外ではその位なので。デフォルトの環境からならWindowsでの設置方法の通りで、動くと思うのですが。 - リュナン (2004年03月30日 08時46分28秒)
  • うーん・・未だ解決せず、です。でもすっかり、FSWikiにはまってしまっていますので、試行錯誤してみます。お絵かきプラグイン等や他の方法で代行する手もあるかもしれない・・。 - baz (2004年03月31日 01時10分50秒)
  • amazon2とattacheでは添付ファイルにするデータの取得方法が違うので、この例では参考にはならないと思いますよ。CGI.pm とか AttachHandler.pm とかがWindowsのパス名を上手く扱えていないとか、そうゆう問題な気がしますけど。日本語やスペースの入ったフォルダ(デスクトップとか)からのファイルアップロードがUNIXサーバでは上手くいかないことが多いんで、c:\ とかにファイルを置いて試してみたらどうでしょう? - gyo (2004年03月31日 12時52分39秒)
  • 日本語ファイル名もできれば避けた方が無難でしょうが、そんな問題じゃないんでしょうねぇ。環境がないのでよく解らなくてすいません。 - gyo (2004年03月31日 13時10分51秒)
  • うちの環境だと、サーバ:Win2000SP4 クライアント1:WinXPSP1(IE6.0) クライアント2:Win98SE(IE6.0) クライアント3:Win2000SP4(IE5.0)で、どの環境でも日本語のフォルダ、日本語のファイル名でも添付出来ました。あとは、AnHttpdでやってみるとか、ちなみにIISはFSWiki以外に何か使っていたりしますか? - リュナン (2004年04月02日 09時45分44秒)
  • 田舎の小さなボランティア団体なのです。WEBは、自己所有サーバーでフリーのCGIが実働50本ぐらい稼動しています。HPのページ数は6000ぐらいでしょうか。Attachのuploadだけに支障があるだけなので、多分gyoさんのおっしゃる通り、パスの受け渡しが出来ないのだと思います。パスが取得出来ないなら、現サーバーのDNSなどから調べる必要があるのでしょうね。 - baz (2004年04月04日 15時11分33秒)
  • サーバ名でアクセスできているならDNSは無関係でしょう。リュナンさんや他の方は問題ないようなので、baz さんの環境独自の問題と思われます。Perl に付属している CGI.pm とかがうまくないんじゃないかと思うんですが、その辺は調べてみましたか? - gyo (2004年04月04日 22時45分59秒)
  • うちは XP ですけど、Windowsでの設置方法の通りに入れたら、デスクトップにある日本語ファイルも問題なく添付できちゃいました。再現しないので、情報がないと解決へのお手伝いができそうもないです - gyo (2004年04月05日 00時23分31秒)
  • AnHttpd win2000sever環境ですが、私も全く同じ状況です。添付時にCGI open of tmpfile: No such file or directoryのエラーが出てしまいます - Kaz (2005年10月14日 22時28分48秒)
お名前: コメント:

Category_Listプラグインの改造 - 因果 (2004年03月29日 15時01分04秒)

こんにちわ。FSWikiを利用させていただいています。

現在は、社内の情報共有の仕組みとしての利用を検討しております。その上で、Category_Listプラグインを利用しているのですが、このプラグインでは表示件数を設定することができません。それは現仕様では無理と思いますのでバージョンアップでの対応を期待しているのですが、現状のバージョンでもプラグインのファイルを書き換えることで対応が可能と考えていますが、あまりプログラムに親しんでないものですからどのあたりをいじれば良いか分かりませんので、ご助言をいただけませんでしょうか?よろしくお願い致します。

<やりたいこと>・カテゴリーリストの表示件数を制限する。・ページ名の降順で表示されているものを昇順に変更したい。

  • plugin/category/CategoryHandler.pmあたりですかね。 - たけぞう (2004年03月29日 20時50分39秒)
  • 36行目の (sort( ってとこを(reverse sort(と書き換えると、カテゴリ名の見出しがいつもと逆順で表示されますね。52行目の (sort( も同様に、38行目の = sort(= reverse sort( というように、sort の前に reverse をつけるとページリストも逆順になりますかね。表示件数の制御はplugin/core/ListPage.pmが参考になるんじゃないでしょうか。面倒臭げだけど - gyo (2004年03月30日 00時04分03秒)
  • 回答ありがとうございました。とりあえずsortの順番だけは変えて使用しています。ところで表示件数の改造ですが、もしCategory_Listプラグインを改造して表示件数を変えた場合、全体のCategory_List表示件数も変わってしまいますよ。ページ事に表示件数を変えたいと思うのですが・・・やはり贅沢なようですねm(__)m - 因果 (2004年04月23日 14時27分02秒)
  • 表示件数のカスタマイズで何かアイデアありませんでしょうか?プラグインの切り貼りでは限界です・・・。 - 因果 (2004年04月23日 15時21分51秒)
  • 39行目(@pagesのforeach)の直前にmy $count = 5;、43行目(if文の中)にlast unless --$count;とか? - ふる (2004年05月01日 12時05分32秒)
お名前: コメント:

特定のページ(SandBox等)だけ自由に編集出来るようにするには? - ts (2004年03月29日 10時57分44秒)

何度も初歩的な質問で申し訳ありません。現在開設に向けていろいろ作っているところなのでよろしくお願いします。一応基本的なページの編集に関してはログイン制にしたいんですが、SandBox等は誰でも練習出来るページにしたいんです。凍結機能を使うと管理者しか編集出来なくなってしまいますし…。特定のページだけ制限を解除する設定方法なりプラグインなどを教えて頂けないでしょうか? 一応探したんですが見つかりませんでした。

  • readmeには「管理ユーザ、一般ユーザは共に凍結されたページの編集を行うことができたり」とありますが? - JR (2004年03月29日 17時25分37秒)
  • ほんとですねぇ。おかしいなぁ。一般ユーザでログインすると凍結したページに編集アンカが出ないんですけど、僕だけですか? どこか間違ってるかなぁ。 - ts (2004年03月29日 18時03分00秒)
  • 編集不可モードはログインしていれば編集可能、ページが凍結されている場合は管理者ユーザでログインしている場合に編集可能となります。ドキュメントが古いままとなっています。 - たけぞう (2004年03月29日 20時43分18秒)
  • そうですか。とゆう事はログイン制にしてSandBoxは自由に公開ってゆうのは無理なんですねぇ。まぁSandBoxだけ公開しても意味が無いと言えば無いかぁ…。 - ts (2004年03月30日 08時58分53秒)
  • 参照・編集権限(特に編集権限)については今までの経緯もあり、いまひとつ整理しきれていない面があります。次回のバージョンでは少し整理したいと思います。 - たけぞう (2004年03月30日 10時08分11秒)
お名前: コメント:

mod_perlでセッションファイルが更新されない - まかまか (2004年03月28日 21時22分24秒)

3.5.2をApache::Registry(perl,v5.8.0 built for i386-linux-thread-multi,Apache/1.3.27, mod_perl 1.28)で利用しておりますが、ログインした後、ページを移動してもセッションファイルが更新されません。

BBS-サポート掲示板/45にもあるように、CGI::Sessionオブジェクトのデストラクタが呼び出されていないようなのでとりあえず応急処置としてwiki.cgiの最後に

if(defined $ENV{MOD_PERL} and defined(my $ses = $wiki->get_CGI->{session_cache})){
	$ses->flush;
}

を追加して、セッションファイルを強制的に更新して使っています。この現象は通常は起きないのでしょうか…?


すいません、自己解決しました。CGI::Session::FileとCGI2のインスタンスが循環参照していてるため、デストラクタが呼び出されないのが原因でした。また、このせいでApache::Registryではメモリリークとなります。とりあえずwikiを終了する前に

$wiki->get_CGI->{session_cache}->{_SESSION_OBJ} = undef;
$wiki->get_CGI->{session_cache}                 = undef;

すればよいのですが、これ以外にもWikiとストレージ、WikiとParserで循環参照していてメモリリークを起こしています。

提案なのですが、Wiki.pmに後処理用メソッドを実装し

例:

sub exit{
	my $self = shift;
	$self->do_hook('finalize'); # プラグイン用
	undef( $self->get_CGI->{session_cache}->{_SESSION_OBJ} );
	undef( $self->get_CGI->{session_cache} );
	undef( $self->{storage}->{wiki} );
	……などなど
	exit;
}

wikiを終了させる際には(可能なら他のプラグインで呼び出されるexitも$wiki->exitに置き換えるなどして)、後処理ができるようにするのはどうでしょうか。

  • 仰る通りexit関数の代用品を用意することも考えたのですが、そもそも循環参照しないようにできないかと考えています。でも今のインターフェースでは難しいですよね…。考えてみます。 - たけぞう (2004年04月02日 11時30分13秒)
  • あと、Wiki.pm←→DefaultStorage.pmは確かに循環参照しているのですが、パーサについてはWiki.pm側ではローカル変数として使っているだけなので、メモリリークの原因にはならないいと思うのですがあってます?プラグインからパーサを参照する部分がありますね。プラグインは一度インスタンスが生成されるとWiki.pmのインスタンス変数としてキャッシュされるので、この部分で循環参照が発生するようです。 - たけぞう (2004年04月02日 13時16分31秒)

プラグインのインスタンスをWiki.pmがキャッシュしている分には、最後にまとめてundefすることでなんとかなりそうですが、むしろ&Wiki::process_plugin (3.5.3dev5のWiki.pm,l.594)で、局所化されたプラグインインスタンスにPaserインスタンスを持たせている部分が解放を困難にしているように思います。

この部分の循環参照(プラグインインスタンス内のPaserインスタンス内のWikiインスタンス)は、&Wiki::process_pluginのスコープを抜けた時点で解放できなくなってしまいます。結果をreturnする前に

undef( $obj->{parser}->{interwiki} );
undef( $obj->{parser}->{keyword}   );

する必要があり、さらに$obj->{parser}->{wiki}をundefしないとなりませんが、それをしてしまうと、その後のパースができなくなる場合があったので結局&HTMLParser::end_parse内で

$self->{wiki} = undef;

をして、やっとWikiのデストラクタを呼び出せました(ちょっと、ここ曖昧です。今、mod_perl環境がないもので確認ができません。しかもこれだと、再度このHTMLParserインスタンスでパースしようとするとエラーになりますね)。(以上、3.5.3dev5にて)

  • ところで、循環参照を別にしても、プラグインの後処理用にhookの呼び出しがあったら嬉しいのですが、これについてはどんなものでしょう?(話題がずれてすいません) - まかまか (2004年04月03日 02時43分29秒)
  • プラグインに持たせているParserをWiki#process_pluginから抜ける前にundefすれば丸く収まると思います(おそらく…)。Wiki#exitメソッドを新たに追加しexit関数の代わりに使うようにしようと思います。また、finalizeフックも追加します。ただ、このような実装だとエラーで落ちた場合にはどちらにしても終了処理は行われませんね。 - たけぞう (2004年04月04日 02時38分14秒)
  • フックの追加ありがとうございます。エラー時に処理されないことについては、CGI::Carpの処理に割り込んで何とかならないものかと試しているのですが、何故かうまくいきません(仮にできたとしても美しくない処理ですよね……)。 - まかまか (2004年04月05日 23時11分13秒)

プラグインに持たせているParserをWiki#process_pluginから抜ける前にundef

という件ですが、実際にそれを行うとParserインスタンスが抱えているWikiインスタンスを根本から絶ってしまうようなのです。その結果、インラインプラグインなどのあるページを呼び出すと

Can't call method "config" on an undefined value
at lib/Wiki/HTMLParser.pm line 310.

などとなるように、別のところでwikiインスタンスを利用できなくなる場合が発生します(どういう場合に生じるのか、私はまだよくわかっていません)。

確実なのは、リファレンスのカタログをつくって

*** Wiki.pm.org Thu Mar 11 23:39:16 2004
--- Wiki.pm     Mon Apr 05 23:01:02 2004
***************
*** 592,597 ****
--- 592,598 ----
        } else {
                if($info->{FORMAT} eq "WIKI"){
                        $obj->{parser} = $parser; # 裏技用
+                       push @{ $self->{parser_obj} }, $obj->{parser};
                        my $cache = $parser->{cache};
                        $parser->{cache} = 0;
                        if($info->{TYPE} eq "inline"){

後処理メソッド内で

for my $parser ( @{$self->{parser_obj}} ){
	undef( $parser->{wiki} );
	undef( $parser->{interwiki} );
	undef( $parser->{keyword} );
	undef( $parser );
}

てな感じなのでしょうか(正常に動作しました)。これまた見苦しい処理ですが。

  • process_plugin内で$plugin->{parser}をundefするように修正してみたのですが、動いてますよ。こんな感じです。なにか間違ってるでしょうか。 - たけぞう (2004年04月06日 11時19分54秒)
594c594
<  $obj->{parser} = $parser; # 裏技用
---
>  $obj->{parser} = $parser; # 裏技用(プラグイン内部からパーサを使う場合)
599a600
>    undef($obj->{parser}); # パーサの参照を解放
603a605
>    undef($obj->{parser}); # パーサの参照を解放
  • やや、確かにおっしゃる通りでした。どうも$obj->{parser}->{wiki}の方にばかり目がいってしまっていました。お手数をおかけして申し訳ありません。それから以下のような方法でdieした場合で後処理が可能でした。 - まかまか (2004年04月06日 17時12分08秒)
# wiki.cgi 3.5.3dev5
25c25
< use CGI::Carp qw(fatalsToBrowser);
---
> #use CGI::Carp qw(fatalsToBrowser);
31a32,45
> BEGIN{
> 	use CGI::Carp qw(fatalsToBrowser);
> 	my $cgi_carp_die_org = \&CGI::Carp::die;
> 
> 	sub _die{
> 		my $wiki = $CGI::Carp::wiki;
> 		$wiki->process_before_exit if($wiki); # 後処理
> 		$cgi_carp_die_org->(@_);
> 	};
> 
> 	*CORE::GLOBAL::die = \&_die;
> 	$SIG{__DIE__}      = \&_die;
> }
> 
43a58
> local($CGI::Carp::wiki) = $wiki;
  • ありがとうございます。上記のパッチも取り込ませていただきます。 - たけぞう (2004年04月07日 11時38分14秒)
お名前: コメント:

HTMLキャッシュの更新のタイミングについて - けじゃ (2004年03月28日 19時32分01秒)

はじめまして。現在試行錯誤を繰り返しながら、設置に向けてコンテンツを整備している次第です。XOOPSまではいらない、BLOGでは思っているのと違うな、と思っていたところ、Wikiというのを知り、FSWikiさんへ行き着いた次第です。長い前置きですみません、これからもどうぞよろしくお願いします!!

さて、質問ですがFrontPageにRSSを利用してニュースを表示しようとしているのですが、やはり毎回RSSを取り込もうとすると表示速度が気になるのでHTMLのキャッシュをしようと思うのですが、このキャッシュの更新のタイミングはどうなっていますか?(「キャッシュから除外するページ」、「更新時にキャッシュを更新するページ」の設定は関係なしデフォルトで)

ページを編集したタイミングでのみ更新されるのでしょうか?或いは、60分毎とか決まっておりますか?もし前者なら、今後のバージョンアップの際に、追加機能として管理者の設定で時間設定可能にはできませんでしょうか?

以上、よろしくお願いします。

  • ページを更新したタイミングで更新されます。BBS-サポート掲示板/186のコメントにも書いたのですが、HTMLキャッシュ自体が実験的な機能であるため、今のところは時間設定を可能にするようなことは考えていません。 - たけぞう (2004年03月29日 09時52分43秒)
  • 早々のご回答ありがとうございました。また今後の方向性についても承知しました。基本的にはキャッシュ無しで運用し、FrontPageなどアクセスの多いページは軽いページ構成とし、負荷の高いページは別で用意しようと思います。 - けじゃ (2004年03月29日 15時15分57秒)
お名前: コメント:

センタリングやインデントは出来ませんか? - ts (2004年03月27日 14時47分11秒)

特に画像やテーブルが端に寄るのを治したい時があるのですが。

  • FSWikiの基本文法ではできないです。CSSで指定するか、プラグインで対応することになります。 - たけぞう (2004年03月27日 22時48分12秒)
  • BugTrack-plugin/43 - てて (2004年03月27日 23時03分11秒)
  • すみませんでした。調べ方が足りませんでした。ありがとうございます。 - ts (2004年03月28日 11時37分04秒)
お名前: コメント:

各操作ボタンを画像にしたいのですが… - サトー (2004年03月25日 21時06分33秒)

初めまして。よろしくお願いします。

私はHTMLとCSSなら何とかわかる程度の者です。新規・編集・一覧などを画像ボタンにしようと思って、単にFrontPageのソースに生成されている各アドレスを画像のリンク先に指定して、一応添付ファイルの様なレイアウトを作りました。

でも、当たり前の事だったんですが(^_^;)、編集ボタンに関しては各ページで生成されるソースが違う事に今頃気付きました。

何とかこのEditボタンを押せば、各ページの編集画面になるようには出来ないでしょうか? もし方法があれば、是非教えて頂きたいのですが。

  • メニューのURLはplugin/core/Install.pmで指定しています($wiki->add_menu()という部分です)。ただし、URLが動的に変わるものについてはFSWikiのフック機構を利用して実装されています。「編集」アンカの場合はplugin/core/EditPage.pmのhookというメソッド内で処理しています。このあたりを修正すれば上記のような対応が可能だと思います。 - たけぞう (2004年03月26日 09時57分27秒)
  • 返信ありがとうございました。とりあえずエディタで開いてみましたが、今の所何が書いてあるのか理解出来ません。しかし、弄る場所はわかったので、何とかPerlを攻略してみます。またよろしくお願いします。 - サトー (2004年03月26日 11時52分47秒)
  • BugTrack-plugin/233 - 名無しさん (2008年04月07日 21時47分08秒)
お名前: コメント:

生HTMLをそのまま記述するには? - puru (2004年03月25日 09時38分21秒)

自動で整形してくれるのはとてもありがたいのですが,時々「生HTML」を書きたくなる時があります.

具体的には GoogleAdSense 用の JavaScript(貼るとバナーになる)をそのまま貼り付けたいのですが・・・

どうすればいいでしょうか?

  • 全ページに固定表示したいということであればtmplディレクトリ配下のテンプレートファイルに記述することができます。 - たけぞう (2004年03月25日 10時33分07秒)
  • 各ページにHTMLを記述したいということであればプラグインを自作するとか、HTMLタグ挿入プラグインを使うなどの方法があります(最新版で動くかどうか未確認ですが)。ただ、このプラグインは訪問者がHTMLを記述することも可能になりますので十分に注意してください(というか公開Wikiでは使用しないほうが無難です)。 - たけぞう (2004年03月25日 10時33分29秒)
  • 素早い返信ありがとうございます.確かに危険ではありますね・・・テンプレート編集の方向でいきます.ありがとうございました. - puru (2004年03月25日 10時49分48秒)
お名前: コメント:

ページ内リンクのカラーについて - kokage (2004年03月22日 02時17分46秒)

素人質問で申し訳ないですが…。スタイルシートでページ全体のリンクカラー設定を行ったら、外部リンクと一部の内部リンクは設定どおりの色になっているのですが、MenuやCalendarが生成する日付のリンク部分がWindowsデフォルトの青色になってしまいます。スタイルシートのサイトを転々としてみて過去ログも調べたのですが…_no

  • 自己解決しました… - kokage (2004年03月22日 03時09分43秒)
  • スミマセン。僕も聞きたかったんですが、例えば、プラグイン←この文字の色はどこで設定するのですか? CSSを見ても記述が無いんですが。バックの色を変えたら非常に見づらくなってしまって…。 - ts (2004年03月27日 11時19分46秒)
  • ログインしてスタイル設定→ユーザ定義スタイルで設定できます。 - たけぞう (2004年03月27日 22時40分07秒)
  • ありがとうございます! - ts (2004年03月28日 11時38分15秒)
お名前: コメント:

Apace2+Perl5.8環境のサーバーで動かしたい - ZON (2004年03月17日 12時44分40秒)

3.5.2からのユーザーですが、レンタルサーバーでの個人利用(Apache1.3x + Perl5.6.1)と職場LAN内部での文書処理利用(VineLinux2.6r4 + Apache1.3x + Perl5.6.x)で大変有用に活用させていただいております。

(ログイン機能などの)評価も高く、今度公開サーバーでFSwiki3.5.2を稼働させようと設置したのですが、エラーメッセージの内容が情報の少ない以下のタイプなので行き詰まっております。

Premature end of script headers: wiki.cgi
Error 500

別のscriptを使って調べた範囲ではこのサーバーの環境は次のようです。

Apache/2.0.40 (Red Hat Linux)
※ RedHatのバージョンは不明
/usr/lib/perl5/5.8.0/i386-linux-thread-multi/B.pm : 1.01
(...以下続く) ※Perl5.8.0と思われる

※次の点は確認しました。

  • ファイル頭の「#!/usr/bin/perl」はサーバー指定のものになっているか……ok(動くscriptで確認)
  • 行末改行は正しいか……ok(全てLFであることを確認)
  • サーバーが文字エンコードを正しく扱えるか……ok(EUCコードのscriptが動作することを確認)
  • 各ファイルのパーミッションは正しいか……ok(稼働しているFSwikiにならって設定)
    • cgiのディレクトリは読みにいけるか……一覧表示はできないものの、ファイルが存在すれば表示される
    • ※例 http :// URI /設置ディレクトリ/lib/Wiki.pm とすればファイルの内容が表示される
  • 設置したものは配布物からperlのパスなど初期設定を加えただけのものです。

エラーログを取り寄せられないかと連絡していますが、いずれにせよ情報が少なすぎるので次の追試を行いました。ヒントか取っ掛かりが見つかるだけでもうれしいのですが。

  • インストールされているモジュール名などを調査するscript(jisで記述)を同じディレクトリに設置……動く。パス等の情報も取得できる
  • YYbbs(Kent氏配布、Jcode.plを使うタイプ)をEUC-JPに変換して設置……動く。ログも正常に書き込まれる
  • (追記)FS wiki Lite0.0.9を設置してみる……動作する。

他に何か試験すべきポイントがあるでしょうか。何か見落としているような気もするのですが……

感触としてPerl5.8標準ののモジュール周りとの不具合を疑っているのですが、原因を特定できていないのでなんともいえません。環境変数を取得するスクリプトの結果が必要でしたら(実アドレスとかは伏せさせてください)添付できると思います。添付しました。

ファイル名get_env2.txt(864)※「*」の入っている部分は伏せています

※問題解決しました

何とか突破口を見つけて解決しました。「Perl5.6 Perl5.8」をキーワードにかなりGoogle廻りをした結果、「(Redhatの?)Perl5.8にはCGI.pmが含まれていない」という旨の日記や覚え書きにたどり着きました。(どうもパッケージを追加選択しないと入らないらしいです???)

このサーバーのエラーログは結局取り寄せられなかったのですが、試しに存在しないモジュールをuseするスクリプトを走らせたところ、同様の500エラーを出すことが確認できました。全部は必要ないのかも知れませんが、依存関係があるかも知れないと思ったのでCPANからCGI.pmモジュール(最新3.04)を手にいれ、./lib以下と ./lib/CGIディレクトリに追加する形でモジュールを加えて、ついでにCGI2.pmの文末に「1;」が見つからなかったので加えて、最後にwiki.cgiに「use CGI ;」を明示したところ、何事もなかったかのように作動しました。

解決してみれば簡単なことだったのですが、情報を見つけられなかったら行き詰まったままだったかもしれないです。お騒がせしました。

お名前: コメント:

日記システムの質問ですみません。 - hiuga (2004年03月15日 06時49分13秒)

先日から使わせていただいております。今使っているバージョンは3.5なのですが、キーワード検索の結果を日付が新しい順に表示するにはどうすればよいでしょうか。バージョンアップが必要でしょうか?過去に同様の質問があったらすみません。よろしくお願いいたします。

  • 3.6がリリースされていますので、そちら試してみてください。 - たけぞう (2004年03月15日 15時35分23秒)
  • それと前にもありましたが、ここはFSWikiのサポートサイトですのでsnsの質問やバグレポートを投稿するのはご遠慮ください。 - たけぞう (2004年03月15日 15時37分52秒)
  • 場違いなところに投稿してすみませんでした。バージョンアップでなんとかなりました。ありがとうございます。今後、snsの質問はどこですればいいですか? - hiuga (2004年03月15日 19時12分04秒)
  • サポート先、バグレポート先に関してはWebサイトやドキュメントに記述がありますので参照してください。利用者が増えてきたらsns専用のサポート掲示板を設けるつもりです。 - たけぞう (2004年03月15日 19時19分55秒)
お名前: コメント:

FSWiki_liteのlogディレクトリについて他 - saitou (2004年03月14日 20時44分58秒)

プラグイン情報の件、ありがとうございました。

FSWiki_liteをテスト運用していて気付いたのですが、readmeに作るよう指示されているlogディレクトリがどうも使われている形跡がありません。本当に必要なのでしょうか?

また、以前にも報告されているか違いましたが、attachディレクトリについての説明が抜けていますので時間がありましたら訂正をお願いします。

  • 「以前にも報告されているか方がいましたが」です。 - saitou (2004年03月14日 20時45分51秒)
  • attachディレクトリの記述については既に修正済です。CVSには最新のものがありますので参照してください。logディレクトリは不要ですね。記述を削除しておきます。 - たけぞう (2004年03月15日 15時31分29秒)
お名前: コメント:

ログイン後に設定画面に入れない - なお (2004年03月12日 01時50分59秒)

すみません.少し整理して書き直します.

サーバは,Fedora Core 1+Apache 2 を使っています.

3.5.3dev4を使ったところ,ログイン画面でログインしても再度ログイン画面に戻ってしまう現象が発生します.そこで,3.5.2 に下げたところ,ログインはできるのですが,設定メニューに入ろうとすると,「ログインしていません」が出ます.しかたがないので,3.5.1 まで下げると,正常に動きました.

やはり,最新バージョンで運用したいと思っているので,解決法があればお教えいただけると幸いです.

  • 解決法ないのでしょうかね... - なお (2004年03月18日 20時59分15秒)
  • FSWiki以外のクッキーを使うCGIスクリプト(snsでもいいです)でクッキーは正常に動作するのでしょうか? - たけぞう (2004年03月23日 13時48分57秒)

一応,動いているようです.たとえば,次のような CGI を動かすとクッキーファイルが生成されました.

#! /usr/bin/perl --

print "Set-Cookie: CookieTest=test; expires=Tue, 30-Mar-2004 11:55:55 GMT;";
print "Content-type:text/html\n\n\n\n\n\n\n";
print "test";
  • lib/CGI2.pmを以下のように修正するとどうなるでしょうか? - たけぞう (2004年03月26日 10時00分01秒)
#my $cookie  = CGI::Cookie->new(-name=>'CGISESSID',-value=>$session->id(),-expires=>"+${limit}m");
my $cookie = CGI::Cookie->new(-name=>'CGISESSID',-value=>$session->id());
  • 3.5.3でなおさんと同じ症状でしたが、たけぞうさんのおっしゃった修正で直りました。 - tani (2004年05月25日 22時24分16秒)
  • サーバ(かクライアント)の時計か時間帯の設定がちゃんとできてないか、サーバとクライアントで時計がズレてるのかもしれませんね。ご確認を - gyo (2004年05月26日 10時27分30秒)
  • lvTDBaIbmi - vYjcbismbkk (2013年01月06日 11時39分45秒)
お名前: コメント:

IISでFarmを使う - リュナン (2004年03月12日 00時26分08秒)

IISだとPATH_INFOの問題でFarmが使えませんがアプリケーションマッピングで「ファイルの存在を確認する」のチェックボックスを外すとFarmが使えるようになるみたいです。とりあえず、ちょっと試して見たら問題なく動いている見たい?です。これに対する弊害はちょっと調べていないので分かりませんが・・・http://www.web-ware.org/ssm/quickstart.html#iis↑の様な対策も有るみたいですが、似たようなコードを追加すればデフォルト設定でもIISでFarmが使えるようになるのかも知れません。寝る前に発見したので、あまり深く調べていませんが、とりあえずご報告まで。

  • 追記

ちょっと調べてみました。 IIS5.0以降ではPATH_INFOは正しくなっている様です。

IIS5.0(Windows2000SP4) IIS5.1(WindowsXPSP1) にてテスト
リクエストURL http://hogehoge/hoge/test.pl/test
その時の環境変数
PATH_INFO = /hoge/test.pl/test
SCRIPT_NAME = /hoge/test.pl

ただし、アプリケーションマッピングで「ファイルの存在を確認する」のチェックを外さないと、/hoge/test.pl/testを探そうとしてエラーになります。

お名前: コメント:

デフォルトのアクセス権 - naoya (2004年03月12日 00時19分15秒)

教えて下さい。新規に作成したページのアクセス権がデフォルトでは公開となってしまうのですが、これをユーザーに変更することはできないでしょうか?

  • 今のところできません。 - たけぞう (2004年03月12日 10時15分23秒)
  • ログイン中のユーザによって作成されたページはそのユーザのアクセス権になってほしいです。作成する度に参照権限を変えないといけないので。ご検討よろしくお願いします。 - たけ (2004年03月29日 02時15分16秒)
  • もしくは作成時に設定できるようにとか。 - てて (2004年03月29日 04時30分43秒)

ソースを一部変更したのですが、以下の方法ではだめでしょうか? - Wada (2004年06月09日)

バージョンは3.5.5です。

  • lib/Wiki/DefaultStorage.pm の get_page_level のページが見つからなかった場合の値を1に変更する。
#if(defined($page)){
#	if(defined($self->{"$path:show_level"}->{$page})){
#		return $self->{"$path:show_level"}->{$page};
#	} else {
#		return 0;
#	}
#} else {
#	return $self->{"$path:show_level"};
#}

if(defined($page)){
	if(defined($self->{"$path:show_level"}->{$page})){
		return $self->{"$path:show_level"}->{$page};
	} else {
		return 1;
	}
} else {
	return $self->{"$path:show_level"};
}
  • plugin/admin/AdminPageHandler.pm の page_list の以下の部分を変更する。
	
	# 参照レベルを調べる
	#if(!defined($level_list->{$page}) || $level_list->{$page}==0){
	#	$buf .= "    <td>公開</td>\n";
	#} elsif($level_list->{$page}==1){
	#	$buf .= "    <td>ユーザ</td>\n";
	#} elsif($level_list->{$page}==2){
	#	$buf .= "    <td>管理者</td>\n";
	#}
	
	# 参照レベルを調べる
	if(!defined($level_list->{$page}) || $level_list->{$page}==1){
		$buf .= "    <td>ユーザ</td>\n";
	} elsif($level_list->{$page}==0){
		$buf .= "    <td>公開</td>\n";
	} elsif($level_list->{$page}==2){
		$buf .= "    <td>管理者</td>\n";
	}

他にもいろいろと変更すべき点がありますでしょうか?(でも、こんなことをやるよりは、設定ファイルで変更できるようにした方がいいですね。。。)

  • BugTrack-plugin/146に、設定ファイルでデフォルトの参照権限を設定できるパッチを置きました。お試しください。 - matto (2004年10月15日 17時51分01秒)
お名前: コメント:

FSWiki_liteのプラグイン情報 - saitou (2004年03月12日 00時02分24秒)

FSWiki_liteへプラグインの移植を考えているのですが、FSWikiのプラグインとの相違等の情報が(出せる資料が)あれば公開して頂けると助かります。

  • docs:FSWikiLite/プラグイン開発にまとめてみました。 - たけぞう (2004年03月12日 10時44分16秒)
  • ありがとうございます。 - saitou (2004年03月12日 19時18分27秒)
  • 便乗です。Liteではファイル数を減らすために、複数のプラグインをひとつのファイルにまとめる形式になっているというのを以前読みました。プラグイン投稿するにあたっては、何らかのポリシーあるいはガイドラインがないと、取り扱いが面倒になると思います。さしあたって、名前空間の分離、「インストール手順の説明」のガイドライン、既存のFSWikiプラグインとの互換性あたりは見解があるといいかなと思います。 - いしだなおと (2004年03月15日 01時52分21秒)
お名前: コメント:

[ 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秒