Tietopankki   /   LocalghostFI   /   Verkkosivut

[Opas] WP-Cron Linuxin Cronilla

Lähetetty 24 December 2021 05:54 am

Wordpressissä on ominaisuus nimeltä "wp-cron". Wordpressin pakollinen ominaisuus, jota ei kannata poistaa. 
WP-Cron tuottaa kuitenkin ongelman. Kyseinen Croni tehtävä suoritetaan aina kun sivulla vieraillaan.

Mikä on Cron?

Cron-työ on tehtävä, joka on ajoitettu suoritettavaksi automaattisesti tietyin väliajoin. Esimerkiksi cron-työ voisi varmuuskopioida tiedoston automaattisesti kuuden tunnin välein.
Oletuskokoonpanossaan WordPress ei käytä todellista cron-työtä ajoitukseen ja muihin liittyviin tehtäviin. Sen sijaan aina, kun sivu ladataan, WordPress suorittaa wp-cron.php- tiedoston. Vaikka tämä "virtuaalinen" cron-työ on kätevä, sillä on muutamia haittoja.

1. Wp-cron.php-tiedoston suoritetaan aina, kun WordPress lataa sivun. Se on tarpeetonta, ja se voi vaikuttaa negatiivisesti palvelimen suorituskykyyn, erityisesti sivustoilla, jotka saavat paljon liikennettä.
2. Tai sivusto, jossa ei ole paljoa liikennettä, voi mennä huomattavan kauan ennenkuin vierailija lataa sivun ja aktivoi cron tehtävän.
Nämä voi aiheuttaa ei-toivottuja vaikutuksia kuten palvelimen hidastumisen hetkeksi, verkkosivun saatavuus ongelman tms.

Voit ratkaista nämä ongelmat poistamalla oletusarvoisen virtuaalisen WP Cron -työn käytöstä ja määrittämällä oikean cron-työn. Voit tehdä tämän noudattamalla alla olevia ohjeita.
(Ohje toimii Linux pohjaisilla järjestelmillä, myös Cpanelissa)

Poistetaan wp-cron käytöstä
Meidän on poistettava WordPressin oletusarvoinen wp-cron-käyttäytyminen lisäämällä seuraava rivi wp-config.php-tiedostoon:

define('DISABLE_WP_CRON', true);

Asetetaan Crontab
Avaa crontab terminaalissa 

crontab -e

Tai Cpanelissa: Advanced -> Cron Jobs

Lisää sitten seuraava rivi Crontabiin:

*/30 * * * * curl http://esimerkki.fi/wp-cron.php?doing_wp_cron > /dev/null 2>&1
tai
*/30 * * * cd /var/www/esimerkki.fi/htdocs; php /var/www/esimerkki.fi/htdocs/wp-cron.php?doing_wp_cron > /dev/null 2>&1

Tähtimerkkien jälkeinen on komento.  Cpanelissa Minuutti kohtaan tulee */30 ja command (Komento) kohtaan jompikumpi ylläolevista.

Yllä oleva suorittaa wp-cronin 30 minuutin välein. Voit vaihtaa */5 , jolloin se toimii 5 minuutin välein. (Ei suositella, ellei se ole tarpeellista)

Nyt sivustolla kävijät eivät suorita WP-Cronia joka hidastaa palvelintasi. 30 minuutin välein on riittävä suorittamaan WP-Cronin. 


Kirjoittaja:

Atte Oksanen

Toimitusjohtaja, ICT-Asentaja
System Admin, 3D tulostus


[email protected]
https://localghost.fi

Muurame • Helsinki