آرٹیکل ڈائرکٹری
کسی نے ذکر کیا کہ اپنی ویب سائٹ پر Wordfence انسٹال کرنے کے بعد، اسے یہ کہتے ہوئے غلطیاں آتی رہیں کہ یہ روٹ ڈائریکٹری میں wordfence-waf.php فائل نہیں بنا سکتا۔ میں نے اس سے کہا کہ وہ مجھے ایک اسکرین شاٹ بھیجے۔ غلطی کا پیغام صرف ایک لائن تھا، جس میں کہا گیا تھا کہ یہ فائل کی اجازت کا مسئلہ ہے۔
میں نے ایک لمحے کے لیے اس کے بارے میں سوچا، اور مجھے احساس ہوا کہ میں اس سے پہلے بھی اس کا سامنا کر چکا ہوں۔ میں نے اس کا پتہ لگانے کی کوشش میں عمریں گزاریں، تقریباً یہ سوچتے ہوئے کہ ہوسٹنگ فراہم کنندہ کسی چیز پر منحصر ہے۔ یہ اجازت اور ملکیت کا مسئلہ نکلا، لیکن ہوسٹنگ کنٹرول پینل کی منطق واقعی مبہم ہو سکتی ہے۔

مجھے پہلے واضح کرنے دو کہ یہ wordfence-waf.php کیا ہے۔
یہ دراصل Wordfence فائر وال کی پروٹیکشن فائل ہے، جسے ویب سائٹ کی روٹ ڈائرکٹری میں wp-config.php کی سطح پر لکھا جانا چاہیے۔
اس فائل کے بغیر، فائر وال شروع نہیں ہو سکتا؛ ایسا لگتا ہے کہ آپ نے تالا لگا دیا ہے لیکن چابی نہیں ڈالی جا سکتی۔
آپشن 1: کنٹرول پینل کے ذریعے ایک کلک کی اجازت میں ترمیم (BT Panel/)ہیسٹیا سی پی/cPanel)
اگر آپ BT Panel استعمال کر رہے ہیں، تو یہ دراصل سب سے آسان ہے۔ اپنی ویب سائٹ پر جائیں، متعلقہ سائٹ تلاش کریں، ترتیبات پر کلک کریں، پھر ڈائریکٹری پرمیشنز پر جائیں۔ ویب سائٹ کی روٹ ڈائریکٹری کی اجازت کو 755 اور تمام فائلوں کی اجازت کو 644 میں تبدیل کریں۔ پھر چیک کریں کہ آیا چلانے والا صارف "www" ہے۔ اگر نہیں، تو اسے تبدیل کریں. "مرمت کی اجازتیں" بٹن پر کلک کریں، اس کے ختم ہونے کا انتظار کریں، Wordfence کو ریفریش کریں، اور دوبارہ کوشش کریں۔
HestiaCP کے لیے، ویب سائٹ ایڈیٹنگ پیج پر جائیں اور "Allow write access to web 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 (جنرل) کے ذریعے دستی طور پر اجازتیں تبدیل کریںلینکس)
اگر کنٹرول پینل اسے ہینڈل نہیں کر سکتا تو 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 بیک اینڈ پر واپس جائیں اور فائر وال کو دوبارہ فعال کریں۔ یہ سب سے زیادہ امکان مسئلہ کو حل کرنا چاہئے.
آپشن 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 فائل کو کھولیں اور تمام قواعد کو حذف کریں جو فائل لکھنے تک رسائی کو محدود کرتے ہیں یا پی ایچ پی فائل کی تخلیق کو روکتے ہیں۔ Nginx کے لیے، روٹ پاتھ ریڈ اونلی یا create_file آف جیسی پابندیوں کے لیے اپنی سائٹ کی کنفیگریشن چیک کریں، اور انہیں ہٹا دیں۔
ایک اور منظر نامہ یہ ہے کہ ورچوئل ہوسٹ یا ہلکا پھلکا کلاؤڈ ہوسٹنگ خود روٹ ڈائرکٹری میں پی ایچ پی فائلوں کی نسل کو محدود کرتا ہے۔ اس صورت میں، آپ کو پابندی ہٹانے کے لیے اپنے ہوسٹنگ فراہم کنندہ سے رابطہ کرنے کی ضرورت ہے، یا Wordfence کے پروٹیکشن موڈ کو تبدیل کرنا ہوگا۔ Wordfence مینو، تمام آپشنز، WAF پر جائیں، اور روٹ فائل کی تخلیق کو نظرانداز کرنے کے لیے پروٹیکشن انجن موڈ کو Extended Protection میں تبدیل کریں۔
حل 5: پلگ ان میں تنازعات بلاک کرنے کا سبب بنتے ہیں۔
کچھ کیشنگ یا سیکیورٹی پلگ ان اس آپریشن کو روک سکتے ہیں۔ عارضی طور پر کیشنگ پلگ ان جیسے WP Rocket، W3 Total Cache، اور LiteSpeed Cache، نیز سیکیورٹی پلگ ان جیسے Sucuri اور iThemes Security کو غیر فعال کریں۔ پھر سرور کیشے اور opcache کو صاف کریں، اور پی ایچ پی سروس کو دوبارہ شروع کریں۔
systemctl restart php8.3-fpmفوری خرابیوں کا سراغ لگانے کا سلسلہ (اس کی سفارش کی جاتی ہے کہ ترتیب سے اقدامات پر عمل کریں)
میرا مشورہ ہے کہ گڑبڑ سے بچنے کے لیے آپ اس حکم پر عمل کریں۔ سب سے پہلے، اجازتوں اور ملکیت کو یکجا کریں۔ اس میں مسئلہ کو حل کرنے کا سب سے زیادہ امکان ہے۔ اگر یہ کام نہیں کرتا ہے تو، PHP-FPM کو دوبارہ شروع کریں اور بیک اینڈ کو تازہ کریں۔ اگر یہ اب بھی کام نہیں کرتا ہے تو، دستی طور پر ایک نئی فائل بنائیں اور wp-config میں ترمیم کریں۔ پھر چیک کریں کہ آیا آپ کی Nginx یا Apache کنفیگریشن روٹ ڈائرکٹری میں نئی PHP فائلوں کی تخلیق کو روک رہی ہے۔ آخر میں، فائر وال کے طریقوں کو تبدیل کرنے پر غور کریں۔
ایک چیز جو میں آپ کو یاد دلاتا ہوں وہ یہ ہے کہ آپ کو کبھی بھی اجازت 777 پر سیٹ نہیں کرنی چاہیے۔ فولڈر کی اجازت 755 اور فائل کی اجازت 644 ہونی چاہیے۔ یہ معیار ہے. 777 پر اجازتیں ترتیب دینے سے آپ کی ویب سائٹ براہ راست بے نقاب ہو جائے گی، جس سے سیکیورٹی کا انتہائی خطرہ ہو گا۔ اگر آپ ہیک ہو جاتے ہیں، تو افسوس کرنے میں بہت دیر ہو جائے گی۔
سچ پوچھیں تو، مجھے یقین نہیں ہے کہ آیا یہ حل آپ کی صورت حال کے لیے کارگر ثابت ہوں گے، لیکن میں نے ان خرابیوں کا اشتراک کیا ہے جن کا مجھے سامنا ہوا اور ان طریقوں کو جن کا میں نے پتہ لگایا۔ اگر آپ کو کوئی اور غلطی کا پیغام ملتا ہے، تو اسکرین شاٹ لیں اور مجھے بھیجیں، اور میں دوبارہ دیکھوں گا۔
چونکہ آپ نے ابھی تک یہ پڑھا ہے، اگر آپ کو یہ مفید لگا، تو براہ کرم اسے لائک اور شیئر کریں۔ اگر آپ پہلے اپ ڈیٹس حاصل کرنا چاہتے ہیں، تو آپ مجھے بھی فالو کر سکتے ہیں!
میرا مضمون پڑھنے کے لیے آپ کا شکریہ۔ اگلی بار ملتے ہیں۔
ہوپ چن ویلیانگ بلاگ ( https://www.chenweiliang.com/ یہاں شیئر کیا گیا ٹیوٹوریل "Wordfence Wordfence's Inability to Create wordfence-waf.php کا مکمل حل" آپ کے لیے مددگار ثابت ہو سکتا ہے۔
اس مضمون کا لنک شیئر کرنے میں خوش آمدید:https://www.chenweiliang.com/cwl-34337.html
