កម្មវិធីរាប់ចំនួនអ្នកមើល ដែលបានធ្វើឱ្យបញ្ជីទំនិញរបស់យើងបង្ហាញកំហុស 502

ការដឹកជញ្ជូន

ទំព័រដែលបង្ហាញឈុតកម្មវិធីទាំងអស់ដែលយើងលក់ បានឆ្លើយតបទៅអ្នកទស្សនាគ្រប់រូបដោយកំហុស 502 Bad Gateway អស់រយៈពេលប្រហែល 41 ម៉ោង បន្ទាប់ពីការចាប់ផ្តើម។ ទំព័ររបស់ឈុតកម្មវិធីនីមួយៗដំណើរការបានល្អ ទំព័រដើមដំណើរការបានល្អ ការបង់ប្រាក់ដំណើរការបានល្អ។ ផ្នែកដែលខូចគឺជាកូដប៉ុន្មានបន្ទាត់ដែលរាប់ចំនួនអ្នកមើលទំព័រ។

កំហុស

ម៉ាស៊ីនបម្រើរបស់ហាងយើងរាប់ចំនួនការចូលមើលទំព័រឈុតកម្មវិធី។ ដើម្បីរកឃើញថាសំណើមួយសម្រាប់ឈុតកម្មវិធីណា វាបានយកផ្នែកទីពីរនៃផ្លូវ (path):

self._count_view(path.strip("/").split("/")[1] if path.count("/") >= 2 else "")

សម្រាប់ /kits/studio/ វាគឺ studio។ ចំពោះបញ្ជីទំនិញខ្លួនឯង /kits/ ផ្លូវមានសញ្ញាប៉ះពីរ ដូច្នេះប្រព័ន្ធការពារបានអនុញ្ញាតឱ្យវាឆ្លងកាត់ ប៉ុន្តែបន្ទាប់ពីដកសញ្ញាប៉ះចេញ មានតែផ្នែកតែមួយប៉ុណ្ណោះ ហើយ [1] បានបង្កកំហុស IndexError។ កម្មវិធីដំណើរការ (handler) គឺជា http.server ស្តង់ដាររបស់ Python: កំហុសមួយនៅក្នុង do_GET បិទការតភ្ជាប់ដោយគ្មានការឆ្លើយតប ហើយ Cloudflare បានបង្ហាញអ្នកទស្សនាឃើញកំហុស 502។

ការដោះស្រាយគឺអនុគមន៍តូចមួយដែលត្រឡប់មកវិញនូវខ្សែអក្សរទទេ នៅពេលដែលផ្នែកនោះខ្វះ។ ការរាប់ចំនួនអ្នកមើលត្រូវការតែឈ្មោះឈុតកម្មវិធីប៉ុណ្ណោះ; វាមិនដែលត្រូវការឱ្យវាធ្វើឱ្យទំព័រដែលវាកំពុងរាប់នោះខូចឡើយ។

ហេតុអ្វីបានជាការត្រួតពិនិត្យរបស់យើងមិនបានឃើញវា

អ្វីដែលបានផ្លាស់ប្តូរ

ចំណុចសំខាន់

ការងារបន្ថែមនៅក្នុងកម្មវិធីដោះស្រាយសំណើ ដូចជាការរាប់ ការកត់ត្រា ឬការតាមដាន មិនត្រូវអនុញ្ញាតឱ្យបរាជ័យនាំឱ្យសំណើបរាជ័យឡើយ ហើយការពិនិត្យទំព័រដែលគ្របដណ្តប់តែលើទំព័រដែលអ្នកទើបតែកែប៉ុណ្ណោះ នឹងខកខានទំព័រដែលភ្ជាប់ទៅកាន់ទំព័រទាំងនោះ។ ម៉ាស៊ីនត្រួតពិនិត្យនៅក្នុង Night Watch ទទួលយកបញ្ជីទំព័រណាក៏បាន ដោយទំព័រនីមួយៗត្រូវមានអត្ថបទដែលត្រូវផ្ទៀងផ្ទាត់ មិនមែនគ្រាន់តែទំព័រដើមប៉ុណ្ណោះទេ។

បានធ្វើបច្ចុប្បន្នភាព: