【Tips】


 Moyukuの関するTipsを掲載しています。Moyukuと(SS)C-BOARDのFAQなども参考にしてください。


■Moyukuを軽快に動かす

 1.キャッシュを有効にする
 2.シンプルスキンを使用する
 3.未読表示を無効にする
 4.閲覧数表示を無効にする
 5.各種ランキングを無効にする

 以上の5つが最優先事項です。
 稼動しているサーバーの負荷と、ネットワークの負荷を大きく低減できます。


■スパム投稿対策フィルター機能の調整

 Moyukuに実装されているスパムフィルターは、主に以下の5つの機能によって成り立っています。

1.ユーザーエージェントでアクセスを禁止
 主に、検索エンジンなどのクローラー対策用です。
 初期設定では、試験用のユーザーエージェントが設定されています。

2.ブラック・リストでアクセスを禁止
 スパム投稿業者と判断されている投稿元をホスト名などでブロックします。
 初期設定では、主に悪質な海外の業者が設定されています。

3.グレイ・リストで投稿内容を制限
 スパム記事投稿に使われることの多いホスト名の、投稿内容を制限します。
 初期設定されているホスト名の中には、国内の有名なプロバイダの一部が含まれます。

4.禁止語句
 投稿記事に含まれる語句で判定し、投稿をブロックします。
 初期設定では、スパマーなどが使用することの多い特定語句と、ウイルス埋め込みなどへの対策を含んだ語句を設定しています。

5.投稿記事内容によって判定
 海外からのスパムや、出会い系のスパムなどを投稿内容のパターン(記事に含まれるURL数など)から判定します。

 セットアップ画面でスパムフィルターの適用レベルが選択可能です。「最小」を選ぶことで、上記の各制限を弱めることができます。
 またスパム投稿対策フィルターの働きは、app/lib/filter.plに記載されているブラックリスト・グレイリスト・投稿禁止語句リストの設定を変更することで、細かに調整することができます。
 稀に、Moyukuの設置者自身が使用する回線プロバイダのホスト名が、グレイリストに記載されている場合があります。投稿の際に制限がわずらわしい場合には、スクリプトファイルの上部にグレイリストが表記されていますので、そこから該当するホスト名を削除して、上書きください。


■記事本文へのURL投稿を禁止にする

 セットアップ画面で、投稿の禁止語句に「http:」などを設定すると、投稿の際にホームページの項目が入力できなくなります。これは禁止語句のチェックが、ホームページのURLにも適用されるためです。
 Moyukuでは、標準の投稿確認機能とスパムフィルター機能により、URLの本文への書き込みを禁止しなくても、全く問題なく運用できるようになっています。
 それでもURLの書き込みを禁止にしたい場合は、スパムフィルターの投稿禁止語句の設定に「http:」などを加えることで、制限を実現できます。


■留意事項の内容を編集する

 留意事項の内容は、主に app/cmd/inform.plに記述されています。
 プログラムを含んではいますが、かなりの部分がHtmlで記述されているので、文言やデザインの変更などならばプログラミングの知識がなくても可能です。


■データなどのディレクトリのパスを変更する

 app/commander.plの25〜32行あたりに、各ディレクトリのパス設定があります。
 CGIの実行できるディレクトリが限られているサーバ環境などは、こちらを使ってパス設定を変更してください。その場合は、brd・public・tmpの3つ(場合によってはskinも)について、正しい位置にファイルをアップロードしてパス設定を変更します。


■1MB以上のファイルを一度にアップロードする

 Moyukuでは、セキュリティ上の制限で一度に1MBを超えるファイルをアップロードできなくなっています。
 app/commander.plの30〜35行あたりに、関連のシステム設定値「max_input」がありますので、それを変更することで、制限を変更することが可能です。


■通知メールの内容を変更する

 app/lib/mailer.pl内のメール用フォーマットを変更することで、通知メールの内容を編集することができます。
 以下の変数が利用できます。

○管理者宛メール
$agent
投稿した人のブラウザ情報。
使用しているソフトウェアの名前、プラットフォームなどなど。
$body
投稿した文章
$date
投稿した日付
$email
投稿した人の電子メールアドレス
$file
添付ファイルがあった場合は、そのファイル名
$follow
返信だった場合、返信した記事の番号
$genre
ジャンル名(ジャンル名の前後のカッコは自動添付です。)
例:【ジャンル名】
$body_color
本文色
本文色が選択されなかった場合、空白。選択された場合、body_color1〜body_color5。
$host
投稿された場所です。ドメイン名かIPアドレスが入ります。
どちらが入るかは、設置したプロバイダーによって変ります。
$ext_host
上記の情報に加えて、プロキシ経由の環境変数を含めます
ただし、ウェブサーバがその情報を取得できるようにしている必要があります。
$addr
投稿者のIPアドレスです。
$inform_mail
投稿した人が、その記事に対して返信があったらメールを送るようになっているか?
いらない=0, 欲しい=1
$inform_text_mail
投稿した人が、その記事に対して返信があったらメールを送るようになっているか?
(「管理人が管理人通知メールを未使用に設定」/「投稿者がメールアドレスを未入力」/ 「投稿者がレスお知らせメールを希望に指定」/「投稿者がレスお知らせメールを不要に指定」)
$mail_mode
投稿した人の、電子メールアドレスの様式
0=表示, 1=匿名, 2=非公開
$mobile
携帯電話からだったら、1が来ます
$name
投稿者の名前
$no
投稿記事番号
$page
投稿記事のURL
$subject
題名
$time
投稿された時間
グリニッジ標準時の1970年1月1日0時0分0秒からの秒数です。
$tree
ツリー番号
$web
投稿者のウェブサイトのURL
$user_id
ID
Cookieに保存し、ユーザーを識別するID
$ident
識別番号
$key_org
ユーザのパスワード(非暗号化)
※使用した場合、セキュリティが低くなるので注意。
$key_val
ユーザのパスワード(暗号化済)
※暗号化されているのでセキュリティは高いが使途不明。
○管理者宛メール(削除)
$no
削除記事番号
※記事管理画面から記事削除した場合は、「ツリー番号-削除記事番号」の形式となります。ツリー削除した場合はブランクとなります。
$page
投稿記事のURL
※記事管理画面からツリー削除した場合は意味のないURLとなります。
$tree
ツリー番号
※記事管理画面から記事削除した場合は、ブランクとなります。
$name_d
削除者の種類(投稿者/管理人/管理人(記事削除専任))
$agent
投稿した人のブラウザ情報。
使用しているソフトウェアの名前、プラットフォームなどなど。
$host
投稿された場所です。ドメイン名かIPアドレスが入ります。
どちらが入るかは、設置したプロバイダーによって変ります。
$addr
投稿者のIPアドレスです。
○通知メール
$body
投稿した文章
$date
投稿した日付
$email
投稿した人の電子メールアドレス
$file
添付ファイルがあった場合は、そのファイル名
$genre
ジャンル名(ジャンル名の前後のカッコは自動添付です。)
例:【ジャンル名】
$body_color
本文色
本文色が選択されなかった場合、空白。選択された場合、body_color1〜body_color5。
$name
投稿者の名前
$no
投稿記事番号
$page
投稿記事のURL
$subject
題名
$tree
ツリー番号
$web
投稿者のウェブサイトのURL