POMOC TECHNICZNA: +48 606 85 73 04

WP-config czyli prosty tuning WordPressa w kilku krokach

WP-config czyli prosty tuning WordPressa w kilku krokach
wp-config

Kontynuując rozpoczęty jakiś czas temu temat tuningu naszej strony, warto przyjrzeć się jeszcze kilku przydatnym definicjom w pliku wp-config.  Część z nich została już omówiona w 2 poprzednich artykułach 8-sposobow-na-tuning-wordpress cz.2  gdzie pisałem o dodatkach do pliku functions.php naszego motywu oraz  8-sposobow-na-tuning-wordpressa cz.1 gdzie skupiłem się na pliku wp-config i kilku jego modyfikacjach. Dziś dalszy ciąg prostych modyfikacji. Na początek

Poprawa wygody czyli…  kosz w bibliotece

Pracując często na stronach i ich klonach  mam potrzebę  uporządkowania zawartości strony do ponownego wykorzystania. Tu dobrym rozwiązaniem jest przenoszenie elementów do kosza (treści, mediów itd) zamiast natychmiastowego ich usuwania, bo często elementy te są do ponownego wykorzystnania. Niestety nie wszędzie kosz jest domyślnie dostępny. By kosz pojawił się w bibliotece mediów należy dopisać w wp-config.php jedną linijkę:

 

define( 'MEDIA_TRASH', true );

Spowoduje ona pojawienie się koszta podobnie jak we wpisach.

Usunięcie blokady uploadowania dowolnym mediów

Często podczas dodawania plików do katalogu mediów pojawia się komunikat że np. nie możemy dodać z przyczyn bezpieczeństwa pliku .swf. Czy jest możliwość prostego ominięcia tej blokady? Skoro piszę… to pewnie jest:)

 

define( 'ALLOW_UNFILTERED_UPLOADS', true );

Wpisanie tej linii spowoduje zniesienie blokady ale tylko dla użytkownika na prawach administratora.

Porządek ponad wszystko…

Często też chcemy zachować porządek na naszej stronie niezależnie od aktualizacji WordPress’a. Aktualizacja WP skutkuje nam tym, że wraz z nową wersją WP instalowane są nowe wersje domyślnych motywów. Poniższymi kilkoma wpisami możemy zdefiniować podstawowy „święty spokój” w wyglądzie strony podczas aktualizacji tzn. Na początek pominiemy przy aktualizacjach WordPressa  modyfikacje katalogu wp-content

 

define( 'CORE_UPGRADE_SKIP_NEW_BUNDLED', true );

Ok no to jeszcze dla pewności na sztywno ustalamy, że naszym domyślnym motywem jest „nasz-motyw”. Co po aktualizacji spowoduje, że zawsze po aktualizacji będzie uruchamiany nasz motyw.

 

define( 'WP_DEFAULT_THEME', 'nasz-motyw' );

Bezpieczeństwo – czyli usuwamy edytor…

No i jeszcze dwie linijki ważne ze względu na bezpieczeństwo. Na szkoleniach często powtarzam, by w zapleczu naszej strony korzystać z dwóch kont. Jedno na prawach administratora, drugie na prawach redaktora, bo tak znacznie bezpieczniej. Konto administratora powinno służyć, jak sama nazwa wskazuje, tylko do administracji (czyli nie do publikowania treści). No ale załóżmy, że w naszym zapleczu jest tylko jedno konto – na prawach administratora i wykonujemy na nim zarówno prace administracyjne jak i edycyjne. Jak przy takim podejściu w miarę bezpiecznie skonfigurować sobie środowisko? Gdzie włamywacz może nam najprościej „namieszać” na stronie?  Miejscem najbardziej newralgicznym jest „Edytor” zarówno w „Wyglądzie” jak i „Wtyczkach”. Jego zablokowanie może znacząco podnieść bezpieczeństwo naszej strony. Jak tego dokonać?  Edycją wp-config.php

define(‚DISALLOW_FILE_EDIT’,true);

Do kompletu możemy jeszcze wyłączyć możliwość zmiany motywu

Blokada zmiany motywu

define('DISALLOW_FILE_MODS',true);

Ok no to mamy już dostosowane nasze środowisko pracy. Co jeszcze może nam się przydać podczas codziennej pracy z WordPressem, a co możemy zdefiniować w wp-config? Często instalując jakieś wtyczki nie do końca wiemy czy nasza strona będzie z nimi poprawnie pracować. Wtedy najlepiej uruchomić stronę w trybie diagnostycznym – debugera

define('WP_DEBUG’, true);

Gdy wystąpią jakieś alerty, ostrzeżenia, czy błędy związane ze stroną, wyświetlą się odpowiednie komunikaty.

Bezpieczeństwo po raz II czyli SSL

Gdy bezpieczeństwo traktujemy faktycznie poważnie, warto też zaopatrzyć się w certyfikat SSL dla naszej strony, co umożliwi nam szyfrowaniem połączenia i łaczenie się ze stroną za pomocą protokołu https. Nie na każdej podstronie jest potrzeba używana protokołu https. Dlatego możemy wymusić, że logując się do kokpitu będziemy automatycznie używać protokołu https. Definiujemy to oczywiście… w wp-config 😉

define('FORCE_SSL_ADMIN’,true);

W ten sposób wymusiliśmy protokół https dla administratora. No a co jeśli chcemy by każdy kto się loguje, logował się bezpiecznie, co np. sprawdza się w sklepach ? Wystarczy poniższa definicja:

define('FORCE_SSL_LOGIN’, true);

Wymaga ona  też odpowiedniego przygotowania hostingu pod korzystanie z certyfikatów ssl, ale to temat na oddzielny artykuł lub… ticketu dla BOK u naszego operatora hostingu 🙂

Burzymy porządek… czyli zmieniamy domyślne foldery

WordPress ma domyślną strukturę katalogów, co ma swoje plusy i minusy. Plusem jest to, że jest to standaryzowany wygląd – łatwiej zarządzać. Minusem jest, że może sugerować potencjalnemu włamywaczowi lokalizację poszczególnych elementów naszej strony. Możemy zatem jeszcze troszkę zmodyfikować strukturę domyślną naszej strony i zmienić katalog przechowywania uploadowanych plików.

define('UPLOADS’,’’.’nowa-lokalizacja’);

w ten sposób możemy zrezygnować z domyślnej lokalizacji folderu uploads. Możemy też zmienić lokalizację folderu z pluginami w zależności od potrzeby za pomocą jednej z 3 definicji:

define(‘WP_PLUGIN_URL’, ‚http://example.com/content/wp-content/plugins’);
define(‘WP_PLUGIN_DIR’, $_SERVER[‚DOCUMENT_ROOT’] . ‚/content/wp-content/plugins’);
define(‘PLUGINDIR’, $_SERVER[‚DOCUMENT_ROOT’] . ‚/content/wp-content/plugins’);

Jednak należy być z tym ostrożnym, gdyż nie wszyscy programiści poprawnie używają w swoich pluginach definicji zmiennych, co może skutkować niepoprawnym działaniem niektórych pluginów.

Problemy z pamięcią…

Często instalując dodatkowe funkcjonalności na stronie, wskazane jest by zwiększyć limit dostępnej pamięci dla naszej strony. Np. występuje to podczas instalacji sklepu WooCommerce. To również załatwiamy za pomocą wp-config:

define(`WP_MEMORY_LIMIT`,’64M’);

No i na koniec ostatecznie możemy zabezpieczyć nasz plik wp-config przed możliwością zdalnego dostępu.  Tutaj musimy zmodyfikować zawartość naszego pliku .htaccess Wystarczy że dopiszemy

Zabezpieczamy nasz wp-config.php

<files wp-config.php>
  order allow,deny
  deny from all
 </files>

Oczywiście przy bezpośrednich modyfikacjach plików WordPress’a należy pamiętać o tym by zanim zaczniemy edytować zrobić zapasową kopię naszego pliku, by być przygotowanym, bo zawsze może pójść coś “nie tak”… Jeśli macie jeszcze jakieś ciekawe zastosowania dyrektyw z wp-config to zachęcam do dyskusji. A  już w najbliższym czasie przyjrzę się sposobom na optymalizację prędkości ładowania naszej strony z wykorzystaniem dostępnych narzędzi.

avatar
  Subscribe  
Powiadom o
 
Dyskusja
 
Zapisz się na mojego newslettera.

Zapisz się na mojego newslettera.

Otrzymasz zawsze aktualne informacje na temat bezpieczeńśtwa WordPressa i ciekawostki do samodzielnego wdrożenia na stronie.

Dzięki! Właśnie Twój zapis został zarejestrowany!

Shares