Боротьба зі спамом в wordpress за допомогою плагіна dcaptcha і файлу htaccess, як відключити кошик в

Боротьба зі спамом в WordPress за допомогою плагіна DCaptcha і файлу htaccess, як відключити кошик в Вордпресі

Боротьба зі спамом в wordpress за допомогою плагіна dcaptcha і файлу htaccess, як відключити кошик в

DCaptcha - абсолютний захист від спаму в WordPress

Крім того, спамери здатні досить серйозно навантажувати сервер хостингу, тому що всі згенеровані ними повідомлення записуються і зберігаються в базі даних до тих пір, поки ви їх не видалите. На тлі інших чинників, що створюють сильне навантаження на сервер хоста, це може стати останньою краплею і привести до блокування вашого ресурсу (читайте про оптимізацію вордпресс для зниження його навантаження на хостинг).

Тому я задумався над встановленням капчи. тобто спеціального WP плагіна, який дозволить залишати повідомлення тільки звичайним користувачам, але ріжучий спамерів, які в основному користуються програмним способом (хрумер і інший софт). Багато видів капч вже не є проблемою для таких програм. Однак, ще зустрічаються зручні капчи, які поки не навчилися обходити в силу їх складності, або в силу малого відсотка використання.

Крім проблеми обходу захисту багатьох капч спамерським софтом, деякі їх види, прагнучи домогтися максимальної складності розпізнання символів на що наводиться ними малюнку, створюють серйозну проблему для користувачів (ненавиджу вгадувати, що за буква там намальована).

Не всім відвідувачам і не завжди з першого разу вдається правильно розпізнати, що написано на тій чи іншій капчі. Вони зляться, плюються і більше не заходять на ваш блог (на одному з форумів я якось взагалі не зміг пройти капчу, ніж був дуже роздратований).

Вдалим прикладом, на мій погляд, є захист, що пропонує виконати найпростіші арифметичні дії з чітко зображеними цифрами і записати отриманий результат. Але ще більш простою і зручною для користувача є капча плагіна DCaptcha, де потрібно всього лише поставити галочку в полі «Я не робот». Напевно ви вже зустрічали такі варіанти.

У мене в даний момент встановлена ​​бета версія DCaptcha 0.2b, яка, тим не менш, працює на сто відсотків. За чотири роки не було жодного пробою! Я навіть забув, що таке спам! Краса, але думаю, що як тільки даний плагін отримає широке поширення (і я, як не прикро, сприяю цьому написанням даної статті), то спамери займуться їм всерйоз.

Тому нікому не розповідайте про це чудо - будемо користуватися ним нишком. Поки що це, напевно, ідеальна капча для WordPress.

Установка цього розширення трохи відрізняється від стандартної. Потрібно буде виконати наступні дії:

і внесіть потрібні вам зміни. Я, наприклад, зробив напис червоного кольору. Для цього потрібно буде всього лише додати в файл таблиці каскадних стилів CSS вашої теми оформлення wp-content / themes / названіе_вашей_теми_оформленія / style.css наступне властивість:

Напевно, багато хто з вас, дочитавши статтю до цього місця, вже встигли встановити і налаштувати це розширення.

Боротьба зі спамом в wordpress за допомогою плагіна dcaptcha і файлу htaccess, як відключити кошик в

При налаштуваннях за замовчуванням кошик буде очищатися раз на місяць. І потрібно розуміти, що вся інформація, що знаходиться в ній, фізично розміщується в базі даних вашого блогу, а значить спамние повідомлення будуть як і раніше створювати непотрібну додаткове навантаження на сервер хостингу. Але добре, що кошик в Вордпресс можна відключити або ж, якщо вона вам так потрібна, можна просто зменшити час зберігання інформації в ній. Але про це поговоримо в кінці статті.

До речі, саме починаючи з версії WordPress 2.9 плагін DCaptcha перестав відсікати спам. що для мене стало дуже великий і неприємною несподіванкою. У якийсь момент я необачно оновився до версії 2.92 і виявив, що стали з'являтися у великій кількості гидоти, від яких я вже встиг відвикнути.

На сайті розробника багато хто скаржився на непрацездатність цього розширення. Але, на жаль, вирішення даної проблеми там не доводилось. Тому я вирішив пошукати альтернативні способи боротьби, бо, як я вже говорив вище, перевірений часом Akismet мене не влаштовував по ряду міркування. Мені хотілося чогось такого ж радикального.

Боротьба зі спамом в Вордпресс за допомогою файлу htaccess

Перше, що я вирішив спробувати, це можливість блокування спам-ботів через «htaccess». Назва цього файлу починається з точки і якщо його в кореневій папці вашого хоста не виявиться, то слід обов'язково створити, бо можливостей у нього дуже багато і деякі з цих можливостей вам можуть знадобитися. Давайте я трохи розповім про фото «htaccess».

«Htaccess» призначений для, так званого, децентралізованого управління веб сервером Apache. Справа в тому, що в 99 відсотках випадків ваш проект буде розміщений на хостингу під керуванням сервера Apache. Можливості цього сервера усіма добре вивчені і до того ж він безкоштовний. Так ось, для того, щоб веб-майстер (ви), що не має доступу до важелів управління Apache, проте мав можливість управляти деякими аспектами роботи сервера і був придуманий цей файл.

Всі директиви (команди), що прописують в "htaccess, будуть застосовані тільки до вмісту тієї директорії (папки), в якій знаходиться даний файл. Отже, якщо ви створите в кореневій папці свого хоста« .htaccess », то зможете давати команди сервера Apache, які будуть застосовані до всього вашого сайту. Цей файл можна буде створити так само і в будь-яких інших директоріях движка і, наприклад, запароліть через нього доступ до цих каталогів.

Мало хто знає все директиви (команди) і правила їх написання в «.htaccess», але цього і не потрібно. Найчастіше вам потрібно буде тільки скопіювати вже готовий код з будь-якого прикладу і замінити в ньому дані на ті, що підходять вам.

Якщо файлу такого в Конєва папці WordPress ви не побачите, то можливо, що його там і немає, але спочатку вам потрібно буде в цьому переконатися. Для роботи з сайтом по FTP я використовую (та й вам теж раджу) чудову програму FileZilla (див. Посилання вище). Після підключення до свого хосту по FTP відкрийте кореневу папку (зазвичай вона називається або PUBLIC_HTML, або HTDOCS) і перевірте наявність в ній файлу «htaccess».

Якщо він там буде, то просто відкрийте його на редагування, а якщо ви такого файлу в кореневій папці не знайдете, то спробуйте в програмі FileZilla вибрати з верхнього меню «Сервер» - «Примусово відображати приховані файли». Якщо і після цього шуканого об'єкта в корені ви не знайдете, то створіть у себе на комп'ютері порожній текстовий файл, назвіть його як-небудь і скопіюйте на сервер хостингу. Після чого перейменуйте його в «htaccess».

Існує два способи блокування спам-повідомлень в htaccess. Я використовував такий код:

Другий спосіб блокування спамерів полягає в додавання в «htaccess» вмісту цього файлу з директивами, що дозволяють фільтрувати спам по ряду ознак. Сам я цей спосіб не пробував, бо зумів таки змусити працювати мій улюблений плагін DCaptcha під Вордпресс 2.92, про що зараз вам і розповім.

DCaptcha працює на сучасних версіях WordPress

Для того, щоб змусити DCaptcha коректно працювати на сучасних версіях WP, як виявилося багато не треба. Просто підключіться по FTP з сервера хостингу, де у вас розміщені файли вашого блогу, і відкрийте на редагування файл Dimoning.ru-captcha:

Знайдіть в ньому рядок:

і замініть в ній «delete» на «trash», щоб в результаті вийшло так:

Почнемо, мабуть, з другої частини питання. Порізані повідомлення, при тих налаштуваннях, що ми задали трохи вище, потраплять або в розряд «Спам» (в разі заміни «delete» на «spam»), або в розряд «Кошик» (в разі заміни «delete» на «trash» ).

Тобто виходить, що спам все одно записуватися в базу даних WordPress, але просто з позначкою. Чи легше нам стане від цього чи ні? З одного боку, звичайно ж, легше. Адже ми тепер сміливо зможемо, зайшовши в адмінку, очистити весь вміст кошика або спаму, не боячись видалити повідомлення від реальних читачів. Однак, весь цей мотлох буде створювати додаткову і непотрібне навантаження на сервер хостингу.

Навіть якщо ви вимкніть кошик в Вордпресі (про те, як це зробити можна прочитати в кінці статті), то все одно повідомлення спамерів все одно будуть в неї падати (хоча, її як би і ні). Це легко буде перевірити, включивши вимкненому раннє кошик (ви побачите в ній купу всього, що порізане плагіном DCaptcha).

Для того, щоб це все віддалялося відразу ж, минаючи базу даних, вам потрібно буде внести в код цього розширення дещо інші зміни, ніж були описані вище. Але якщо вам наплювати на навантаження на сервер хостингу, створювану спамерами, то описаний вище варіант вам цілком підійде.

Давайте, до речі, розберемося, чому не працює оригінальний код DCaptcha, який був в ньому за умовчанням:

Якщо ми звернемося до кодексу WordPress. то побачимо, що для цієї функції WP_SET_COMMENT_STATUS в нових версіях (починаючи з версії 2.92) вже немає такого значення «delete». На даний момент можна використовувати тільки значення: 'hold', 'approve', 'spam', or 'trash'.

Тобто видалити порізані плагіном повідомлення за допомогою функції WP_SET_COMMENT_STATUS ми вже не зможемо, як це можна було зробити за допомогою вибору значення 'delete' в старих версіях WP.

У версіях движка, починаючи з 2.92, ми можемо за допомогою функції WP_SET_COMMENT_STATUS тільки перемістити сміттєві повідомлення в кошик (вибравши значення 'trash'), або позначити їх як спам (вибравши значення 'spam').

Боротьба зі спамом в wordpress за допомогою плагіна dcaptcha і файлу htaccess, як відключити кошик в

Як відключити кошик в WordPress

Мені це здалося неприйнятним, бо головним завданням використання спаморезкі було не тільки позбавлення від сміття, а й зниження навантаження WordPress на сервер хостингу, яка створювалася потоком цього сміття. Тому я вирішив взагалі відключити кошик, бо її функції мною все одно були не затребувані. З адмінки відключити її не вийде, для цього буде потрібно внести зміни в конфігураційний файл під назвою WP-CONFIG.PHP.

Знайти його ви зможете в корені віддаленого хоста, підключившись на північ вашого хостингу по FTP. Відкрийте файл WP-CONFIG.PHP на редагування і додайте в нього рядок коду:

Якщо ви з яких-небудь причин не захочете відключати кошик в Вордпресс на зовсім, а тільки захочете зменшити час зберігання в ній записів, то вставте в WP-CONFIG.PHP наступний рядок коду:

де замість трійки ви можете поставити потрібну вам кількість днів, протягом яких корзина буде зберігати записи до їх видалення. Але я все ж вважав за краще взагалі відмовити від кошика.

Удачі вам! До швидких зустрічей на сторінках блогу KtoNaNovenkogo.ru

Схожі статті