|
PukiWikiにTurnstileを導入してみた†
PukiWikiではこの頃、ボットによるスパムが目立つため、簡易的にCloudFlare Turnstileでスパム対策をしてみる。 GitHub - ikamonster/pukiwiki-turnstile: TurnstileによるPukiWiki用スパム対策プラグイン
![]()
Turnstileとは†Turnstileは、CloudFlareが開発するCaptchaの代用となる無料の認証である。 PukiWikiへの導入†PukiWiki用Turnstileプラグインの配布ページからturnstile.inc.phpを手に入れる。 上記の画像で赤く囲った場所「plugin」をクリックする。 「turnstile.inc.php」をクリックする。 #img(): File not found: blob:https://imgur.com/58fbe741-e2dc-4e41-80a3-9c7ec93a7547ダウンロードしたファイルをPukiWiki直下のpluginフォルダに入れる。 CloudFlareへログインする (アカウントを持っていないのであれば作る) 「サイト名」、「ドメイン」の入力欄を埋めてウィジェット モード(Widget Type)は、「不可視」(Invisible)を選ぶ。 ここで選択を間違えると動作しないので注意、間違えても設定から変更すること。 PLUGIN_TURNSTILE_SITE_KEYとPLUGIN_TURNSTILE_SECRET_KEYにそれぞれサイト キーとシークレット キーを入れる。 必要に応じて別の定数も変更できる。 スキンファイルであるpukiwiki.skin.phpを編集する。(デフォルトではskin/pukiwiki.skin.php) <?php if (exist_plugin_convert('turnstile')) echo do_plugin_convert('turnstile'); // Turnstile plugin ?>
</p>
</div>
+<?php if (exist_plugin_convert('turnstile')) echo do_plugin_convert('turnstile'); // Turnstile plugin ?>
</body>
</html>
次にPukiWiki直下のlibフォルダに入っているplugin.phpを編集する。 if (exist_plugin_action('turnstile') && ($__v = call_user_func_array('plugin_turnstile_action', array($name))['body'])) die_message($__v); // Turnstile plugin
if (do_plugin_init($name) === FALSE) {
die_message('Plugin init failed: ' . htmlsc($name));
}
+ if (exist_plugin_action('turnstile') && ($__v = call_user_func_array('plugin_turnstile_action', array($name))['body'])) die_message($__v); // Turnstile plugin
$retvar = call_user_func('plugin_' . $name . '_action');
// Insert a hidden field, supports idenrtifying text enconding
これで導入は完了だ。 コメント†コメントはありません。 Comments/blog/2023-10-01 [この日記を編集] |
|||||||||||||||||||||||||||||||||||||||||||||||||||
[もっと見る]
[もっと見る]