Feature preview

Feature Introduction

Should comments and messages both have captcha, and how to arrange the anti-spam division of labor?

Comments and replies do not necessarily require captcha: Human verification only solves the problem of whether it is a real person submitting, and cannot prevent spam content sent by real people or bulk submissions through the API. The division of labor should be arranged in three layers, with human verification on the form side to prevent robots, sensitive word filtering and keyword replacement to prevent non-compliant expressions on the content side, limiting batch behaviors on the API side according to the call source and frequency, and finally, a layer of manual review of comments and replies.

Leave Message Management Comment anti-spamming reCAPTCHA

Feature Introduction

Should comments and replies require verification codes? How should the anti-spam workload be distributed? It shouldn't be a one-size-fits-all approach at the entrance. The captcha only answers one question - is this submission a real person's operation? It can stop robots that刷submit with scripts, but it can't stop manual advertisements from real people, and it can't deal with bulk submissions that bypass forms and directly call APIs.A reasonable arrangement is to add one layer of manual backup on top of three layers: use human-machine verification on the form side to block robots, use sensitive word filtering and keyword replacement on the content side to block non-compliant expressions, limit batch behavior on the interface side according to the source and frequency of calls, and finally, manually review the missed ones in the message list and comment list.

Each type of waste has its own entry

Waste submission is divided into three categories according to the motivation, and the entry for each category is different, so the disposal methods cannot be mixed.

The first type is script batch watering, characterized by high-frequency submission of the same template text, regular submission intervals, missing accounts, or using newly registered email addresses. This type of entry is a public form interface, and human verification is effective for it.The second category is manually published promotional content, characterized by copy containing contact information, external links pointing to irrelevant site topics, and repeated comments across multiple articles by the same account.This type of submission passed the human-machine verification, the form side cannot stop it, and it can only rely on the word list and rules on the content side. The third type is programmatic invocation, bypassing the page and directly requesting the interface, submitting dozens of times at a time, the feature is that the request path does not have the page source and the frequency is far beyond the normal reading speed.This layer does not check human verification nor completely rely on the word list; it needs to consider the source and frequency control on the interface side.

Where should reCAPTCHA be placed

The position of reCAPTCHA such captcha should be placed at the 'submit action' step, not at page loading. Placed at loading, the real user is asked again, and the script can get the pass credentials to submit again, and the cost is misplaced.

Configure separately when evaluating entry points: The comment form is usually publicly accessible, does not require login, and is also the most easily flooded entry point, worth enabling; After logging in, if there are user groups and permission restrictions on comments, you can first only use word table filtering, observe the proportion of blocked ones for a period of time before deciding whether to add a captcha.Before opening, there is an additional cost to consider - a third-party anti-spam service charged by subscription tier, the tier is divided by the number of determinations and the number of sites, taking the common public tier of Akismet as an example, the tier of 500 determinations per month is $9.95, charged annually and covers only 1 site, and the cost will be recalculated according to the number of sites when multiple sites are connected, rather than copying the price of a single site.

The division of labor between the comment list and comments

Comments and comments are two types of objects in the background, with different processing rhythms. Comments are attached to specific content, with a large number and short context, which is suitable for first going through machine rules and then sampling for manual review; messages are usually listed independently, with fewer items but higher information volume per item, which is more suitable for entering the pending release status and being confirmed by manual work before being released.

The content side of this layer is responsible for whether there is 'illegal content': the sensitive word filtering is responsible for intercepting or marking the submission of hit words, and the keyword replacement is responsible for changing part of the expression into a neutral writing style and then allowing it to pass. Both are configured in the content review phase and take effect after submission, so no matter whether there is a captcha or not, it must be retained. In other words, the captcha manages 'who is submitting', and the word list manages 'what is submitted', and the two layers do not solve the same problem.

Don't treat the captcha as a single gate

Level Mainly拦 Location of effectiveness Safety net after escaping
Human verification Script batch submission Form submission action Transfer to manual review queue
Sensitive word filtering and keyword replacement Non-compliant expressions, promotional copywriting Before content is stored in the database Content review驳回
Interface side restriction Bypassing the programmatic call of the page When the request enters Tightening according to source and frequency
Manual review Low-quality content posted by real people Before and after release Can be recovered after moving to the recycle bin

There is a common misconception in the ranking method: only enable captcha, treating the word list as an old feature that can be ignored. Real people manually posted advertisements can pass the captcha smoothly, and at this time, the only means of disposal that can still work are the word list and manual review. It is impossible for manual review to go through the comments of high-traffic sites one by one. On the contrary, if only the word list is used without verification, garbage will still enter the database, just from 'visible' to '待清理', the operation cost will be higher.

Common questions

Do all forms need to enable reCAPTCHA?It's not necessarily so. Open, no login, and forms that have been spammed should be enabled first; for entries with existing login and user group restrictions, it is recommended to observe them first based on word lists and frequency restrictions, and supplement them if the spam records are obvious.

Should comments and replies follow the same set of rules?The actions for handling can be shared, but the publication rhythm should be separated. Replies should be manually confirmed item by item, and comments should be filtered in batches according to rules and then reviewed by sampling.

What should be done for the ones that have already been spammed?First, delete the low-quality content in batches, note that deletion is moving to the recycle bin instead of physical deletion, accidental deletion can be recovered; then go back and supplement the word table and interface restrictions to avoid duplicate submission of the same batch of scripts.

Is it enough to connect a third-party anti-spam service?Not enough. The third-party service determines the probability of spam, which does not cover the unique compliance word requirements of this site, and the level of sensitive word filtering and keyword replacement still needs to be matched within the site.

Related functions

Preview

With more and more content on the corporate official website, should the on-site search be planned separately?

The signal for a separate planning of in-site search is that navigation can no longer bear the search needs: the classification hierarchy has deepened, the types of content have increased, and users come with specific words. There are a total of 14 modules related to collection and search in the AnQiCMS backend, including full-text search, and they are also in the same management capabilities as llms.txt, keyword library, and custom content model. This article explains what scale needs to be separately configured for search, how search terms and keyword libraries should cooperate, and whether custom fields can be included in the search scope.

Preview

Should the email reminder and email subscription be opened together, and how to configure the notification chain to not disturb people?

Email reminders are for events facing site administrators, and email subscriptions are for regular updates of site content. Both have different links and switches should be separated. This article explains how to converge the reminder scope by event type, how to reduce duplicate notifications by the review process of comments and messages, and how to coordinate with form-side verification measures to avoid disturbing operations and subscription users at the same time.

Preview

Set different visible content for different member groups, and make the granularity of permissions as fine as possible.

The granularity of visible content for membership groups should not be set to article control from the very beginning. First, define user identity by grouping dimensions, then divide the visible range by columns or content types, and only descend to fields and individual articles when there are indeed commercial differences. The finer the granularity, the higher the maintenance cost and the probability of misrelease, and the recycling bin and draft status are the bottom line means after the match is wrong.