បញ្ជីអត្ថបទ
មាននរណាម្នាក់បានលើកឡើងថា បន្ទាប់ពីដំឡើង Wordfence នៅលើគេហទំព័ររបស់គាត់ គាត់នៅតែទទួលបានកំហុសដែលនិយាយថាវាមិនអាចបង្កើតឯកសារ wordfence-waf.php នៅក្នុងថតឯកសារដើមបានទេ។ ខ្ញុំបានសុំឱ្យគាត់ផ្ញើរូបថតអេក្រង់មកខ្ញុំ។ សារកំហុសមានតែមួយបន្ទាត់ប៉ុណ្ណោះ ដោយនិយាយថាវាជាបញ្ហាការអនុញ្ញាតឯកសារ។
ខ្ញុំបានគិតអំពីវាមួយសន្ទុះ ហើយបានដឹងថាខ្ញុំធ្លាប់ជួបប្រទះរឿងនេះពីមុនមក។ ខ្ញុំបានចំណាយពេលជាច្រើនដើម្បីព្យាយាមដោះស្រាយវា ស្ទើរតែគិតថាអ្នកផ្តល់សេវាបង្ហោះកំពុងធ្វើអ្វីមួយ។ វាប្រែជាបញ្ហាសិទ្ធិ និងភាពជាម្ចាស់កម្មសិទ្ធិ ប៉ុន្តែតក្កវិជ្ជានៃផ្ទាំងបញ្ជាបង្ហោះអាចមានភាពច្របូកច្របល់ណាស់។

ដំបូងខ្ញុំសូមបញ្ជាក់ឲ្យច្បាស់ថា wordfence-waf.php នេះជាអ្វី។
តាមពិតវាគឺជាឯកសារការពាររបស់ជញ្ជាំងភ្លើង Wordfence ដែលត្រូវតែសរសេរនៅក្នុងថតឯកសារ root នៃគេហទំព័រ នៅកម្រិតដូចគ្នានឹង wp-config.php។
បើគ្មានឯកសារនេះទេ ជញ្ជាំងភ្លើងមិនអាចចាប់ផ្តើមបានទេ។ វាដូចជាអ្នកបានដំឡើងសោរ ប៉ុន្តែសោមិនអាចបញ្ចូលបានទេ។
ជម្រើសទី 1: ការកែប្រែការអនុញ្ញាតដោយចុចតែម្តងតាមរយៈផ្ទាំងបញ្ជា (បន្ទះ BT/)HestiaCP/cPanel)
ប្រសិនបើអ្នកកំពុងប្រើ BT Panel វាពិតជាសាមញ្ញបំផុត។ ចូលទៅកាន់គេហទំព័ររបស់អ្នក ស្វែងរកគេហទំព័រដែលត្រូវគ្នា ចុចការកំណត់ បន្ទាប់មកចូលទៅកាន់ការអនុញ្ញាតថតឯកសារ។ ផ្លាស់ប្តូរការអនុញ្ញាតថតឯកសារ root របស់គេហទំព័រទៅ 755 និងការអនុញ្ញាតឯកសារទាំងអស់ទៅ 644។ បន្ទាប់មកពិនិត្យមើលថាតើអ្នកប្រើប្រាស់ដែលកំពុងដំណើរការគឺ "www" ដែរឬទេ។ បើមិនមែនទេ សូមប្តូរវា។ ចុចប៊ូតុង "ជួសជុលការអនុញ្ញាត" រង់ចាំវាបញ្ចប់ ធ្វើឱ្យ Wordfence ស្រស់ឡើងវិញ ហើយព្យាយាមម្តងទៀត។
សម្រាប់ HestiaCP សូមចូលទៅកាន់ទំព័រកែសម្រួលគេហទំព័រ ហើយបើកជម្រើសដែលហៅថា "អនុញ្ញាតឱ្យចូលប្រើសរសេរទៅកាន់ root គេហទំព័រ"។ បន្ទាប់មកដំណើរការពាក្យបញ្ជា SSH មួយចំនួនដើម្បីបង្រួបបង្រួមម្ចាស់ និងការអនុញ្ញាតនៃថតគេហទំព័រ។
chown -R admin:www-data /home/admin/web/你的域名/public_html
chmod -R 755 /home/admin/web/你的域名/public_html
find /home/admin/web/你的域名/public_html -type f -print0 | xargs -0 chmod 644cPanel មានភាពងាយស្រួលប្រើជាង។ សូមបើកកម្មវិធីគ្រប់គ្រងឯកសារ បើក "បង្ហាញឯកសារដែលលាក់" នៅជ្រុងខាងស្តាំខាងលើ ចុចកណ្ដុរខាងស្ដាំលើថតឯកសារ ហើយផ្លាស់ប្តូរសិទ្ធិទៅ 755 ផ្លាស់ប្តូរសិទ្ធិឯកសារទៅ 644 ហើយក៏មានមុខងារមួយដើម្បីជួសជុលម្ចាស់ឯកសារនៅក្នុងជម្រើសកម្រិតខ្ពស់ផងដែរ។
ជម្រើសទី 2: ផ្លាស់ប្តូរការអនុញ្ញាតដោយដៃតាមរយៈ SSH (ទូទៅ)Linux)
ប្រសិនបើផ្ទាំងបញ្ជាមិនអាចដោះស្រាយវាបានទេ សូមសាកល្បង SSH ដោយដៃ។ នៅពេលភ្ជាប់ទៅម៉ាស៊ីនមេ សូមបង្រួបបង្រួមភាពជាម្ចាស់ជាមុនសិន។ នៅក្នុងបរិស្ថាន LNMP/LEMP ក្រុមពេលដំណើរការគេហទំព័រជាធម្មតាគឺ www-data ឬ www។
chown -R 你的面板用户:www-data /网站根目录完全路径បន្ទាប់មកកំណត់សិទ្ធិថតឯកសារទៅ 755 និងការអនុញ្ញាតឯកសារទៅ 644។
find /网站根目录 -type d -print0 | xargs -0 chmod 755
find /网站根目录 -type f -print0 | xargs -0 chmod 644បន្ទាប់ពីដំណើរការត្រូវបានបញ្ចប់ សូមត្រឡប់ទៅ WP backend ហើយបើកដំណើរការ firewall ឡើងវិញ។ វាទំនងជាដោះស្រាយបញ្ហាបាន។
ជម្រើសទី 3: បង្កើត wordfence-waf.php ដោយដៃ (ដំណោះស្រាយដ៏ល្អមួយនៅពេលដែលការអនុញ្ញាតត្រូវបានចាក់សោ)
ប្រសិនបើអ្នកមិនអាចផ្លាស់ប្តូរអ្វីតាមរយៈបន្ទះ SSH សូមធ្វើវាដោយដៃ។ បង្កើតឯកសារមួយដែលមានឈ្មោះថា wordfence-waf.php នៅក្នុងថតឯកសារដើម ហើយបិទភ្ជាប់កូដខាងក្រោមទៅក្នុងវា។
<?php
if (!defined('WFWAF_VERSION')) {
define('WFWAF_VERSION', '7.11.0');
}
$wafConfig = array(
'wafAutoPrepend' => true,
'wafFile' => __FILE__,
'wpContentDir' => dirname(__FILE__) . '/wp-content',
'wpPluginsDir' => dirname(__FILE__) . '/wp-content/plugins',
'wafLogDir' => dirname(__FILE__) . '/wp-content/wflogs',
);
require_once $wafConfig['wpPluginsDir'] . '/wordfence/lib/waf/waf.php';សូមចងចាំថាត្រូវជំនួសកំណែ 7.11.0 ជាមួយនឹងកំណែ Wordfence បច្ចុប្បន្នរបស់អ្នក។ កំណត់សិទ្ធិឯកសារទៅ 644 ហើយម្ចាស់គួរតែត្រូវគ្នានឹងគេហទំព័រ។ បន្ទាប់មកកែសម្រួល wp-config.php ហើយបន្ថែមបន្ទាត់ខាងក្រោមនៅផ្នែកខាងលើបំផុតនៃឯកសារ។
require_once 'wordfence-waf.php';រក្សាទុក និងផ្ទុក Wordfence ឡើងវិញ។ ជញ្ជាំងភ្លើងនឹងស្គាល់វាដោយស្វ័យប្រវត្តិ ហើយលែងរាយការណ៍កំហុសទៀតហើយ។
ជម្រើសទី 4: ពិនិត្យមើលច្បាប់ដែលរឹតត្បិតការចូលប្រើសរសេរ។
ពេលខ្លះវាមិនមែនជាបញ្ហាសិទ្ធិអនុញ្ញាតទេ ប៉ុន្តែជាឯកសារកំណត់រចនាសម្ព័ន្ធដែលរារាំងវា។ បើកឯកសារ .htaccess របស់អ្នក ហើយលុបច្បាប់ទាំងអស់ដែលរឹតត្បិតការចូលប្រើសរសេរឯកសារ ឬរារាំងការបង្កើតឯកសារ PHP។ សម្រាប់ Nginx សូមពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធគេហទំព័ររបស់អ្នកសម្រាប់ការរឹតបន្តឹងដូចជាផ្លូវ root read only ឬ create_file off ហើយលុបវាចេញ។
សេណារីយ៉ូមួយទៀតគឺថា ម៉ាស៊ីននិម្មិត ឬការបង្ហោះពពកទម្ងន់ស្រាលខ្លួនវារឹតត្បិតការបង្កើតឯកសារ PHP នៅក្នុងថតឯកសារ root។ ក្នុងករណីនេះ អ្នកត្រូវទាក់ទងអ្នកផ្តល់សេវាបង្ហោះរបស់អ្នក ដើម្បីលុបការរឹតត្បិត ឬប្តូររបៀបការពាររបស់ Wordfence។ ចូលទៅកាន់ម៉ឺនុយ Wordfence, ជម្រើសទាំងអស់, WAF ហើយផ្លាស់ប្តូររបៀបម៉ាស៊ីនការពារទៅជាការការពារបន្ថែម ដើម្បីរំលងការបង្កើតឯកសារ root។
ដំណោះស្រាយទី 5: ជម្លោះកម្មវិធីជំនួយបណ្តាលឱ្យមានការរារាំង
កម្មវិធីជំនួយសម្រាប់ caching ឬ security មួយចំនួនអាចរារាំងប្រតិបត្តិការនេះ។ បិទកម្មវិធីជំនួយ caching ដូចជា WP Rocket, W3 Total Cache និង LiteSpeed Cache ជាបណ្ដោះអាសន្ន ក៏ដូចជាកម្មវិធីជំនួយសុវត្ថិភាពដូចជា Sucuri និង iThemes Security។ បន្ទាប់មក សម្អាត cache និង opcache របស់ម៉ាស៊ីនមេ ហើយចាប់ផ្តើមសេវាកម្ម PHP ឡើងវិញ។
systemctl restart php8.3-fpmលំដាប់នៃការដោះស្រាយបញ្ហារហ័ស (វាត្រូវបានណែនាំឱ្យអនុវត្តតាមជំហានតាមលំដាប់លំដោយ)
ខ្ញុំស្នើឱ្យអ្នកធ្វើតាមលំដាប់នេះដើម្បីជៀសវាងការរញ៉េរញ៉ៃ។ ដំបូង សូមបង្រួបបង្រួមសិទ្ធិ និងភាពជាម្ចាស់កម្មសិទ្ធិ។ នេះមានប្រូបាប៊ីលីតេខ្ពស់បំផុតក្នុងការដោះស្រាយបញ្ហា។ ប្រសិនបើវាមិនដំណើរការទេ សូមចាប់ផ្តើម PHP-FPM ឡើងវិញ ហើយធ្វើឱ្យកម្មវិធីខាងក្រោយស្រស់ឡើងវិញ។ ប្រសិនបើវានៅតែមិនដំណើរការ សូមបង្កើតឯកសារថ្មីដោយដៃ ហើយកែប្រែ wp-config។ បន្ទាប់មកពិនិត្យមើលថាតើការកំណត់រចនាសម្ព័ន្ធ Nginx ឬ Apache របស់អ្នកកំពុងរារាំងការបង្កើតឯកសារ PHP ថ្មីនៅក្នុងថតឯកសារ root ដែរឬទេ។ ជាចុងក្រោយ សូមពិចារណាប្តូររបៀបជញ្ជាំងភ្លើង។
រឿងមួយដែលខ្ញុំត្រូវតែរំលឹកអ្នកគឺថា អ្នកមិនគួរកំណត់សិទ្ធិទៅ 777 ឡើយ។ សិទ្ធិថតឯកសារគួរតែមាន 755 និងសិទ្ធិឯកសារគួរតែមាន 644; នោះជាស្តង់ដារ។ ការកំណត់សិទ្ធិទៅ 777 នឹងបង្ហាញគេហទំព័ររបស់អ្នកដោយផ្ទាល់ ដែលបង្កហានិភ័យសុវត្ថិភាពខ្ពស់ខ្លាំង។ ប្រសិនបើអ្នកត្រូវបានគេលួចចូល វានឹងយឺតពេលក្នុងការសោកស្តាយវា។
និយាយឱ្យត្រង់ទៅ ខ្ញុំមិនប្រាកដថាដំណោះស្រាយទាំងនេះនឹងដំណើរការសម្រាប់ស្ថានភាពរបស់អ្នកឬអត់ទេ ប៉ុន្តែខ្ញុំបានចែករំលែកពីគ្រោះថ្នាក់ដែលខ្ញុំបានជួបប្រទះ និងវិធីសាស្រ្តដែលខ្ញុំបានរកឃើញ។ ប្រសិនបើអ្នកទទួលបានសារកំហុសផ្សេងទៀត សូមថតរូបអេក្រង់ ហើយផ្ញើវាមកខ្ញុំ ហើយខ្ញុំនឹងពិនិត្យមើលម្តងទៀត។
ដោយសារអ្នកបានអានដល់ចំណុចនេះ ប្រសិនបើអ្នកយល់ថាវាមានប្រយោជន៍ សូមចូលចិត្ត និងចែករំលែកវា។ ប្រសិនបើអ្នកចង់ទទួលបានព័ត៌មានថ្មីៗមុនគេ អ្នកក៏អាចតាមដានខ្ញុំបានដែរ!
សូមអរគុណសម្រាប់ការអានអត្ថបទរបស់ខ្ញុំ។ ជួបគ្នាពេលក្រោយ។
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ឯកសារបង្រៀន "ដំណោះស្រាយពេញលេញសម្រាប់ភាពអសមត្ថភាពរបស់ WordPress Wordfence ក្នុងការបង្កើត wordfence-waf.php" ដែលបានចែករំលែកនៅទីនេះអាចមានប្រយោជន៍សម្រាប់អ្នក។
សូមស្វាគមន៍ចំពោះការចែករំលែកតំណភ្ជាប់នៃអត្ថបទនេះ៖https://www.chenweiliang.com/cwl-34337.html
