WORDPRESS网站500、502、503、504错误的3大罪魁祸首

Мен бир нечесин иштетемWordPressВеб-сайт бир жолу 502 катасынан улам бир күндө 800дөн ашык кирүүдөн айрылган. Үч күн бою иликтөө жүргүзгөндөн кийин, күнөөлүү сервердин арткы бетиндеги байкалбаган жөндөө экени аныкталган.

WordPress веб-сайтын иштеткен ар бир адам эң кыжырды келтирген нерсе трафиктин жетишсиздиги эмес, веб-сайт күтүүсүздөн жеткиликсиз болуп калганда, экранда 500, 502, 503 жана 504 сыяктуу бурмаланган каталар пайда болгондо экенин билет.

Сиз сервер бузулуп калды деп ойлоп, хостинг провайдери менен талашып-тартышууга шаштыңыз, бирок алар сервердин толук кандуу иштеп жатканын текшергенден кийин гана билдиңиз.

Сиз муну плагиндердин кагылышуусу деп ойлошуңуз мүмкүн, ошондуктан сиз бирден өчүрүп жана мүчүлүштүктөрдү оңдоп, күндүн көпчүлүк бөлүгүн ошого жумшайсыз, бирок ката кайталана берет.

Чындыгында, бул анчалык татаал болбошу керек. Сансыз тузактарга түшүп калгандан кийин, мен WP веб-сайтынын 5xx каталарынын 80% бул 3 күнөөлүүдөн кутула албасын билдим. Ар бири жакшы жашырылган, бирок ал сиздин веб-сайтыңызды оңой эле бузуп коюшу мүмкүн.

Эми мен өзүмдүн практикалык тажрыйбамды колдонуп, бул тузактарды ачык көрсөтөм, ошондо жаңы баштагандар да ээрчип, көйгөйлөрдү чече алышат жана сиз эч качан каталардан улам чөгүп кетпейсиз.

WORDPRESS网站500、502、503、504错误的3大罪魁祸首

Күнөөлүү #1: WP-CRON өчүрүлгөн эмес, веб-сайтка "жашыруун кубат дренажын" орноткон.

Көп адамдар WordPressте WP-CRON деп аталган орнотулган пландаштырылган тапшырма функциясы бар экенин билишпейт, ал демейки шартта иштетилет.

Анын функциялары абдан практикалык угулат, мисалы, макалаларды жарыялоону пландаштыруу, автоматтык түрдө камдык көчүрмөнү сактоо, плагиндердин жаңыртууларын текшерүү жана ал тургай мүчөлөргө эскертүүлөрдү жөнөтүү.

Бирок бул пайдалуу көрүнгөн функция чындыгында серверлерди иштен чыгарып, 5xx каталарын пайда кылган биринчи күнөөкөр экенин билчү белеңиз?

WP-CRON сервердин түпнуска Cronунан айырмаланат. Ал алдын ала иштебейт, бирок колдонуучулардын кирүүлөрү менен ишке киргизилет. Колдонуучу сиздин веб-сайтыңызга кирген сайын, ал аткарыла турган пландаштырылган тапшырмалар бар-жогун текшерүү үчүн /wp-cron.php файлын жашыруун түрдө иштетет.

Бул сиздин веб-сайтыңызга кирген ар бир конок "кошумча жүк" кошот дегенди билдирет жана канчалык көп коноктор болсо, жүк ошончолук оор болот.

Менин күнүнө миңден ашык конок кабыл алган веб-сайтым бар болчу. WP-CRON өчүрүлбөгөндө, сервердин CPU колдонуусу көп учурда 80% дан ашып кетчү жана күн сайын жок дегенде эки 503 катасы пайда болуп, коноктор аны басканда эле ката баракчасына багытталчу.

Андан да жаманы, сиз эч кандай пландаштырылган тапшырмаларды койбосоңуз да, WP-CRON автоматтык түрдө иштей баштайт жана сервер ресурстарын кайра-кайра сурайт. Убакыттын өтүшү менен сервер жүктөмдү көтөрө албай калат жана ката жөнүндө кабарлайт.

GitHub документтеринде так мындай деп айтылат: "Күтүлбөгөн HTTP жооп коду: 500 же андан жогору, бул сиздин сервериңизде cron spawnerдин иштешине тоскоол болгон ката пайда болгонун билдирет." Бул WP-CRON туура иштебей калганда, ал 500 же андан жогору сервер катасына алып келет дегенди билдирет.

Туура ыкма - демейки WP-CRONду өчүрүп, анын ордуна сервердин жергиликтүү пландаштырылган тапшырмаларын колдонуу. Бул пландаштырылган тапшырмалардын кадимкидей аткарылышын жана сервердин жүктөмүн азайтууну камсыздайт.

Эгер сервериңиз curl буйругун колдосо, сиз түздөн-түз ушул сыяктуу пландаштырылган тапшырманы кошо аласыз (веб-сайтыңыздын доменине жараша өзгөртүү):

*/15 * * * * curl https://www. 你的域名/wp-cron.php?doing_wp_cron > /dev/null 2>&1

Бул буйрук ар бир 15 мүнөт сайын WP-CRON тапшырмасын аткарат, бул көпчүлүк чакан жана орто веб-сайттар үчүн ылайыктуу; эгерде сиздин веб-сайтыңызда тез-тез пландаштырылган тапшырмалар болсо, сиз муну да колдоно аласыз:

*/5 * * * * curl https://www. 你的域名/wp-cron.php?doing_wp_cron > /dev/null 2>&1

WP-CRONду өчүрүп, серверде пландаштырылган тапшырмаларды орноткондон кийин, сервердин CPU колдонуусу 30% дан төмөн түшүп, бир ай бою 503 катасы болгон жок. Конокторду кармап калуу көрсөткүчү да 18% га жогорулады.

Экинчи күнөөлүү: CRON пландаштырылган тапшырмаларынын кайталанышы жана плагинди чыгарып салгандан кийин калган файлдар веб-сайтта негизинен "таштандыларды калтырып" жатат.

WP-CRON маселесин чечүү сиз тынч отура аласыз дегенди билдирбейт; көптөгөн веб-сайт ээлери көңүл бурбаган жашыруун тузак бар.

Бул CRON пландаштырылган тапшырмалары кайра-кайра аткарылып жатканын же плагин орнотулгандан кийин калган пландаштырылган тапшырмалар дагы эле жашыруун иштеп жатканын билдирет.

Сиз муну башынан өткөрдүңүз беле: камдык көчүрмө плагинин чыгарып салдыңыз, бирок сервер дагы эле күн сайын автоматтык түрдө камдык көчүрмөсүн жасап жатканын же ал тургай камдык көчүрмөнүн иштебей калгандыгы жөнүндө билдирүүнү көрсөтүп, акыры 500 катасына алып келерин байкадыңыз беле?

Бул плагиндин калган пландаштырылган тапшырмаларынан улам келип чыгат.

Мисалы, эгер плагин күнүмдүк пландаштырылган тапшырманы түзсө, WordPress плагин алынып салынгандан кийин да бул тапшырманы аткарууну улантат. Мындай пландаштырылган тапшырмалардын мааниси жок. Бул маанисиз калдык тапшырмалар сервер ресурстарын тынымсыз керектеп, акыры каталарга алып келет.

Андан да жаманы, кээ бир плагиндер автоматтык түрдө бир нече кайталануучу пландаштырылган тапшырмаларды жаратат. Мисалы, "күн сайын жаңыртууларды текшерүү" тапшырмасы беш жолу түзүлүшү мүмкүн жана ар бири график боюнча аткарылат, башкача айтканда, сервер бир эле учурда беш окшош тапшырманы иштетиши керек болот.

Мен мурда бирөөсүн орнотконмун.SEOПлагинди чыгарып салгандан кийин, мен аны байкабай калдым, жарым айдан кийин веб-сайтта көп учурда 504 тайм-аут каталары кездешип турду. Сервер журналдарын текшергенден кийин гана плагиндин ар биринин аткаруу убактысы 12 секундга чейин болгон үч күнүмдүк пландаштырылган тапшырманы калтырып кеткенин билдим. Үчөөнүн бир убакта иштеши сервердин жооп берүү тайм-аутуна түздөн-түз себеп болду.

Андан да коркунучтуусу, бул калдык, кайталануучу убакыт менен аткарылуучу тапшырмалар...WordPress backendАл көрүнбөйт; анын жашыруун иштеп жатканын сиз билбейсиз.

Бирок, чечим бар: WP-Crontrol плагини муну эң сонун чече алат. Бул WordPress тарабынан сунушталган расмий Cron тапшырмаларын башкаруу куралы, ал сизге бардык пландаштырылган тапшырмаларды түздөн-түз серверде көрүүгө, түзөтүүгө жана жок кылууга мүмкүндүк берет.

WordPress плагининин сүрөттөмөсүнө ылайык, WP-Crontrol "бардык пландаштырылган cron окуяларын көрө алат, түзөтө алат, жок кыла алат, тындыра алат, уланта алат жана cron окуяларын дароо иштете алат". Башкача айтканда, ал бардык пландаштырылган тапшырмаларды көрө алат жана кайталанган же жараксыз тапшырмаларды жок кыла алат. Аны колдонуу абдан оңой жана бир сап код жазууну талап кылбайт.

Бул плагинди көйгөйлөрдү чечүү үчүн колдонгондон кийин, мен 8 кайталанган тапшырманы жана 5 плагиндин калдык тапшырмасын өчүрдүм, ошондо веб-сайттын жооп берүү ылдамдыгы түздөн-түз 40% га жакшырды. 504 катасы экинчи кайталанган жок.

Эскертүү: тапшырмаларды жок кылганда, кылдаттык менен текшерип, "wp_version_check" (версияны текшерүү) сыяктуу негизги WordPress пландалган тапшырмаларын кокустан жок кылбоо керек. Кокустан жок кылуу веб-сайттын туура жаңыртылышына тоскоол болушу мүмкүн.

WP-Crontrol плагини кайталанган же жараксыз тапшырмаларды кол менен жок кыла алса да, ал кол менен кийлигишүүнү талап кылат, бул идеалдуу эмес...

Бирок, биз бул процессти WordPress кодун колдонуп автоматташтыра алабыз. Кененирээк маалымат алуу үчүн төмөндөгү окуу куралын караңыз. ▼

Үчүнчү күнөөлүү: Плагин/тема жаңыртылгандан кийинки каталар веб-сайтта "салттуу эмес операция" жасаганга окшош.

Көптөгөн веб-сайт ээлери плагиндер же темалар үчүн жаңыртуу сурамдарын көргөндө дароо "жаңыртуу" баскычын басуу адатына ээ, анткени жаңыртуулар алсыздыктарды оңдоп, иштин натыйжалуулугун жакшыртат деп ишенишет.

Бирок чындык таптакыр тескерисинче; көптөгөн 5xx каталары плагиндерди же темаларды жаңыртуудан келип чыгат.

Мен бул көйгөйгө мурда да туш болгом. Өткөн айда веб-сайтымды популярдуу баракча куруучу плагин менен жаңырттым. "Жаңыртуу" баскычын баскандан кийин, баракча бош болуп калды, ал эми жаңырткандан кийин 500 Internal Server Error пайда болуп, серверге кирүү мүмкүн болбой калды.

Кийинчерээк плагиндин жаңы версиясы менин веб-сайтымдын PHP версиясына шайкеш келбей турганын билдим. Плагин жаңыртылгандан кийин, код туура иштебей калды, бул сервердин ката жөнүндө кабарлашына түздөн-түз алып келди.

Плагинди же теманы жаңыртууда кетирилген каталар WordPress 500 каталарынын кеңири таралган себеби болуп саналат, айрыкча плагиндин жаңы версиясында коддук алсыздыктар болгондо же веб-сайттагы башка плагиндер же темалар менен карама-каршылыктар болгондо.

Дагы бир сценарий, тема жаңыртылгандан кийин, мурунку колдонуучу коду кайра жазылып, веб-сайттын макетин бузат жана функциялардын иштебей калышына алып келет, бул өз кезегинде 502 жана 503 каталарына алып келет.

кыламэлектр жеткирүүчүАйрым колдонуучулар WooCommerce плагинин жаңырткандан кийин, алардын веб-сайттарында 502 ката пайда болуп, буйрутмаларды берүү мүмкүн эмес болуп калды. Натыйжада, 3 сааттын ичинде 2000ден ашык сатуу жоголуп, көйгөйдү чечүү үчүн бир күндүк убакыт кетти.

Чындыгында, бул кырдаалдан чыгуунун эң түз жана натыйжалуу чечими - туура иштеген мурунку версиясына кайтуу.

Көп адамдар кантип артка жылдырууну билишпейт, бирок файлдарды кол менен жүктөп алуунун же жүктөөнүн кажети жок; WP Rollback плагини муну жеңилдетет.

WordPressтин сүрөттөмөсүнө ылайык, WP Rollback плагини "wordpress.org сайтынан каалаган теманы же плагинди кол менен эч кандай кыйынчылыксыз мурунку (же жаңы) версиясына тез жана оңой кайтара алат". Башкача айтканда, ал татаал операцияларсыз, бир чыкылдатуу менен плагиндерди же темаларды каалаган мурунку версиясына кайтара алат, бул башталгычтар үчүн колдонууну жеңилдетет.

Акыркы плагин жаңыртуусу ишке ашпай калгандан кийин, мен бир чыкылдатуу менен мурунку версияга кайтуу үчүн WP Rollback колдондум. Вебсайт болгону 30 секунддун ичинде кадимки абалына кайтып келди жана эч кандай маалымат жоголгон жок.

Сунуш: плагиндерди же темаларды жаңыртаардан мурун, ар дайым алгач веб-сайтыңыздын камдык көчүрмөсүн сактап коюңуз. Каталарды болтурбоо үчүн, расмий веб-сайтта жаңыртаардан мурун эч кандай көйгөй жок экенине ынануу үчүн аны алгач тесттик чөйрөдө сынап көргөн жакшы.

Жыйынтык: WP веб-сайтынын 5xx каталары менен толугу менен коштошуу үчүн ушул 3 пунктту өздөштүрүңүз.

WordPress веб-сайтын иштетүүдө 500, 502, 503 жана 504 каталары "тоскоолдуктар" сыяктуу, көрүнгөнү менен, кыйынчылык жаратат, бирок түпкү себеби чындыгында абдан ачык - бул сервердин бузулгандыгында же веб-сайт программасында чоң көйгөй жок экендигинде эмес, тескерисинче, биз үч деталга көңүл бурбай койгонбуз: WP-CRON, калган пландаштырылган тапшырмалар жана плагин/теманы жаңыртуу.

WordPress веб-сайтынын ээси катары, башында каталардан улам чарчап калгандан бери, азыр бардык 5xx каталарын тез арада оңдоп, чече алганга чейин, менин эң чоң оюм - веб-сайттын туруктуу иштеши "ат чуркагандан кийин аткананын эшигин бекитүүгө" эмес, тескерисинче, "алдын алуу дарылоодон жакшы" дегенге таянат.

Көптөгөн веб-сайт ээлери бул майда-чүйдө нерселерди маанилүү эмес деп ойлошот жана веб-сайт иштебей калганда, трафикти жоготкондо жана киреше жоготууга учураганда гана аларды алдын ала текшербегенине өкүнүшөт.

Веб-сайт үчүн "туруктуулук" негизги атаандаштык артыкчылыгы экенин түшүнүү маанилүү. Бир гана 5xx катасы сиздин конокторуңуздун 10% жоготууга алып келиши мүмкүн, ал эми бир нече каталар издөө системаларынын рейтингинин төмөндөшүнө алып келип, мурунку SEO аракеттериңиздин баары текке кетишине алып келиши мүмкүн.

"Миң чакырымдык дамбаны кумурсканын тешиги тешип өтө алат" деген макалда айтылгандай, WP веб-сайтынын 5xx каталары эч качан күтүүсүз пайда болбойт, тескерисинче, кичинекей көйгөйлөрдүн топтолушунун натыйжасы болуп саналат — өчүрүлбөгөн WP-CRON, калган пландаштырылган тапшырмалар жана шашылыш жаңыртуу операциялары. Бул анча маанилүү эместей көрүнгөн "кумурска тешиктер" акыры веб-сайттын бүтүндөй "дамбасын" жок кылат.

Чындап натыйжалуу операциялар көйгөйлөрдү түп-тамырынан бери чечүүнү билдирет.

  1. Демейки WP-CRONду өчүрүп, аны серверге негизделген пландаштырылган тапшырма менен алмаштырыңыз;
  2. Кайталануучу жана калдык пландаштырылган тапшырмаларды тазалоо үчүн WP-Crontrolду үзгүлтүксүз колдонуңуз;
  3. Плагиндерди же темаларды жаңыртуудан мурун маалыматтарыңыздын камдык көчүрмөсүн сактап коюңуз жана каталар пайда болсо, дароо артка кайтарыңыз.

Бул үч операция татаал технологияны же кымбат иштеп чыгуучуларды талап кылбайт, ал тургай жаңы баштагандар да аларды оңой эле өздөштүрө алышат, бирок алар сиздин веб-сайтыңызды 5xx каталарынан алыс кармап, туруктуу иштешин камсыздай алышат.

Веб-сайтыңыздын ар бир туруктуу жүктөмү жана ар бир коноктун калышы убакыттын өтүшү менен топтогон баалуу байлыгыңыз болуп саналат.

Мындан ары, ушул үч күнөөлүүнү аныктап, WordPress веб-сайтыңыз сиздин оор эмгегиңизди көтөрүп гана тим болбостон, трафикти жана кирешени туруктуу түрдө көбөйтө алышы үчүн күн сайын техникалык тейлөө жүргүзүңүз.

Эгер сиз учурда 5xx каталарынан кыйналып жатсаңыз, анда көйгөйлөрдү чечүү үчүн ушул макаладагы кадамдарды аткарып көрүңүз. Менимче, көп өтпөй сиз бул көйгөйлөрдөн арыла аласыз, веб-сайтыңыздын туруктуу иштешин камсыздай аласыз жана узак мөөнөттүү өсүшкө жетише аласыз.

Hope Chen Weiliang блогу ( https://www.chenweiliang.com/ ) 分享的《WORDPRESS网站500、502、503、504错误的3大罪魁祸首》,对您有帮助。

Бул макаланын шилтемесин бөлүшүүгө кош келиңиз:https://www.chenweiliang.com/cwl-33968.html

Көбүрөөк жашыруун трюктарды ачуу үчүн🔑, биздин Telegram каналыбызга кошулуңуз!

Бөлүшүп, жакса лайк! Сиздин бөлүшүүлөрүңүз жана лайктарыңыз биздин туруктуу мотивациябыз!

 

发表 评论

Сиздин электрондук почта дарегиңиз жарыяланбайт. Милдеттүү талаалар колдонулат * 标注

Жылдыруу үчүн Top