ページの作成や編集にはユーザ登録が必要です。
FSWikiサポート掲示板
- 設置に関するトラブルや要望などがあれば書き込んでください。
- 記事のタイトル一覧をサポート掲示板一覧で見る事ができます。それ以前の過去ログは[サポート掲示板]から参照できます。
- 投稿する前に
- Tips、FAQ、サポート掲示板の過去ログに同様の内容がないかを確認してください。
- バグ報告に関してはバグトラックのほうにお願いします。
- 機能拡張のためのパッチやプラグインの投稿はプラグイン投稿にお願いします。
- パッチは本体にあてるものの場合はGPL、プラグインにあてるものの場合はプラグインのライセンスにしたがうものとします。
- 開発に関するご意見、質問等はメーリングリストにお願いします。
- FSWikiとは無関係と思われる投稿、コメントに関しては削除させていただきますのでご了承ください。
- 特定の設置環境でのみ発生するトラブルがいくつかあります。トラブル報告の際には、「どんな設定の」「どのサーバ/レンタルスペースに」「どうやって」設置したかを詳しく書くと、返事がもらいやすいですよ
- どういうことを書けば回答を得やすいか判らない方は、こちらのページをご一読ください。
丸付き数字が文字化けします - 風カイ (2021年07月06日 09時54分34秒)
3.6.4から3.6.5にバージョンアップ後、丸付き数字が文字化けするようになりました。こちらは、Windows + IIS +Perl5.8です。このサイトでも発生しています。SandBoxコメントに「2021年07月06日 09時46分14秒」に丸数字の1を投稿しました。?で表示されていますが、ソースで表示すると丸数字の1で見えています。どうすれば、丸付き数字を文字化けしないようにできるのでしょうか。
- 丸数字は機種依存文字だねぇ。本システムはEUCコードだから(UTF-8対応じゃない)表示は無理だね。 - 名無しさん (2021年07月06日 10時50分40秒)
- 丸数字はダメと言ったって一向に聞いてもらえないですよね・・・。私も前に同症状で困りましたが、 Util.pmの $retstr = Jcode->new($retstr)->euc; を#コメントアウトしたような気が・・・数か所あったかもしれませんがURLの場合リンク切れになる可能性があります。お試しください。 - as (2021年07月06日 12時44分18秒)
- 3.6.4同様に表示できるようになりました。38行目、103行目をコメントにしました。これで様子を見ます。ありがとうございました。 - 風カイ (2021年07月06日 16時50分31秒)
- 確かにEUCに対応できない文字は使用できなくなっていますからねぇ・・・Util.pmの該当箇所を変更した場合、他国の文字でスパム投稿された場合にFSWiki上から削除できないファイルが作成されることがありますのでご注意ください。 - KG (2021年07月08日 09時52分06秒)
- ちなみに、以前作成していたfswiki-v4(utf8版)で試したら当然丸数字は使用できました。:-) - KG (2021年07月08日 09時54分10秒)
- 少し調べてみたら、JcodeはEncodeのラッパーになっているのですが、decode('EUC-JP',$str)は丸付き数字を取り扱えるのですが、何故かラッパーのJcodeからのdecode呼出しだと?になってしまうという状況でした。 - 風カイ (2021年07月08日 13時55分24秒)
- 丸数字は保存はちゃんとされていますし、編集時のtextareaには丸数字で表示されますね・・・ - KG (2021年07月08日 14時45分44秒)
- ? - 名無しさん (2021年07月18日 11時56分39秒)
- Wikiページ保存する前に、EUC以外の文字を HTML::Entities::encode_entities() で数値文字参照に変換しておく、という手はあるようです。 - 名無しさん (2021年07月18日 12時07分34秒)
- ↑「数値文字参照に変換」は、実質的には $retstr = Jcode->new($retstr)->euc; をコメントアウトとほとんど同じですね。失礼しました。 - 名無しさん (2021年07月18日 15時05分26秒)
- 入力された新規作成ページ名から、ページ本文を保存する Wiki ソースファイル名 *.wiki を生成する際に使われるのは Util.pm 38行目(Util::url_encode())のみで、Util.pm 103行目(Util::escapeHTML()) は使われていないので、「他国の文字(を使ったページ名)でスパム投稿された場合にFSWiki上から削除できない(Wikiソース)ファイルが作成されることを防ぐ」ということだけが目的であれば、Util.pm 103行目の $retstr = Jcode->new($retstr)->euc; は不要な気がします。Util::escapeHTML() は、基本的にページ本文の表示時に使われると思いますので、Util::escapeHTML() 内の Util.pm 103行目で $retstr = Jcode->new($retstr)->euc; で制限をかける目的は何でしょうか? - 名無しさん (2021年07月18日 15時11分14秒)
- また、ページ名に使用できる文字を制限するのであれば、Util::url_encode() の中ではなく、Util::check_pagename() で制限をかけた方が良いような気がします。何故なら、現状の Util::url_encode() での制限は、拒否文字が文字化けするもののページを作成できてしまいますが、Util::check_pagename() で引っかかればページが作成されないからです。 - 名無しさん (2021年07月18日 15時26分42秒)
- Util.pmへの該当修正に関しては過去のXSS発生を防ぐ目的となっています。参考 - KG (2021年07月28日 13時29分25秒)
- とりあえずの解決策としては escapeHTML 変換処理を下記のようにすると良いかも - KG (2021年07月28日 18時15分56秒)
$retstr = Jcode->new($retstr)->euc; ↓ $retstr = Unicode::Japanese->new($retstr,'auto')->euc;
- Unicode::Japaneseはここからダウンロードしてください。なお、当然のことながら Util.pm には use Unicode::Japanese; を追加してください。 - KG (2021年07月28日 18時18分54秒)
- 注意点として、Japanese.pm にはバイナリデータが含まれていますのでアップロード時にはバイナリーで行ってください。 - KG (2021年07月28日 18時19分52秒)
- 上記変更によりEUC-JPで対応していない文字や第三水準漢字等も表示されるようになります。ちなみに、Jcodeでは別の文字に変換されてしまったのですけどね・・・ - KG (2021年07月28日 18時23分29秒)
- ZAP - ZAP (2022年06月20日 01時39分26秒)
ページ保存やリネームに時間がかかる - taka (2021年02月27日 09時57分32秒)
ページの表示や編集時のプレビューは問題ないのですが、ページ数がふえたためか、ページの保存やリネームを行うと10秒以上かかるようになっています。osはcentos7.5、FreeStyleWiki3.6.5 with Perl5.016003 & mod_perl/2.0.10の環境です。何がお気づきの点や切り分け方法があれば、アドバイスいただけませんでしょうか。topコマンドで見るとwikiのプロセスのcpu使用率が高いので、サーバのスペックの問題もあるかもしれませんが。。
- 使用しているプラグインによって遅くなるケースもあります。標準以外で何かプラグインを使用していますか? - KG (2021年02月28日 02時09分16秒)
- どれが追加したものか分からなくなっていますが、category2、sitemapですね。sitemapはOFFにしても保存が遅い状況は変わらなかったです。 - taka (2021年02月28日 14時05分55秒)
- category2はキャッシュ対応版でない場合は遅くなりますので、キャッシュ対応版を使用してみてください。 - KG (2021年02月28日 15時58分05秒)
- そういえば、takaさんはキャッシュ対応版を使用しているんでしたね。 - KG (2021年03月01日 01時30分26秒)
- category2を使用しないページでも保存時に遅かったりしますか? - KG (2021年03月01日 02時13分16秒)
- そうですね、普通に新規作成しても同様ですので、category2ではないのかもしれません。 - taka (2021年03月01日 02時22分42秒)
- 保存完了までの間logフォルダを見ていると、keywords2.cache再生成までに少し時間が掛かり、その後はaccess.logが更新されるまでに結構時間が掛かります。data配下に1万4千くらいファイルがあります。 - taka (2021年03月01日 02時33分30秒)
- やはり、大量のページが存在することでKeywordキャッシュ機能がかなり遅くなっているようです。今のところ「ページの自動リンク」をオフにすることで改善することはわかっていますので実験してみてください。 - KG (2021年03月02日 19時36分41秒)
- ありがとうございます。色々試してみます。 - taka (2021年03月02日 21時07分32秒)
- ZAP - ZAP (2022年06月20日 01時39分22秒)
権限によるページ内の表示制御 - taka (2021年02月27日 09時42分57秒)
いつもお世話になっております。当方のサイトは一部ページをログインユーザのみ表示可能としているのですが、ログインしていないユーザはページの前半だけ表示して、ログインしていれば全文を表示するような制御を行うプラグイン、方法などがあれば、教えていただけませんでしょうか。
- ログインユーザーのみ表示可能なページをincludeするのは、どうでしょうか・・・。 - as (2021年02月27日 12時25分28秒)
- as さん、良い案だと思います。あとはログイン後に続きが読めるみたいな文言が表示出来て、ログイン時には隠れるような制御ができればいいですね。レイアウトプラグインで適切なテンプレートを作成すれば可能ではありますけど :-) - KG (2021年02月28日 02時13分32秒)
- asさん、KGさんありがとうございます。includeでとりあえず対応できそうです。 - taka (2021年02月28日 14時01分08秒)
- ZAP - ZAP (2022年06月20日 01時39分29秒)
スタイル設定のユーザ定義スタイルを指定のページのみに適用する方法 - こん (2019年04月25日 10時38分26秒)
現在FSWiki3.6.4を使っているのですが、特定のページのみにスタイル設定を適用することは可能なのでしょうか?具体的には一部のページだけh2やh3をwidth:800pxとかにしたいと思っています。
先週部内のサイトを突然管理させられたため、FSWikiについてあまりわかっておらず質問させていただきました。よろしくお願いいたします。
- 拙作の テンプレート/スタイル変更プラグイン を導入することで対応可能です。h2,h3のスタイル定義を変更したものをthemeディレクトリに配置して準備する必要がありますが、、、プラグイン導入後、使用方法にある{{sitestyle テンプレート名,スタイル名}}の記述方法で特定のページに埋め込むか、もしくは管理画面の「テンプレート/スタイルの自動適用」から条件設定を行うことでスタイルを変更することが可能です。 - KG (2019年04月26日 19時11分22秒)
- また、HTML挿入プラグイン を利用し、<style>〜</style> を記述したページ(例:style_html)を作成して {{include_html style_html}} としてページ内に埋め込むという方法でも変更できると思います。 - KG (2019年04月26日 19時14分29秒)
- ZAP - ZAP (2022年06月20日 01時40分06秒)
Software Error: - kitta (2019年04月12日 13時19分42秒)
会社のサーバーを mac から win 変更するのに伴い、初めて windows7 apache 入れて苦戦しています。
環境は
- windows7
- apache : 2.4.39
- fswiki : 3_6_5
何とか表示される所までは来たのですが、新規とか編集すると以下のエラーがでます。
Software Error:
Permission denied at lib/Wiki/DefaultStorage.pm line 62.
で、とりあえず確認すると data 以下にファイルは出来ているのですがパーミッションが
----rwx---+ 1 kittak Domain Users 11 4月 12 13:06 test.wiki
となっています。以下の様に変更すると表示されるようになります。
何をどうしたら使える様になるのでしょうか?よろしくお願いいたします。-rw-rw-r--+ 1 kittak Domain Users 11 4月 12 13:06 test.wiki
- Program Files 内の ApacheXX/cgi-bin/ 内にFSWiki をそのままセットアップされました? - KG (2019年04月12日 18時19分49秒)
- 親フォルダのアクセス権を変更すると解決するような気がします。 - KG (2019年04月12日 18時24分13秒)
- /usr 作ってその中に apache 入れ、その中の htdocs に入れてます。親フォルダのアクセス権ですね。月曜日に確認して見ます。 - kitta (2019年04月12日 21時23分30秒)
- ん〜〜何度もパーミッション見直したり、再度設置してみたりしたんですがどうにも上手くいきません。c 直下に apache を配置に変更 2.4 から 2.2 に変更。 wiki365 を設置。同じエラー。 wiki364 を試したら今度は 500error で wiki が表示もされない。apache2.2・wiki365 での保存時 apache の error log はこんなんでした。 [error] [client ::1] CGI::param called in list context from lib/CGI2.pm line 106, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at C:/Perl64/lib/CGI.pm line 412., referer: http://localhost:8080/wiki.cgi?action=NEW よろしくお願いいたします。 - kitta (2019年04月15日 12時19分12秒)
- もうめんどくさくなって XAMPP でやっても同じエラー。Permission denied at lib/Wiki/DefaultStorage.pm line 62.。きっと同じ間違いをしているんだと思うんですが分かりません。同じところで永遠ループしてる気分です。 - kitta (2019年04月15日 15時00分55秒)
- 何で保存される *.wiki のパーミッションが 070 になってしまうんでしょうか? - kitta (2019年04月15日 15時51分20秒)
- 外してたらすみません。apacheの設定でディレクティブのSuEXEが有効になってます?その場合はSuEXEを無効にしてapacheをrestart後に再度アクセスされるとどんな感じでしょう - たった (2019年04月16日 02時59分03秒)
- 私もWin7,8,10でfswikiを使っていますが、こういうトラブルに会ったことはないです。私のApacheはloungeのzipバイナリをcドライブ直下に手作業で展開して -k install でサービス化います。サービス - しみず (2019年04月16日 03時09分17秒)
- たった様 SuEXEC は有効になっていなです。 - kitta (2019年04月16日 09時35分19秒)
- simizu様 うらやましいです。もちっと粘ってみます。 - kitta (2019年04月16日 09時39分29秒)
- 何とか動き始めました。どうもCygwinでsetup.shしてたのがそもそもNGだったようです。お騒がせいたしました。 - kitta (2019年04月16日 11時15分27秒)
- それとApache 2.4だとhtaccessの書き方も変わっているので最初はひっかかりました。 - kitta (2019年04月16日 13時08分54秒)
- 結局パーミッションでした。windowsをよく知らなかったのでCygwinで色々と設定していたのがダメだった様です。 - kitta (2019年04月16日 13時18分03秒)
- 無事解決されたようで良かったです - たった (2019年04月16日 13時49分54秒)
- ZAP - ZAP (2022年06月20日 01時40分04秒)
(ページ別名)リンクのブラケット内 インラインwiki書式再評価 - MRB (2018年09月21日 20時57分37秒)
※以下の[]や|などwiki書式は実際は半角です。
通常の[[これは==ゼルダ==’’’リンク’’’です]]は、ブラケットの中のインラインWiki書式が再評価されません。ページ別名リンクでも、[[別名|実際のページ名]]としたときに、別名部分はインライン Wiki 書式は評価されずに処理されています。
例えば、[[これは==本当の名前==別名です|実際のページ名]]としても、<a href="実際のページ">これは==本当の名前==別名です</a>と出力されます。
これを<a href="実際のページ">これは<del>本当の名前</del>別名です</a>のように変換したい場合、どのようにすればよいでしょうか。
別名の方は、Paser.pm の parse_line メソッド部分の、「# ページ別名リンク」の$labelを再度 parse_line に投げて、HTMLParser.pm の wiki_anchor メソッドをページ別名リンクから呼ばれたときにはescapeHTMLしないように拡張する……という感じでしょうか。
- 自己レスです。wiki_anchor の 「&Util::escapeHTML($name)」→「join("",$self->parse_line(&Util::escapeHTML($name)))」でうまくいきました。特に弊害はなさそう(?)です。deniallineなど他のインラインwiki書式処理は再評価しているのに、なんでwiki_anchorはしていなかっただろう。。。 - MRB (2018年09月21日 21時22分56秒)
- そうですね。調べてみましたが、特に弊害はなさそうです。url_anchor も同様に再評価させても良いかもですね。 - KG (2018年09月25日 10時13分43秒)
- 今ですが気づいたので。上記の再評価をした場合、ページ内リンク([hogehoge|#p1]など)が正しく動作しないようです。a要素の中身が、期待値としては上記例では「hogehoge」ですが、「1」という表示になってしまいます。理由はわからずでした。。 - MRB (2022年03月05日 19時11分33秒)
- ZAP - ZAP (2022年06月20日 01時39分25秒)
HTMLPaserで出力されるsanchor - MRB (2018年08月18日 15時53分45秒)
「!!」というかたちで見出しを作成したときにだけ、
<span class="sanchor"> </span>
が出力されています。
「!!!」と「!」では出力されません。
また、バージョン3.6.1以降は出力されることを確認しました。それより前のバージョンは試していません。
確認したところ、HTMLPaser で以下の通りに場合分けをして、わざわざ出力内容を変化させていました。これは、なにか意図があってこのようにしているのでしょうか。default.css には.sanchorの定義もないので、「$level==2」での分岐をなくしてしまっても問題はないと思っているのですが、、、
# メインの表示領域の場合はアンカを出力 } else { if($level==2){ $self->{html} .= "<h".($level+1)."><a name=\"p".$self->{p_cnt}."\"><span class=\"sanchor\"> </span>". $html."</a></h".($level+1).">\n"; } else { $self->{html} .= "<h".($level+1)."><a name=\"p".$self->{p_cnt}."\">".$html."</a></h".($level+1).">\n"; }
- 該当箇所については私も以前気になった事がありました(すっかり忘れていましたけどw)。色々と調査したのですが、CVS時代のログが残っていない為正確なところはわかりませんが恐らくは tDiary テーマに合わせる為の修正ではないかと思われます。 - KG (2018年08月19日 01時39分04秒)
- FSWiki3.6.3以降がclass="sanchor"出力を行っていますね。 - KG (2018年08月19日 01時58分50秒)
- ご回答ありがとうございます。tDiaryのテーマは使用していないので、コメントアウトして使用することにします。 - MRB (2018年08月20日 02時23分40秒)
- 今なら、もうtDiaryに拘る必要もないと思いますので、将来的変更出来るよう検討しておきます。 - KG (2018年08月20日 02時41分14秒)
デフォルトテンプレート時にPC以外でMenuページへのリンク表示 - KG (2018年08月16日 14時10分30秒)
デフォルトのPC以外のテンプレートではサイドメニューが表示されない為、以前より不便に感じる方も多かったと思います。
下記の修正により、PC以外でアクセスする際に上部メニューにMenuページへのリンクが表示されるようになります。
- 修正ファイル plugin/core/Install.pm
--- plugin/core/Install.pm.org 2018-03-28 14:19:46.000000000 +0900 +++ plugin/core/Install.pm 2018-08-16 14:02:40.000000000 +0900 @@ -9,12 +9,16 @@ sub install { my $wiki = shift; my $login = $wiki->get_login_info(); $wiki->add_menu("トップ",$wiki->create_page_url($wiki->config("frontpage")),999); + if ($wiki->page_exists("Menu") && (&Util::handyphone() || &Util::smartphone())) { + $wiki->add_menu("メニュー",$wiki->create_page_url("Menu"),999); + } + if(&accept_edit($wiki)){ $wiki->add_menu("新規",$wiki->create_url({ action=>"NEW" }),998,1); } $wiki->add_menu("編集" ,"",997,1); if($wiki->{storage}->backup_type eq 'all'){
お試しください。
- 便宜上、本家サイトには当修正を適用しておきます。 - KG (2018年08月16日 19時50分56秒)
- 今のところコミット予定はありません。 - KG (2018年08月16日 19時53分19秒)
- 3_6_5では、サイドメニューは表示されないということですか?表示する方法があれば、教えていただきないです。 - cadp (2019年02月19日 16時11分47秒)
- PCを更新してActivePerl[5.26.3.2603]をインストールしたら、FSWiki3.6.4は動作せず、FSWiki3.6.5は動作しました。ActivePerl[5.24.2.2403]をインストールしたらFSWiki3.6.4が動作しています。 - cadp (2019年02月19日 17時19分33秒)
- FSWiki3.6.4以前は古いバージョンのPerlの仕様に基づいて作成されていた為、FSWiki3.6.5にてPerl5.26以降対応(実際にはもう少し古いPerlバージョンでもOK)を行っております。FSWiki3.6.4に対するPerl5.26対応修正後にコミットしていますのでレポジトリからダウンロードすることは可能ですが、修正点が多岐に渡りますので可能であれば FSWiki3.6.5以降をご使用ください。 - KG (2019年02月20日 13時10分45秒)
- なお、FSWiki3.6.5でサイドメニューが表示されないというわけではありません。モバイル用・スマートフォン用の標準テンプレートにおいてはサイドメニューが表示されない為、上部メニューにMenuページへのリンクを追加しようというのが上記修正点になります。標準テンプレート以外を使用されている場合はこの限りではありません(各投稿済みテンプレートの仕様次第となります)。 - KG (2019年02月20日 13時18分43秒)
カート機能の実現 - taka (2018年08月15日 23時32分36秒)
3.6.5でゲームに関するサイトを作成しています。例えば以下のようなページに、「カートに追加する」といったボタンを追加して、任意のアビリティを選択後に、外部のCGIにIDをまとめて送信したいのですが、実現できる方法、参考になるプラグイン等があれば、教えていただけませんでしょうか。
[https://3594battle-mobage.mydns.jp/wiki/wiki.cgi?page=%C1%AE%B8%F7%B7%E2]
- IDと言うのはWikiへのログインIDですか? もしくはアイテムIDやアビリティIDの様なものかな? おそらく、外部CGIに向けたリクエスト送信用ボタンということですかね?で、パラメータでID指定できる様にしたいという事であってますか? - KG (2018年08月16日 01時28分23秒)
- コメントありがとうございます。IDはアイテムIDやアビリティIDのことです。複数のページを回ってIDを選んで行って、外部CGIに渡したいです。CGIとの連携はformプラグインを想定しています。 - taka (2018年08月16日 06時26分12秒)
- formプラグインですか。使ったことはないのですねぇ。。。というのもこの手のプラグインは拙作のレイアウト・プラグインでまかなえてしまいますので、テンプレートを作成してパラメータ条件を定義してしまうとテンプレート内にHTMLとしてある程度は自由に作成できますので・・・例えば{{layout テンプレート名,id:xxxx}}みたいな書式だけでボタンを配置することも可能です。 - KG (2018年08月16日 13時13分24秒)
- テンプレート内にJavaScriptを記述することもできますので、外部APIとの連携なども実装次第では可能になるかと思います。 - KG (2018年08月16日 13時18分37秒)
- あ、layoutプラグインの書き方ですが、、、{{layout ....の場合はブロック型プラグインとなりますので、}}は改行する必要があります。1行で記述したい場合は{{ilayout ...}} という記述方法を使用します。 - KG (2018年08月16日 18時20分13秒)
- ilayoutはインライン型として登録されていますが、インライン型かパラグラフ型かの違いは出力されるHTMLによるものなのでテンプレートの記述次第ということになります。その為、使用時の柔軟性の高いインライン型として登録してあります。 - KG (2018年08月16日 18時23分28秒)
- ありがとうございます。インライン型で試してみましたが、実現できそうです。 - taka (2018年08月16日 19時17分09秒)
リスト番号の継続 - cadp (2018年08月10日 11時56分01秒)
"+"で作成するリスト番号を見出しを超えて、上部から継続する方法はありませんか?よろしくお願いします。
- 標準機能としては開始番号指定の機能を実装していない為、実現出来ません。 - KG (2018年08月10日 23時05分44秒)
- 了解しました。回答をありがとうございました。 - cadp (2018年08月15日 19時32分48秒)
- レイアウト・プラグイン を使用して上記機能を実現させてみました。テンプレートはこちら - KG (2018年08月16日 19時40分54秒)
- レイアウトプラグインで指定したオプション(start属性)をJavaScriptを使用してolタグに対して設定するという処理を行っています。 - KG (2018年08月16日 19時43分10秒)
- インストールしてみました。成功しました。ありがとうございました。。ちなみに"+"では成功するのですが、"++"では開始番号指定が聞かないようです。何か対応策はありますか? - cadp (2018年09月07日 03時54分53秒)
- 上記対応の為、修正しました。テンプレートはこちら - KG (2018年09月07日 11時52分44秒)
- 確認しました。ありがとうございました。 - cadp (2018年09月17日 14時51分25秒)
BugTrack-plugin/157について - MRB (2018年07月31日 21時55分49秒)
BugTrack-plugin/157で、今更で恐縮なのですが、3.6.5でつかうと、includeしたものがpタグで囲まれます。
<p>includeした先のHTML</p>
という出力になる、ということです。
このpタグの出力を回避する方法はあるでしょうか? blockプラグインにカスタマイズすればdivになる(訂正:間違っていました)ので、pよりはマシにはなるかな、とは思うのですが。。。
- もういっそのこと、CSSで全体のPタグをp { margin: 0; padding: 0; }としてしまうのはどうでしょうか - たった (2018年08月02日 15時16分19秒)
- 今、確認している最中なのですが、3.6.4でも同様になりますね。<p>が付かないのはどのバージョンなんでしょうか? - KG (2018年08月02日 15時25分01秒)
- 3.6.3でも同様です。インラインとはいえそれ単体での利用であれば同様に<p>でくくられると思います。例えば、文章の途中にinlucde_htmlを記述するなどの利用においては<p>タグは付かないので、仕方のないところではないでしょうか? - KG (2018年08月02日 15時38分29秒)
- あとは、邪道的な対応としてはJavaScriptで直前の<p>タグを削除するくらいですかねぇ…include_htmlで出力されるHTMLを特定のクラス付き要素でくくっておいて<p>タグの外側に移動させて<p>タグを削除するみたいな感じですかねぇ - KG (2018年08月02日 15時44分05秒)
- すいません、書き方が悪かったです。。。試したのが3.6.5、ということで、以前のバージョンでは試していなかったです - MRB (2018年08月02日 19時39分01秒)
- 一応、JavaScriptで対応するためのコードです。include_html プラグインで使用するHTML記述のページでは全体を class='include_html' を含むタグでくくっておく必要がありますので、ご注意を。 - KG (2018年08月02日 19時40分33秒)
document.querySelectorAll('.include_html').forEach(function(e){ var p = e.parentNode; var d = p.parentNode; if ( p.firstChild == e) { d.insertBefore(e, p); p.remove(); } });
- ありがとうございます!! …パラグラフプラグイン版に改変したもの作っちゃいました。せっかくなので添付しておきます。パートごとの読み込みは個人的に不要なのでコメントアウトしていますが、必要な方はコメント外してください - MRB (2018年08月02日 19時44分11秒)
- Chromeでテストしたところ<div class='include_html'> とDIVタグでくくった場合はダメっぽい。そもそも<p>タグの外に移動させられているw。Pタグ内にブロック要素が置けないからでしょうね。ソース上は入れ子になっているのですが・・・IEは・・・多分入れ子にするんだろうなw - KG (2018年08月02日 19時44分16秒)
- とりあえず、解決しているようですね。よかったです。 - KG (2018年08月02日 19時46分08秒)
- 質問の意図を外した回答になってしまってましたけど、自分はこの問題を先に上げたCSSで対応していたのですが、無事解決されたみたいで良かったです。せっかくなので有難くDLして拝見させて頂きます!ありがとうございます! - たった (2018年08月03日 16時18分41秒)
プラグインの両立 - 米澤 (2018年05月21日 13時04分02秒)
FreeStyleWiki3.6.4 で、naviview プラグインを使わせていただいています。プラグイン設定から、_ex_block 複数行プラグインサポートの為の拡張を有効にすると、ナビが消えて、「naviviewプラグインは存在しません。と表示されてしまいます」なんとか両方とも使える方法はありませんか? よろしくお願いします。
- fswiki3.6.4では複数行プラグインをサポートしている為、本来は_ex_blockプラグインは不要です。以前の_ex_blockを使用している一部のプラグインにおいては_ex_block機能縮小版を必要とするものがありますので、まずは _ex_block プラグインを外して、実行してみてください。複数行プラグインで動作しないものがありましたら、リンク先の縮小版の方に置き換えてください。 - KG (2018年05月21日 14時25分36秒)
- BugTrack-plugin/203にて機能縮小版を公開しました。(自サイトのモノと内容は同じ) - KG (2018年05月21日 14時36分26秒)
- さっそくのお答え、ありがとうございました。 - 米澤 (2018年05月21日 14時56分41秒)
- うまくいきました。m(_ _)m - 米澤 (2018年05月21日 14時57分27秒)
FSWiki 3.6.5 Apache2 のエラーメッセージ - れおまる (2018年05月07日 16時46分54秒)
Apache2 のエラーメッセージに以下が記録されます。
CGI::param called in list context from lib/CGI2.pm line 106, this can lead to vulnerabilities. See the warning in "Fetching the value or values of a single named parameter" at /usr/share/perl5/CGI.pm line 412.
wiki3_6_5.zip を展開して、setup.sh を実行した状態のログです。
使用環境は Debian 9 です。
$ /usr/sbin/apache2 -v Server version: Apache/2.4.25 (Debian) Server built: 2018-03-31T08:47:16
- CGI2.pmに下記を追加することで、エラーは回避できるかと思いますが、如何でしょうか - たった (2018年05月07日 18時21分30秒)
use vars qw(@ISA); use strict; @ISA = qw(CGI); +$CGI::LIST_CONTEXT_WARN = 0; #============================================================================== # コンストラクタ #==============================================================================
- 上記、記述をわかりやすく修正させていただきました。たったさんのご指摘通りの修正にて警告は回避できます。根本的な対応としては現在検討中です。 - KG (2018年05月07日 18時51分23秒)
- 正式採用するかどうかはわかりませんが、下記のように対策を検討しています。 - KG (2018年05月07日 20時36分03秒)
--- lib\CGI2.pm~ 2017-11-30 16:06:48.000000000 +0900 +++ lib\CGI2.pm 2018-05-07 20:33:06.000000000 +0900 @@ -100,13 +100,18 @@ } } else { return map { &Jcode::convert(\$_, "euc") } $self->CGI::param(); } } else { if(defined($name)) { - return $self->CGI::param($name, $value); + if(CGI->can('multi_param')){ + my @values = $self->CGI::multi_param($name, $value); + return $#values > 0 ? @values : $values[0]; + } else { + return $self->CGI::param($name, $value); + } } else { return $self->CGI::param(); } } }
- 対策と言うより回避策にしかなりませんけどね。 - KG (2018年05月07日 20時48分56秒)
- 有難うございます。お陰様でエラーメッセージは、無くなりました。 - れおまる (2018年05月08日 20時06分02秒)
- perl 5.30.3 でも上記で警告が出なくなることを確認致しました。もしよろしければ、git repository にもご反映頂けますと幸いです。 - Zak (2020年11月02日 20時21分47秒)
- Zakさん検証ありがとうございます。時間がとれる時にコミットしておきます。 - KG (2020年11月07日 03時04分04秒)
- ZAP - ZAP (2022年06月20日 01時40分04秒)
FSWiki 3.6.5 (and 3.6.4) using perl 5.26 - Zak (2017年11月23日 16時28分10秒)
FreeStyleWikiの SVN コードリポジトリ https://svn.osdn.net/svnroot/fswiki/ の r149 でしか試しておりませんが、以下の修正を行うことで動作するようになりました。( 3.6.4 等に対しても有効と思われます。)
修正方法:
fswiki/lib/Wiki/Parser.pm 中の {{ を \{\{ に変更。 ただし、そのファイル中の ------- push @parsed, '{{'; ------- となっている行の {{ は変更してはなりません。
なお、wiki で作成した文章を[保存]すると以下のようなエラーが出ますが、ブラウザで戻って[一覧]をクリックすると正しく保存されていることを確認できます。
Software Error: Can't call method "hook" on an undefined value at lib/Wiki.pm line 376.
ちなみに、このエラー表示は perl の param() call の出力がコンテキストにより scalar にも array にもなり得るため、scalar を想定して書かれたスクリプトに対して array が来た場合などにおいて脆弱性や不具合などにつながる可能性があることに起因しておりますので、FSWiki の hook 処理や param() の出力を利用する処理を修正することで直ると思います。
- これ、修正対象は Parser.pm の方ですね。貴重な情報をありがとうございます。 - KG (2017年11月24日 13時35分12秒)
- 当情報による修正点を他のファイルも含め本体に取り込みました。r150 - KG (2017年11月30日 18時04分03秒)
bbs2プラグインを使った投稿でのページ閲覧権限について - とも (2017年10月13日 04時43分05秒)
ページの閲覧は「誰でも可能」、ページの作成・編集権限は「ログインユーザーのみ可能」、ページの参照権限のデフォルト値は「ログインユーザのみ可能」に設定しています。投稿専用ページにbbs2プラグインを実装して、ユーザーのみ投稿可能、掲示板の閲覧は「誰でも可能」にするにはどうしたらよいでしょうか。
- 私もそれやりたかったんですが、いまは手動で変更しています。やれるのかな? - ふる (2017年10月14日 19時33分48秒)
- 随分と経ってしまいましたが、、、、bbs2プラグインではそういった細かいアクセス制限はできないので、他のプラグインと組み合わせるといいかもしれません。例えば、ログインしていない場合は投稿フォームを隠す・・・など。ログインユーザーのみ表示可能なページに投稿フォームを作成し、includeプラグインで閲覧可能なページに挿入すれば可能だと思います。no_list オプションと bbs2listを使用する必要があります。また、拙作のレイアウトプラグインでログイン状況を条件指定可能な機能がありますのでそれを条件としたテンプレートを作成すればログイン時のみ表示するといった制御が可能です。:-) - KG (2017年11月14日 13時28分50秒)
BugTrack-plugin 160 について - guests (2017年07月22日 04時37分38秒)
BugTrack-plugin/160 にコメントできなかったのでこちらで・・・
div_beginでたとえばclass=”foo bar”(実際は半角)のように複数クラスを設定すると動作が不正になります。今更ですけどどなたか改修方法わかるでしょうか
- このページBBS-サポート掲示板/730とか参考になりそうな - 名無しさん (2017年07月24日 14時31分23秒)
- とりあえず common.pm への簡単な修正点です。あまり複雑なチェックではないので動かなければあきらめてください。 - KG (2017年07月24日 19時02分51秒)
@@ -9,9 +9,13 @@ { my ($valid_attr_list, $attribute) = @_; my $output_attribute; + my $s = ''; #安全そうな属性だけを選んでその属性だけを活かす foreach(split(/ +/, $attribute)){ + if (/\w+=["'][^"']+$/) { $s .= $_.' '; next; } + if ($s ne '' && $_ !~ /^[^"']+["']$/) { $s .= $_.' '; next; } + $_ = $s.$_; $s = ''; #「=」の存在する属性は有効な属性であるかチェックし、危険そうな文字列が無いかもチェックする。 #「=」より後ろの文字列をサニタイズする。また引用符で囲まれていなければ囲む。
- class="foo bar baz" title="div tag title desu." などの指定もできると思います。 - KG (2017年07月24日 19時05分49秒)
rawプラグインは何処にありますか - k-inoue (2016年11月17日 13時18分02秒)
Ver3.6.4を使用しています。rawプラグインが見当たらないのですが、Ver3.6.5からでしょうか。
- fswiki3.6.5で実装されているRAWプラグインを添付(fswiki365-plugin-core-raw.zip(369))しました。core フォルダに導入してください。Install.pm もRAWプラグインを含んだものに置き換わります。 - KG (2016年11月18日 14時49分19秒)
Windows10でのFSWikiの設置について - べ。 (2016年08月14日 23時11分17秒)
過去にWindows7およびWindows8のマシンにおいて,自分のPCに自分用のFSWikiを立ち上げ,いずれもWindows10にアップデートした際に多少問題はありましたが,きちんと動作していることを確かめているのですが,今回,新規のWindows10のマシンで立ち上げようした際に下記のエラーメッセージが表示され困っております.
500 Internal Server Error The server encountered an internal error or misconfiguration and was unable to complete your request.
- 環境
- FSwiki3.6.2
- Windows10
- Active Perl 5.24: ActivePerl-5.24.0.2400-MSWin32-x64-300558.zip
- Apache 2.2: httpd-2.2.25-win32-x86-no_ssl.msi
用途は個人用です.
Apacheのerror.logでは下記のようなエラーメッセージが出ております.
[Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] Premature end of script headers: wiki.cgi [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at lib/CGI.pm line 365.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] Compilation failed in require at lib/CGI2.pm line 7.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at lib/CGI2.pm line 7.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] Compilation failed in require at lib/Wiki.pm line 8.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at lib/Wiki.pm line 8.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] Compilation failed in require at C:/usr/Apache2/cgi-bin/wiki.cgi line 28.\r [Sun Aug 14 22:54:24 2016] [error] [client 127.0.0.1] BEGIN failed--compilation aborted at C:/usr/Apache2/cgi-bin/wiki.cgi line 28.\r
ちなみに,自分で作成したhello.cgi(helloを表示させるcgi)も動き,setup.cgiを使ってsetup使用としても問題なく動いております.また,今回使っているfswiki,cgiはこれまでWindows7やWindows8で動作を確認しているものをつかっています.
何かインストールしなければならないものがあれば教えていただけませんでしょうか.
- Perl v5.22 以降で発生するエラーが表示されているようですが、古いバージョンのCGI.pm を libフォルダ配下に置いていませんか? - KG (2016年08月16日 22時13分53秒)
- KGさん,返信ありがとうございます.確かにCGI.pmは古いものでした.これを機に3.6.4にバージョンアップしてみたら,きちんと動作するようになりました. - べ。 (2016年08月17日 17時28分54秒)
引っ越しに際して - たてやま (2016年07月28日 17時27分43秒)
最近、サーバーの引っ越しを任され、行っていて問題が発生したため質問させていただきます。よろしくお願いします。
10年ほど前に、デスクトップのMacにFreeStyleWikiをインストールし、長年Webページを公開していました。そして最近、マシンの老朽化に伴い、新たなMacのデスクトップを用意し、Apache等の設定を行い、FreeStyleWikiも引っ越しを行いました。具体的には、scpコマンドを用いて、旧サーバ上のWebページのディレクトリをそっくりそのまま新サーバへコピーしました。
ですが、コピーしただけではInternal Server Errorを起こしました。Apacheのエラーログを確認して、「lib/CGI内にUtil.pmが見当たらない」、「lib/CGI内にCoockie.pm」が見当たらない」などのエラーが出ていたので、/Library/Perl/5.18/CGI などから(多分)同じファイルを持ってきて、パーミッションを変更したところ、Internal Server Errorは出なくなりました。
しかし、Webページ内のページ移動のボタンを押しても、「不正なアクションです」というメッセージが出て、何もできません。 Webページには、自己紹介ページ、BBS、ファイル置き場などがあるのですが、そのどれもが上記のようなメッセージを出すだけで、機能していません。Webページ内に貼ってある、他のWebページヘのリンクは、無事に飛ぶことができます。
足りない情報などは、追記していきます。アドバイスをよろしくお願いします。
- とりあえず、「不正なアクションです」をこのWikiサイトで検索してみてはどうでしょう。 - きよ (2016年08月02日 16時53分27秒)
- 「Webページ内のページ移動のボタン」ということはプラグイン起因のエラーですかね。 本体のコードから「不正なアクションです」のエラーを文字検索して原因を類推してみるのも手ですね。 - 名無しさん (2016年08月05日 17時08分38秒)
- 不正なアクションです、でWikiサイト内検索し、調べてみましたが、解決に繋がりそうな前例はありませんでした...。 - たてやま (2016年08月09日 15時58分19秒)
- 上記情報だけでは判断しかねます。まずはFSWikiのバージョンとperlのバージョンを教えてください。また、apacheのエラーログには他のエラーメッセージは表示されていないということでしょうか? - KG (2016年08月12日 12時58分11秒)
- Perlのバージョンは5.18ですか?旧サーバーでのバージョンが分かるようでしたらそれも教えてください。新サーバーへ以降の際にfswikiのバージョンアップ等は行っていないということですよね? - KG (2016年08月12日 12時58分48秒)
- キャッシュの削除はしましたか - 名無しさん (2016年12月09日 14時58分22秒)
FTPでdataディレクトリのwikiファイルがダウンロードできない - GW (2016年04月29日 14時22分23秒)
失礼します。FTPの使い方の問題であって、FSWikiの質問ではないかもしれませんが、ご存知の方いらっしゃいましたら教えてください。
10年ほど前にWAKWAKサーバに FreeStyleWiki3.5.10を入れました。最近になって、テーマを切り替えようとしたらサーバの環境が変わったのか、いつの間にかテーマ切り替えのところでエラーになるようになりました。そこで、これを機に新しいバージョンのFreeStyleWiki(FreeStyleWiki3.6.4)を別ディレクトリにインストールし、古いディレクトリのdataの中身をダウンロードして移植しようと試みました。ところが、dataディレクトリ内の%つきのwikiファイルがコマンド: RETR ***.wikiレスポンス: 550 ***.wiki: Forbidden command argumentとなってしまい、ダウンロードできません。(SSHが使えれば圧縮しちゃおうと思ったのですがWAKWAKはSSH使えない)皆さんはどうやってダウンロードしていますか?
- サーバー側の問題のようなので他のFTPクライアントでも同じでしょうね。フォルダごと圧縮できるようなCGIを配置して取得する方が良いかもしれません。 - KG (2016年04月29日 20時24分35秒)
- お返事ありがとうございます。やはりCGIで圧縮する方が早そうですね^^;やってみます。 - GW (2016年04月29日 20時50分27秒)
[ 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秒