wp-config

Znajdujący się w katalogu głównym WordPressa plik wp-config.php zawiera  podstawową konfigurację tego CMSa. Domyślnie znajdują się w nim dane niezbędne do nawiązania połączenia z bazą danych oraz klucze służące do szyfrowania danych przechowywanych w ciasteczkach. Jego podstawowa zawartość jest generowana automatycznie podczas instalacji i spora część użytkowników nie tylko nic w nim nie zmienia, ale […]

Written By admin
biuro@seobit.pl
seobit.pl

On 23 października 2016
"

Read more

Znajdujący się w katalogu głównym WordPressa plik wp-config.php zawiera  podstawową konfigurację tego CMSa. Domyślnie znajdują się w nim dane niezbędne do nawiązania połączenia z bazą danych oraz klucze służące do szyfrowania danych przechowywanych w ciasteczkach. Jego podstawowa zawartość jest generowana automatycznie podczas instalacji i spora część użytkowników nie tylko nic w nim nie zmienia, ale często nawet do niego nie zagląda.

Jednak plik ten daje bardzo duże możliwości. Za jego pomocą możemy zmienić wiele parametrów WordPressa, a także rozwiązać kilka często spotykanych problemów.

Oczywiście sam plik wp-config.php nie robi nic niezwykłego. Wszystkie opisane w dalszej części wpisu ustawienia to tak naprawdę definicje stałych, które później są używane w kodzie WordPressa. wp-config.php jest po prostu dobrym miejscem na umieszczenie tych definicji – plik ten jest ładowany jako jeden z pierwszych, a poza tym nigdy nie jest nadpisywany ani usuwany w trakcie aktualizacji WordPressa.

Stałe, za pomocą których możemy modyfikować „ukryte” ustawienia WordPressa, definiuje się za pomocą funkcji define(). Może to wyglądać na przykład tak:

define(’DB_NAME’, 'nazwa_bazy_danych’);

B_NAME to nazwa stałej, a nazwa_bazy_danych to jej wartość. Proste.

Dane bazy danych

To jedne z podstawowych i zawsze obecnych ustawień – bez nich WordPress nie będzie po prostu działał. Dane te są umieszczane w pliku wp-config.php podczas instalacji. Jeśli przenosimy stronę na inny serwer albo po prostu zmieniliśmy bazę danych, to musimy te ustawienia zmodyfikować.

define(’DB_NAME’, 'nazwa_bazy_danych’); – nazwa naszej bazy danych
define(’DB_USER’, 'nazwa_uzytkownika_bazy_danych’); – nazwa użytkownika (login) bazy danych
define(’DB_PASSWORD’, 'haslo’); – hasło do bazy danych
define(’DB_HOST’, 'localhost’); – nazwa hosta; najczęściej będzie to localhost, a jeśli nie, to trzeba zajrzeć do dokumentacji udostępnianej przez firmę hostingową lub do panelu naszego serwera

Jeśli musimy skorzystać z niestandardowego portu MySQL (innego niż 3306), to dodajemy go po dwukropku do hosta, na przykład tak: localhost:3307.

Dwie kolejne stałe są związane ze standardem kodowaniem znaków (DB_CHARSET – utf8 lub utf8mb4 od wersji 4.2) i z metodą porównywania znaków (DB_COLLATE). Tych parametrów po prostu nie ruszamy, chyba że naprawdę wiemy, co robimy.

Ostatnim parametrem związanym z bazą danych, zdefiniowanym nieco inaczej i w innym miejscu, jest prefiks nazw tabel w bazie danych. Znajduje się on w zmiennej $table_prefix i również jest tworzony podczas instalacji WordPressa. Można go oczywiście zmienić, ale do tego nie wystarczy po prostu modyfikacja zawartości tej zmiennej – trzeba jeszcze zmienić nazwy tabel w bazie danych i poszukać w niej miejsc, w których nazwy te zostały zapisane.

Klucze zabezpieczające dane przechowywane w ciasteczkach

Kluczy tych jest osiem i są one generowane w sposób pseudo-losowy podczas instalacji WordPressa. Za ich pomocą szyfrowane są dane przechowywane w ciasteczkach na komputerach naszych użytkowników. Jeśli mamy chociażby cień podejrzenia, że nasza strona mogła paść ofiarą ataku lub infekcji, należy te klucze zmienić.

Do generowania kluczy służy specjalne narzędzie, ale oczywiście można te losowe ciągi znaków wymyślić sobie samodzielnie. Trzeba pamiętać, że zmiana któregokolwiek z kluczy spowoduje automatyczne wylogowanie wszystkich zalogowanych użytkowników.

Tak naprawdę tylko cztery pierwsze klucze są wymagane – jeśli nie podamy pozostałych czterech (których nazwy kończą się na _SALT) lub je usuniemy z pliku wp-config.php, to zostaną one wygenerowane automatycznie przez WordPressa.