WordPress Wordfence-ის მიერ wordfence-waf.php-ის შექმნის შეუძლებლობის სრული სახელმძღვანელო

ვიღაცამ ახსენა, რომ Wordfence-ის თავის ვებსაიტზე ინსტალაციის შემდეგ, მას გამუდმებით უშვებდა შეცდომებს, რომლებიც წერდა, რომ ძირეულ დირექტორიაში wordfence-waf.php ფაილის შექმნა ვერ ხერხდებოდა. ვთხოვე, ეკრანის ანაბეჭდი გამოეგზავნა; შეცდომის შეტყობინება მხოლოდ ერთი სტრიქონი იყო, სადაც ეწერა, რომ პრობლემა ფაილის ნებართვასთან იყო დაკავშირებული.

ცოტა ხანს დავფიქრდი და მივხვდი, რომ მსგავსი რამ ადრეც შემხვედრია. დიდი ხანი ვცდილობდი ამის გარკვევას, თითქმის მეგონა, რომ ჰოსტინგის პროვაიდერი რაღაცას გეგმავდა. აღმოჩნდა, რომ პრობლემა ნებართვებსა და საკუთრებაში არსებულ უფლებებს ეხებოდა, თუმცა ჰოსტინგის მართვის პანელის ლოგიკა შეიძლება ძალიან დამაბნეველი იყოს.

WordPress Wordfence-ის მიერ wordfence-waf.php-ის შექმნის შეუძლებლობის სრული სახელმძღვანელო

ჯერ განვმარტავ, თუ რას წარმოადგენს ეს wordfence-waf.php.

ეს სინამდვილეში Wordfence firewall-ის დამცავი ფაილია, რომელიც უნდა იყოს ჩაწერილი ვებსაიტის root დირექტორიაში, wp-config.php-ის დონეზე.

ამ ფაილის გარეშე, firewall-ი ვერ გაეშვება; ეს იგივეა, რაც საკეტი დაამონტაჟეთ, მაგრამ გასაღების ჩასმა შეუძლებელია.

ვარიანტი 1: ერთი დაწკაპუნებით ნებართვის მოდიფიკაცია საკონტროლო პანელის (BT Panel/) მეშვეობით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 644

cPanel უფრო ინტუიციურია. გახსენით ფაილების მენეჯერი, ჩართეთ „დაფარული ფაილების ჩვენება“ ზედა მარჯვენა კუთხეში, დააწკაპუნეთ მაუსის მარჯვენა ღილაკით დირექტორიაზე და შეცვალეთ ნებართვები 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 ბექენდში და ხელახლა ჩართეთ firewall; დიდი ალბათობით, ეს პრობლემას მოაგვარებს.

ვარიანტი 3: ხელით შექმენით wordfence-waf.php (შესანიშნავი გადაწყვეტა, როდესაც ნებართვები დაბლოკილია)

თუ SSH პანელის მეშვეობით ვერაფერს შეცვლით, გააკეთეთ ეს ხელით. შექმენით ფაილი სახელწოდებით wordfence-waf.php root დირექტორიაში და ჩასვით შემდეგი კოდი მასში.

<?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. firewall ავტომატურად ამოიცნობს მას და აღარ შეგვატყობინებს შეცდომებზე.

ვარიანტი 4: შეამოწმეთ წესები, რომლებიც ზღუდავენ ჩაწერის წვდომას.

ზოგჯერ პრობლემა ნებართვებში კი არა, კონფიგურაციის ფაილშია. გახსენით თქვენი .htaccess ფაილი და წაშალეთ ყველა წესი, რომელიც ზღუდავს ფაილზე ჩაწერის წვდომას ან ხელს უშლის PHP ფაილის შექმნას. Nginx-ის შემთხვევაში, შეამოწმეთ თქვენი საიტის კონფიგურაცია ისეთი შეზღუდვებისთვის, როგორიცაა root path მხოლოდ წაკითხვის ან create_file off და წაშალეთ ისინი.

კიდევ ერთი სცენარი არის ის, რომ ვირტუალური ჰოსტი ან მსუბუქი ღრუბლოვანი ჰოსტინგი თავად ზღუდავს PHP ფაილების გენერირებას root დირექტორიაში. ამ შემთხვევაში, შეზღუდვის მოსახსნელად ან Wordfence-ის დაცვის რეჟიმის გადასართავად, თქვენ უნდა დაუკავშირდეთ თქვენს ჰოსტინგის პროვაიდერს. გადადით Wordfence-ის მენიუში, ყველა პარამეტრი, WAF და შეცვალეთ დაცვის ძრავის რეჟიმი გაფართოებულ დაცვაზე, root ფაილის შექმნის გვერდის ავლით.

გამოსავალი 5: დანამატების კონფლიქტები იწვევს დაბლოკვას

ზოგიერთმა ქეშირების ან უსაფრთხოების მოდულმა შეიძლება დაბლოკოს ეს ოპერაცია. დროებით გამორთეთ ქეშირების მოდულები, როგორიცაა WP Rocket, W3 Total Cache და LiteSpeed ​​​​Cache, ასევე უსაფრთხოების მოდულები, როგორიცაა Sucuri და iThemes Security. შემდეგ გაასუფთავეთ სერვერის ქეში და opcache და გადატვირთეთ PHP სერვისი.

systemctl restart php8.3-fpm

სწრაფი პრობლემების მოგვარების თანმიმდევრობა (რეკომენდებულია ნაბიჯების თანმიმდევრობით შესრულება)

გირჩევთ, რომ თავიდან აიცილოთ არეულობა, დაიცვათ ეს თანმიმდევრობა. პირველ რიგში, გააერთიანეთ ნებართვები და საკუთრება; ამ შემთხვევაში პრობლემის გადაჭრის ალბათობა ყველაზე მაღალია. თუ ეს არ იმუშავებს, გადატვირთეთ PHP-FPM და განაახლეთ ბექენდი. თუ ეს მაინც არ იმუშავებს, ხელით შექმენით ახალი ფაილი და შეცვალეთ wp-config. შემდეგ შეამოწმეთ, ხომ არ ბლოკავს თქვენი Nginx ან Apache კონფიგურაცია ახალი PHP ფაილების შექმნას root დირექტორიაში. და ბოლოს, განიხილეთ firewall-ის რეჟიმების შეცვლა.

ერთი რამ უნდა შეგახსენოთ, რომ არასდროს არ უნდა დააყენოთ ნებართვები 777-ზე. საქაღალდის ნებართვები უნდა იყოს 755, ხოლო ფაილის ნებართვები 644; ეს არის სტანდარტი. ნებართვების 777-ზე დაყენება პირდაპირ გამოაშკარავებს თქვენს ვებსაიტს, რაც უკიდურესად მაღალ უსაფრთხოების რისკს შექმნის. თუ ჰაკერები გატეხენ, სინანულისთვის უკვე გვიანი იქნება.

სიმართლე გითხრათ, არ ვარ დარწმუნებული, გამოგადგებათ თუ არა ეს გადაწყვეტილებები თქვენს სიტუაციაში, მაგრამ გაგიზიარეთ ის ხარვეზები, რომლებიც წავაწყდი და ის მეთოდები, რომლებიც აღმოვაჩინე. თუ სხვა შეცდომის შეტყობინებებს მიიღებთ, გადაუღეთ ეკრანის ანაბეჭდი და გამომიგზავნეთ, რათა კიდევ ერთხელ გადავხედო.

რადგან აქამდე წაიკითხეთ, თუ სასარგებლოდ მიგაჩნიათ, გთხოვთ, მოიწონოთ და გააზიაროთ. თუ გსურთ, რომ პირველმა მიიღოთ განახლებები, ასევე შეგიძლიათ გამომყვეთ!

გმადლობთ, რომ წაიკითხეთ ჩემი სტატია. შემდეგ ჯერზე შევხვდებით.

იმედი ჩენ ვეილიანგის ბლოგი ( https://www.chenweiliang.com/ აქ გაზიარებული სახელმძღვანელო „WordFence-ის მიერ wordfence-waf.php-ის შექმნის უუნარობის სრული გადაწყვეტა“, შესაძლოა, თქვენთვის სასარგებლო იყოს.

კეთილი იყოს თქვენი მობრძანება ამ სტატიის ბმულის გასაზიარებლად:https://www.chenweiliang.com/cwl-34337.html

მეტი ფარული ხრიკის გასახსნელად🔑, კეთილი იყოს თქვენი მობრძანება ჩვენს Telegram არხზე!

გააზიარეთ და მოიწონეთ თუ მოგეწონათ! თქვენი გაზიარებები და მოწონებები ჩვენი მუდმივი მოტივაციაა!

 

评论

თქვენი ელფოსტის მისამართი არ გამოქვეყნდება. გამოყენებულია აუცილებელი ველები * ლეიბლი

გადაახვიეთ ზემოთ