Teeme WP-Cron töö paremaks

Kuna Wordpress peab töötama väga erinevates keskkondades, ei saa eeldada, et keskkond, kuhu Wordpress installitakse, omab cron tööde võimekust. Automatiseeritud tööd on ka Wordpressil, on arendajad välja mõelnud lahenduse: wp-cron.php fail, mis jooksutatakse iga kord, kui keegi külastab lehte.

See aga tähendab, et seda faili saab ära kasutada DDOS rünnakute jaoks. Lisaks võib see tekitada probleeme caching pluginatega. Hea viis nende vigade vältimiseks on kasutada päris cron jobi selleks.

Esiteks tuleb keelata wp-config.php failis tavapärane tööde jooksutamine. Selleks lisa alljärgnev rida enne“/* That’s all, stop editing! Happy blogging. */” rida:

define('DISABLE_WP_CRON', true);

Kui see tehtud, tuleb lisada päris cron töö, et wp-cron.php faili jooksutataks regulaarselt peale mingit kindlat aega.

Enode veebiserveris saad seda teha minnes oma veebiserveri halduspaneelile Domains > Sinu domeen > Scheduled Tasks > Add Task

Vali "Run a PHP script", Script path väljale lisa wp-cron.php asukoht. Vali php versioon, millega soovid jooksutada. Run väljalt vali "Cron style" ning lisa järgnev:

16,46 * * * *

Ülejäänud väljad täida vabal valikul.

Vajuta OK ning tehtud!

Lisameetmena võid wp-cron.php failile ligipääsu piirata ainult sinu serverile. Selleks ava .htaccess file ning lisa järgnevad read:

RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1
RewriteCond %{REQUEST_URI} wp-cron.php [NC]
RewriteRule .* - [F,L]

Wordpress failiõigused ja omanik

Selleks, et vältida probleeme ja et tugevdada saidi turvalisust, peaksid olema sinu Wordpressi failid kõik õigete õigustega.

Failide õigused peaksid olema järgnevad:

Failid: 644
Kaustad: 755

Turvalisuse kaalutlustel peaksid kindlasti muutma wp-config.php õigused 600 peale.

wp-config.php 600

Käsureal saad üpriski mugavalt muuta kõikide failide ja kaustade õigusi nii:

Kaustadele:

find /sinu/wordpress/installatsiooni/asukoht/ -type d -exec chmod 755 {} \;

Failidele:

find /sinu/wordpress/installatsiooni/asukoht/ -type f -exec chmod 644 {} \;

Ja eraldi wp-config.php failile:

chmod 600 /sinu/wordpress/installatsiooni/asukoht/wp-config.php

Kui sinu veebileht on majutatud Enode serveris, siis tavaliselt on sinu Wordpressi installatsiooni asukoht järgnev:

/home/sinu-kasutajanimi/public_html/

Kuna sind visatakse automaatselt sinu kasutaja kausta, siis pead käsklusesse edastama ainult public_html kausta.
Näide failide õiguste muutmiseks:

find public_html -type d -exec chmod 755 {} \;

Failide ja kaustade omanik

Igal failil ja kaustal on ka omanik, mis peab vastama reaalsele omanikule. Näiteks kui sinu Wordpress failide omanik ei ole sinu kasutaja vaid root või keegi teine, siis sinu lehel võib olla valge leht, sest süsteem ei saa ligi sinu failidele.
Selleks, et määrata failide omanikuks sina, sisesta järgnev käsklus:

chown -R enode public_html

Võimalik, et selle käskluse jaoks ei ole sul õigusi, seega pead ühendust võtma klienditoega, kes selle sinu eest ära teeb.


Kuidas installida WP-CLI'd Linux serverisse

WP-CLI on käsurealiides, millega saad hallata oma Wordpress saite käsurealt.

Selleks, et WP-CLI'd installida, veendu, et su süsteem vastab järgnevatele kriteeriumitele:

  • UNIX op süsteem (CentOS, Debian, Ubuntu jms), piiratud võimalused WIN keskkonnas
  • PHP versioon 5.4 või uuem
  • Wordpress 3.7 või uuem, vanematel versioonidel on piiratud või katkendlik funktsionaalsus

Kui süsteem vastab kriteeriumitele, tõmba alla phar fail kasutades wget või curl käsklust.

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar

Nüüd kontrolli, et Phar fail toimib kasutades järgnevat käsklust:

php wp-cli.phar --info

Selleks, et saaks kasutada wp käsklust käsureal, tuleb teha fail käivitatavaks ja liigutada see PATHi. Näiteks:

chmod +x wp-cli.phar
sudo mv wp-cli.phar /usr/local/bin/wp

Kui WP-CLI installimine oli edukas, siis peaksid wp --info sisestamisel nägema midagi sellist:

[root@s1 public_html]# wp --info
OS:	Linux 4.18.0-240.22.1.el8_3.x86_64 #1 SMP Thu Apr 8 19:01:30 UTC 2021 x86_64
Shell:	/bin/bash
PHP binary:	/opt/cpanel/ea-php74/root/usr/bin/php
PHP version:	7.4.19
php.ini used:	/opt/cpanel/ea-php74/root/etc/php.ini
WP-CLI root dir:	phar://wp-cli.phar/vendor/wp-cli/wp-cli
WP-CLI vendor dir:	phar://wp-cli.phar/vendor
WP_CLI phar path:	/home/enode/public_html
WP-CLI packages dir:	
WP-CLI global config:	
WP-CLI project config:	
WP-CLI version:	2.4.0

Tehtud!


Kuidas kommentaarid täielikult keelata koodiga

Kui soovid kommentaarid oma Wordpress lehel täielikult keelata, toimi nii:

Navigeeri oma aktiivse teema kausta ning ava functions.php fail.
Teema kaust asub tavaliselt: wp-content/themes/

Lisa functions.php faili lõppu järgmine kood:

/* Eemaldame kommentaarid täielikult lehelt */
	add_action('admin_init', function () {
		// Suuname kommentaaride lehele sattuva kasutaja ära
		global $pagenow;

		if ($pagenow === 'edit-comments.php') {
			wp_redirect(admin_url());
			exit;
		}

		// Eemaldame kommentaaride metaboxi halduspaneelilt
		remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');

                // Keelame kommentaaride toe ja trackbackid post type'ides
		foreach (get_post_types() as $post_type) {
			if (post_type_supports($post_type, 'comments')) {
				remove_post_type_support($post_type, 'comments');
				remove_post_type_support($post_type, 'trackbacks');
			}
		}
	});

	// Sulgeme kommentaarid front-endis
	add_filter('comments_open', '__return_false', 20, 2);
	add_filter('pings_open', '__return_false', 20, 2);

	// Olemasolevate kommentaaride peitmine
	add_filter('comments_array', '__return_empty_array', 10, 2);

	// Kommentaaride lehe eemaldamine menüüst
	add_action('admin_menu', function () {
		remove_menu_page('edit-comments.php');
	});

	// Kommentaaride lingi eemaldamine admin barist
	add_action('init', function () {
		if (is_admin_bar_showing()) {
			remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
		}
	});

	/* Eemaldame kommentaarid täielikult lehelt lõpp */

Olemas! Nüüd oleks hea, kui juba olemasolevad kommentaarid kustutaksid. Seda saad teha wp-admin paneelis, aga saab kiiremalt kasutades phpmyadmin paneeli.
Phpmyadmin paneelis otsi üles wp_commentmeta rida ning kasuta sellel TRUNCATE käsklust. Sama tee ka wp_comments real.

Tehtud. Nüüd on kommentaarid täielikult eemaldatud sinu lehelt.


Kuidas lisada admin kasutajat FTP kaudu

Navigeeri oma FTP programmis või veebipõhises FTP kliendis

wp-content/themes/<sinu-praegune-aktiivne-theme>/

kausta ning ava functions.php fail.

Keri faili lõppu ning lisa järgnev kood:

function lisa_admin_kasutaja(){
$user = 'Kasutajanimi';
$pass = 'Parool';
$email = 'email@domeen.ee';
if ( !username_exists( $user )  && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','lisa_admin_kasutaja'); 

Selles koodis kindlasti muuda $user, $pass ja $email muutujad, kui plaanid loodud kasutajat jätta. Kui aga teed ajutise kasutaja, mille pärast kustutad, ei pea miskit muutma. Pea meeles, et sisselogimiseks kasuta muutujatesse kirjutatud andmed.

Navigeeri lehele ja sinu uus konto on loodud. Kindlasti eemalda see kood pärast sisselogimist! Vastasel juhul iga kord kui keegi veebisaidile läheb, luuakse see kasutaja.


Miks on vaja kodulehte hallata?

On juba teadatuntud tõde, et kõik, mis liigub, kulub, ja ega kodulehed selle poolest erinevad pole. Nagu ka oma kodus, tuleb aeg-ajalt koristada või mõni auk lappida ka Wordpressis.

Wordpressi veebilehed saavad 487 000 000 000 spämmkommentaari iga kuu ja iga päev häkitakse ligikaudu 30 000 veebilehte.

Selleks, et veebileht jääks turvaliseks, tulebki appi veebihaldur.

 

Millest tulenevad turvavead?

Erinevalt filmidest, ei istu päevast-päeva kiirete näppudega itimehed arvuti taga ja ei otsi vigu veebilehtedes, vaid seda teevad keerulised automatiseeritud tarkvararobotid, kes suudavad nõrgad veebilehed kiiresti üles leida. Enamasti otsitakse just vananenud tarkvaraga veebilehti, mille turvaaugud on juba teada ja mille kaudu kodulehele sisenetakse. Motiive on erinevaid, miks seda tehakse, põhilised on aga serveriressursi kasutamine krüptorahade kaevandamiseks, reklaamvaraga nakatamine, isikute delikaatinfo varastamine või lihtsalt vaenulikkusest.

Ilmselt ei pea pikalt rääkima selliste rünnakutega seotud kahjudest, mis võivad ulatuda kahjustatud mainest kuni suurte rahaliste kaotuseni. Tasub teada, et pahavararünnakud sihtmärki ei vali – ohus on nii suured kui ka väikesed lehed!

Suurem osa veebilehti ning e-poode on üles ehitatud levinud sisuhaldusplatvormidele, millest kõige tuntum on WordPress, mida kasutab lausa 1/3 maailma veebilehtedest. Kodulehele võimaluste lisamiseks ning eesmärgipäraste lahenduste kasutamiseks paigaldatakse aga veebile lisamooduleid ehk plugin'e, mis on lahutamatu osa tänapäeva platvormidest.

Veebiarendaja võib ju alguses platvormi paigaldada ning plugin'id lisada, ent see ei tähenda, nagu need igavesti oma tööd korralikult teeksid ja sama turvaliselt edasi töötaksid. Nii platvorm kui ka pistikprogrammid vajavad erinevatel aegadel uuendusi ning kui need ühel või teisel hetkel tegemata jäävad, on tulemuseks kriitilised turvaaugud.

Selleks, et kodulehtede turvalisust ning kiirust tõsta, töötavad arendajad öid ja päevi parendamaks oma kirjutatud koodi ning leidmaks uusi, paremaid lahendusi funktsioonide implementeerimiseks.

Ka Eestist võib leida sadu mitmete aastate vanuseid veebilehti, mida pole kas mitte kunagi või siis väga ammu hooldatud. Sellised lehed on sageli langenud kurjategijate huvitsooni ning maine kahjustamiseks on seal kuvatud näiteks täiskasvanutele mõeldud sisu.

Ka meie poole on pöördutud aeglase kodulehe murega ning probleemiks on alati olnud just aegunud plugin'ate poolt tekitatud vead.

 

Mida teeb veebihaldur ja kas mul on teda ikkagi vaja?

Kujutage endale ette üht tänapäevast kortermaja, mille elanikud soovivad seda hoida täpselt sama särava ning värskena, kui see oli valmides. Muidugi võib ju proovida edaspidi ka prügiveo, koristuse, veevärgi ja elektri eest ise hoolitseda, ent sageli jääb pädevatest oskustest või ajast puudu. Sellepärast ostetaksegi kinnisvarahalduri teenust, mis kõik “hammasrattad” alati ja igakülgselt õlitatuna hoiab.

Sisuliselt kehtib sama ka veebihalduri kohta. Veebihaldur hoiab silma peal nii platvormil kui ka plugin´idel ja hoolitseb selle eest, et need oleksid alati kõige värskemas seisus ja toimiksid probleemideta. Sõltuvalt uuenduse keerukusest konsulteerib haldur alati ka kliendiga ning kaasab oma töösse vajadusel pädevaid partnereid ja spetsialiste.

Olulise lahendusena kasutab veebihaldur alati varundamist. See tähendab, et veebilehest luuakse alati varukoopia, mida kasutada võimalike tõrgete või uuenduste käigus tekkivate ebakõlade ajal. Nii saavad külastajad ja kliendid leheküljelt vajalikule informatsioonile ligi isegi siis, kui veebilehega midagi parajasti toimetatakse. Veebihaldur teebki aeg-ajalt varukoopiaid ning hoiab neid turvaliselt mitmes kohas korraga: füüsiliselt kõvakettal/mälupulgal, veebiserveris endas, kolmanda osapoole pilvekettal(Google Drive vms). Alati on võimalus, et üks lülidest kaob, olgu see siis põleng veebimajutuse andmekeskuses, korruptsioon halduri mälupulgal vms, mille pärast ka hoitakse mitmes erinevas kohas.

Platvormide kõrval jälgib ta ka veebilehe ühtivust ning koostöövõimet erinevate veebibrauseritega, mis samuti aeg-ajalt uuendusi saavad.

Paljud meediaväljaanded ning blogid omavad sageli lugematuid edasiviivaid linke kolmandatele veebilehtedel. Tegu on sisu väärtust tõstva nähtusega, ent vahel võib juhtuda, et lingil asuv sisu kustub või viiakse mõnele muule aadressile. Sel juhul läheb viide “katki” ning selle probleemi vältimiseks nopib haldur kiirelt välja kõik katkised liigid ja parandab või eemaldab need.

Lisaks väärt sisule loob meeldiva kasutajakogemuse ka veebilehe kiirus. Mida kiirem on veebileht, seda hõlpsam on seal navigeerida ning otsingumootoritest leida. Vahel muutuvad kodulehed aga aeglaseks liialt suurte meediafailide või üleliigsete või uuendamata jäänud pistikprogrammide tõttu. Et lehekülje tempo ei raugeks, hoiabki haldur ka laadimiskiirusel silma peal ning kõrvaldab kõik seda aeglustada võivad põhjused.

Tunnustatud ja pädev veebihaldur ei tee muudatusi uisapäisa ning ei pane neid niisama igaks juhuks käima. Tagamaks suuremat kindlustunnet, katsetab haldur kõik uuendused enne alati läbi ja kontrollib nende koostööd teiste funktsioonidega.

 

Võta oma kodulehe halduriks Enode spetsialist kõigest 35€ eest kuus.
Tutvu lähemalt siin või võta ühendust.