základ données WordPress je jako mozek pro celý váš web WordPress, protože je tam uložena každá jednotlivá informace, což z něj dělá oblíbený cíl hackerů. A hackeři provozují automatizované kódy pro injekce SQL.
No, bohužel spousta lidí zapomíná změnit základní předponu z données když si nainstalují WordPress. To zjednodušuje úkol pro hackery, protože mohou plánovat masivní útoky na „ wp_ ". Nejchytřejší způsob ochrany databáze données Toho dosáhnete změnou předpony vaší databáze, což je během instalace opravdu snadné.
Změnu předpony databáze na WordPress však vyžaduje několik kroků, zejména pokud již běží.
Příprava
Než začnete dělat cokoli, doporučujeme vám zálohovat databázi WordPress. Je důležité, abyste si své stránky denně zálohovali, doporučujeme plugin „ BackupBuddy " udělat to. Další věc, kterou vám doporučujeme, je přesměrovat vaše Návštěvníci na stránku dočasné údržby.
Upravte wp-config.php
Otevřete svůj soubor „wp-config.php“, který se nachází v kořenovém adresáři vašeho ubytování WordPress. Upravte řádek předpony databázové tabulky pomocí „wp_a123456_“ nebo jakýmkoli jiným výrazem dle vašeho výběru, který považujete za složitý (bez speciálních znaků).
Tento řádek by měl vypadat asi takto:
$ Table_prefix = 'wp_a123456_';
Změňte všechny názvy tabulek v databázi
Musíte přistupovat k databázi (s největší pravděpodobností phpMyAdmin), pak změňte názvy tabulek na ty, které jsme zadali v souboru wp-config.php. Pokud použijete a ubytování S cPanel můžete najít odkaz phpMyAdmin ve vašem cPanelu, podobně jako na následujícím obrázku:
Existuje celkem výchozích tabulek WordPress 11, změna všeho ručně bude velmi bolestivá.
To je důvod, proč dělat věci rychleji, máme dotaz SQL, který můžete použít.
Tabulka RENAME `wp_commentmeta` TO` wp_a123456_commentmeta`; Tabulka RENAME `wp_comments` TO` wp_a123456_comments`; Tabulka RENAME `wp_links 'TO` wp_a123456_links`; Tabulka RENAME `wp_options` TO` wp_a123456_options`; Tabulka RENAME `wp_postmeta` TO` wp_a123456_postmeta`; Tabulka RENAME `wp_posts` TO` wp_a123456_posts`; Tabulka RENAME `wp_terms` TO` wp_a123456_terms`; Tabulka RENAME `wp_termmeta` TO` wp_a123456_termmeta`; Tabulka RENAME `wp_term_relationships 'TO` wp_a123456_term_relationships`; Tabulka RENAME `wp_term_taxonomy` TO` wp_a123456_term_taxonomy`; Tabulka RENAME `wp_usermeta` TO` wp_a123456_usermeta`; Tabulka RENAME `wp_users` TO` wp_a123456_users`;
Možná budete muset přidat řádky pro další pluginy, které mohou přidat vlastní tabulky do vaší databáze WordPress. Myšlenkou je změnit všechny předpony tabulky na cokoli chcete.
Úpravy v tabulce „možnosti“
Musíme hledat možnosti, které stále používají předponu „wp_“, abychom ji mohli nahradit. Aby byl proces jednodušší, použijte tento dotaz:
SELECT * FROM `` option_name` wp_a123456_options` WHERE LIKE '% wp_%'
To vrací spoustu výsledků a tyto řádky musíte změnit jeden po druhém.
Tabulka uživatelů metas
Dále musíte vyhledat metas uživatele, která také používají předponu „wp_“, aby ji bylo možné nahradit. Pomocí tohoto dotazu SQL to můžete udělat rychle:
SELECT * FROM `` meta_key` wp_a123456_usermeta` WHERE LIKE '% wp_%'
Počet vstupů se může lišit podle počtu používaných zásuvných modulů. Prostě změňte vše, co má „wp_“, s novou předponou.
To je vše pro tento tutoriál, doufám, že vám to umožní snadno změnit tabulky předpony vaší instalace WordPress.
Dobrý den, v následujícím dotazu například doporučujete, abyste získali všechny předpony 'wp_':
SELECT * FROM `wp_a123456_usermeta` WHERE` meta_key` LIKE '% wp_%'
před znakem „wp“ je znak%, který označuje, že předpona by byla uprostřed výrazu. Což v konečném důsledku už z něj nedělá předponu. Protože jsem našel alespoň jedno pole z tabulky se znaky 'wp_' uprostřed názvu pole. Měli bychom to také změnit?
Jinak jsem všechny vaše pokyny do písmene provedl, s přihlédnutím k mé předchozí poznámce, ale s ohledem na 2 případy to nefunguje. Máte nějaké další rady?
Dobrý den,
omlouvám se za zpoždění. Je obvyklé upravovat všechny výskyty "wp_" ve sloupci klíčů. Velmi zřídka uvidíte vývojáře, kteří registrují svá data pomocí tohoto klíče pro své pluginy. Nevím, jestli v databázi fungují běžné (regexové) funkce, ale všechna hledání, která provádíme pomocí dotazu SQL, jsou vždy obklopena znakem „%“, zda hledání začíná na začátku řetězce nebo si nakonec nemyslím (pokud se nemýlím), že to lze ovládat přes MySQL.
Pokud ve vašem případě nefunguje správně, pak je pravděpodobně vynechán krok. Můžete nám přesně říct, jak to nefunguje? Děkuju.