مواد پر جائیں
کنفیگریشن

ورڈپریس wp-config.php فائل: اس کا کام اور ترمیم کا طریقہ

wp-config.php میں ورڈپریس کا ڈیٹابیس لاگ اِن، سیکیورٹی کیز اور سائٹ سیٹنگز ہوتی ہیں۔ جانیں یہ کہاں ہوتی ہے، ہر حصہ کیا کرتا ہے اور محفوظ ترمیم کیسے کریں۔

شائع شدہ

wp-config.php وہ فائل ہے جو ورڈپریس کو بتاتی ہے کہ اپنے ڈیٹابیس سے کیسے جڑنا ہے اور کیسے چلنا ہے۔ یہ عام طور پر آپ کی انسٹال کے روٹ فولڈر میں، wp-admin اور wp-content کے ساتھ ہوتی ہے۔ آپ “That’s all, stop editing!” (بس اتنا ہی، ترمیم بند کریں!) والی لائن کے اوپر محفوظ طریقے سے سیٹنگز شامل یا تبدیل کر سکتے ہیں، اور اس لائن کے نیچے کوڈ کے دونوں بلاکس کو نہیں چھیڑنا چاہیے۔ پہلے بیک اپ رکھیں، کیونکہ ایک ٹائپنگ کی غلطی پوری سائٹ بند کر سکتی ہے۔

اہم نکات

  • اس فائل میں آپ کا ڈیٹابیس پاس ورڈ اور سیکیورٹی کیز ہوتی ہیں، اس لیے اسے پاس ورڈ کی طرح سمجھیں اور اس کا مواد کبھی کسی فورم یا سپورٹ چیٹ میں نہ ڈالیں۔
  • کسٹم سیٹنگز “stop editing” لائن کے اوپر جاتی ہیں۔ اس کے نیچے کی آخری لائن ورڈپریس کو لوڈ کرتی ہے، اور اس کے بعد کی سیٹنگ بہت دیر سے آتی ہے۔
  • ورڈپریس کے ڈاؤن لوڈ میں wp-config-sample.php شامل ہوتی ہے۔ اصل wp-config.php سیٹ اپ کے دوران بنتی ہے۔
  • لائیو سائٹ پر صرف وہ لائن بدل کر $table_prefix تبدیل نہ کریں۔ ورڈپریس ایسے برتاؤ کرے گا جیسے وہ انسٹال ہی نہیں۔

wp-config.php کہاں ملے گی

SFTP سے جڑیں یا اپنے ہوسٹ کا فائل مینیجر کھولیں، پھر اس فولڈر میں جائیں جس میں wp-admin، wp-includes اور wp-content ہیں۔ ورڈپریس کی دستاویزات اسے آپ کی ورڈپریس فائل ڈائریکٹری کا روٹ کہتی ہیں۔

اگر وہ وہاں نہ ہو تو ایک فولڈر اوپر دیکھیں۔ ورڈپریس کا لوڈر پہلے انسٹال فولڈر اور پھر پیرنٹ فولڈر دیکھتا ہے، اور اگر پیرنٹ فولڈر میں اپنی wp-settings.php ہو تو اسے چھوڑ دیتا ہے، کیونکہ اس کا مطلب ہے کہ وہاں ورڈپریس کی کوئی اور انسٹال موجود ہے۔

اگر دونوں جگہوں پر فائل نہ ہو تو ورڈپریس وزیٹرز کو اپنی سیٹ اپ اسکرین پر بھیج دیتا ہے۔ وہ اسکرین یہ فائل wp-config-sample.php سے بناتی ہے۔ جب وہ فولڈر میں لکھ نہ سکے تو آپ کو وہ متن دکھاتی ہے جو نئی فائل میں دستی طور پر پیسٹ کرنا ہے۔

ہر ڈیفالٹ سیکشن کیا کرتا ہے

wp-config-sample.php ٹیمپلیٹ ہے، اور اس میں یہ حصے اسی ترتیب سے ہوتے ہیں:

سیکشناس میں کیا ہوتا ہےکیا آپ اسے بدل سکتے ہیں؟
DB_NAME, DB_USER, DB_PASSWORD, DB_HOSTڈیٹابیس لاگ اِن۔ نمونہ ہوسٹ کے طور پر localhost استعمال کرتا ہے، اور اصل ویلیوز آپ کا ویب ہوسٹ دے سکتا ہے۔ہاں، جب آپ کی ڈیٹابیس تفصیلات بدلیں۔ غلط ویلیو سے ڈیٹابیس کنکشن قائم کرنے کا ایرر آتا ہے۔
DB_CHARSET, DB_COLLATEڈیٹابیس میں متن کیسے محفوظ ہوتا ہے۔ ڈیفالٹ utf8mb4 اور ایک خالی ویلیو ہیں۔DB_COLLATE کے بارے میں نمونے کا اپنا تبصرہ کہتا ہے کہ شک ہو تو اسے نہ بدلیں۔
AUTH_KEY سے NONCE_SALT تکلاگ اِن کوکیز کے لیے استعمال ہونے والی آٹھ سیکیورٹی کیز اور سالٹس۔ہاں۔ انہیں بدلنے سے تمام صارفین لاگ آؤٹ ہو جاتے ہیں۔
$table_prefixہر ڈیٹابیس ٹیبل کے نام کے شروع کا متن، ڈیفالٹ wp_۔صرف انسٹال کے وقت، الا یہ کہ آپ ٹیبلز کے نام بھی بدلیں اور ڈیٹابیس کی وہ محفوظ اندراجات بھی اپ ڈیٹ کریں جن کے نام میں یہ پریفکس ہے۔
WP_DEBUGڈیبگ موڈ، نمونے میں false پر سیٹ۔ہاں۔ ڈیبگ لاگ کی جگہ والی گائیڈ دکھاتی ہے کہ ایررز کو فائل میں کیسے بھیجیں۔
“custom values” (کسٹم ویلیوز) والا تبصرہآپ کی اپنی سیٹنگز کے لیے خالی جگہ، جو “stop editing” لائن پر ختم ہوتی ہے۔ہاں، آپ کے اضافے یہیں جاتے ہیں۔
ABSPATH اور wp-settings.php والی لائنورڈپریس کا راستہ، پھر وہ لائن جو باقی سب لوڈ کرتی ہے۔نہیں۔ انہیں جیسا ہے ویسا رہنے دیں۔

نئی کیز بس ایک کلک دور ہیں: WordPress.org کی سیکرٹ کی سروس ہر بار لوڈ کرنے پر نیا سیٹ دیتی ہے۔ آٹھوں لائنوں کو نئے سیٹ سے بدل دیں۔

پرانی فائلوں میں “custom values” والا تبصرہ نہیں ہو سکتا اور “Happy publishing” (خوش اشاعت) کی جگہ “Happy blogging” (خوش بلاگنگ) لکھا ہو سکتا ہے۔ دونوں کام کرتی ہیں اور اصول وہی رہتا ہے: اپنی سیٹنگز اس لائن کے اوپر شامل کریں۔

وہ سیٹنگز جو لوگ عموماً بدلتے ہیں

ان میں سے ہر ایک ایک لائن کی ہے۔ یہ سب wp-config.php کی دستاویزات سے ہیں، اور ڈیفالٹ ویلیوز ورڈپریس کی default-constants.php سے ہیں۔

// Memory for the front end, then for wp-admin
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

// Keep at most 3 revisions per post (false turns revisions off)
define( 'WP_POST_REVISIONS', 3 );

// Autosave every 180 seconds
define( 'AUTOSAVE_INTERVAL', 180 );

// Empty the trash after 7 days
define( 'EMPTY_TRASH_DAYS', 7 );

// Remove the theme and plugin file editor from wp-admin
define( 'DISALLOW_FILE_EDIT', true );

// Force HTTPS for logins and wp-admin
define( 'FORCE_SSL_ADMIN', true );

// Set the site addresses here
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

صرف وہ لائنیں کاپی کریں جن کی آپ کو ضرورت ہے۔ ان میں سے کچھ کی تفصیلات جاننے کے لائق ہیں:

  • میموری: ورڈپریس کا ڈیفالٹ 40M ہے، ملٹی سائٹ پر 64M، اور wp-admin کے لیے 256M، الا یہ کہ PHP پہلے سے زیادہ کی اجازت دیتا ہو۔ اگر آپ کا ہوسٹ حد بدلنے کی اجازت نہ دے تو ورڈپریس وہی حد استعمال کرتا ہے جو PHP کے پاس پہلے سے ہے۔ ایسا ہونے پر کیا کرنا ہے، یہ میموری ختم ہونے کی گائیڈ بتاتی ہے۔
  • ریویژنز: یہ ڈیفالٹ طور پر آن ہوتی ہیں۔ بند کرنے کے لیے false رکھیں، یا حد لگانے کے لیے کوئی نمبر۔
  • آٹو سیو اور ٹریش: ڈیفالٹ 60 سیکنڈ اور 30 دن ہیں۔ EMPTY_TRASH_DAYS کو 0 کرنے سے ٹریش بند ہو جاتا ہے، اور دستاویزات خبردار کرتی ہیں کہ پھر کسی کے “Delete Permanently” (مستقل طور پر حذف کریں) پر کلک کرنے پر ورڈپریس تصدیق نہیں مانگے گا۔
  • فائل ایڈیٹر: ہارڈننگ گائیڈ کہتی ہے کہ یہ کسی حملہ آور کو نقصان دہ فائلیں اپ لوڈ کرنے سے نہیں روکے گا، البتہ کچھ حملے روک سکتا ہے۔ DISALLOW_FILE_MODS اس سے آگے جاتا ہے اور پلگ اِن اور تھیم کی انسٹال اور اپ ڈیٹس بھی روک دیتا ہے۔
  • HTTPS: جب “ورڈپریس پتہ” کی سیٹنگ پہلے ہی https سے شروع ہو تو ورڈپریس خود FORCE_SSL_ADMIN کو true کر دیتا ہے۔ یہ لائن صرف تب کچھ بدلتی ہے جب پتہ https سے شروع نہ ہو۔
  • سائٹ کے پتے: یہ ڈیٹابیس میں محفوظ چیز کو بدلے بغیر محفوظ ویلیوز پر فوقیت لیتے ہیں۔ https:// والا حصہ بھی لکھیں۔

ایک سیٹنگ زیادہ منصوبہ بندی مانگتی ہے۔ define( 'DISABLE_WP_CRON', true ); پیج وزٹس کو شیڈول کام شروع کرنے سے روکتا ہے، اس لیے اسے آن کرنے سے پہلے wp-cron.php کے لیے سرور کرون جاب بنائیں، ورنہ شیڈول پوسٹس اور دوسرے وقت پر ہونے والے کام نہیں چلیں گے۔

wp-config.php میں محفوظ طریقے سے ترمیم کیسے کریں

  1. پہلے ایک کاپی ڈاؤن لوڈ کریں۔ اسے اپنے کمپیوٹر پر رکھیں۔ سرور پر wp-config.php.bak جیسے نام سے چھوڑی گئی کاپی براؤزر میں پڑھی جا سکتی ہے، کیونکہ سرور اب اسے PHP نہیں سمجھتا۔
  2. فائل کو سادہ ٹیکسٹ ایڈیٹر میں کھولیں۔ ورڈپریس کی ترمیم گائیڈ Notepad++، Sublime Text اور Visual Studio Code کو قابل قبول کہتی ہے، اور Google Docs اور Microsoft Word سے خبردار کرتی ہے کیونکہ ورڈ پروسیسرز کوٹیشن مارکس بدل دیتے ہیں اور ایسا کوڈ شامل کر سکتے ہیں جو فائلیں خراب کر دے۔
  3. “stop editing” لائن ڈھونڈیں اور اپنی نئی لائنیں بالکل اس کے اوپر رکھیں۔ اگر سیٹنگ اوپر کہیں پہلے سے ڈیفائن ہے تو اسی لائن کو بدلیں۔
  4. محفوظ کر کے اپ لوڈ کریں، پھر اپنی سائٹ ایک پرائیویٹ براؤزر ونڈو میں کھولیں، اور wp-admin کا ایک پیج بھی۔
  5. اگر کچھ خراب ہو جائے تو اپنی کاپی واپس رکھیں۔ یہ ترمیم کو واپس کر دیتا ہے چاہے wp-admin لوڈ نہ ہو رہا ہو۔

فائل کو ویب روٹ سے اوپر منتقل کرنا

ہارڈننگ گائیڈ کہتی ہے کہ wp-config.php آپ کی ورڈپریس انسٹال سے ایک فولڈر اوپر رکھی جا سکتی ہے، اور لوڈر کا کوڈ یہ کسی اضافی سیٹنگ کے بغیر سنبھال لیتا ہے۔ فائل منتقل کریں، پھر دیکھیں کہ سائٹ اب بھی لوڈ ہو رہی ہے۔ اس منتقلی کی دو حدیں ہیں:

  • پیرنٹ فولڈر میں ورڈپریس کی کوئی اور انسٹال نہیں ہو سکتی۔ لوڈر ایسے پیرنٹ فولڈر کو نظر انداز کرتا ہے جس میں اپنی wp-settings.php ہو۔
  • ایک لیول اوپر صرف تب نجی ہے جب ورڈپریس ویب روٹ میں ہو۔ اگر ورڈپریس /blog/ جیسے سب فولڈر میں ہے تو ایک لیول اوپر عموماً پھر بھی عوامی ہوتا ہے۔

یہی گائیڈ کہتی ہے کہ کچھ لوگوں کے مطابق اس منتقلی کا سیکیورٹی فائدہ بہت کم ہے، اور بے احتیاطی سے کرنے پر یہ سنگین کمزوریاں پیدا کر سکتی ہے۔ اس لیے اسے اختیاری سمجھیں۔ Apache کے لیے گائیڈ آپ کی .htaccess فائل کے شروع میں رکھنے کو یہ بلاک بھی دیتی ہے، جو فائل تک براہ راست درخواستیں مسترد کرتا ہے:

<Files "wp-config.php">
Require all denied
</Files>

ہماری .htaccess سیکیورٹی گائیڈ اس رول کو دوسرے رولز کے ساتھ بیان کرتی ہے۔

wp-config.php کی فائل پرمیشنز

ورڈپریس کی دستاویزات صورت حال کے مطابق کچھ مختلف نمبر دیتی ہیں:

  • ہارڈننگ گائیڈ کہتی ہے کہ فائل کو صرف آپ اور ویب سرور پڑھ سکیں، جس کا مطلب اس کے مطابق عموماً 400 یا 440 ہے۔
  • فائل پرمیشنز گائیڈ suexec والی شیئرڈ ہوسٹنگ پر 440 یا 400 کہتی ہے، تاکہ سرور کے دوسرے صارفین اسے نہ پڑھ سکیں۔ یہ محفوظ مثال کے طور پر 600 بھی دکھاتی ہے۔
  • عام ورڈپریس فائلوں کے لیے وہی گائیڈ 644 یا 640 کہتی ہے۔

کون سا نمبر کام کرے گا، یہ اس پر منحصر ہے کہ آپ کا ویب سرور کس سسٹم یوزر کے طور پر چلتا ہے۔ ویب سرور کا فائل پڑھ سکنا ضروری ہے، اس لیے اگر تبدیلی کے بعد سائٹ لوڈ ہونا بند ہو جائے تو پچھلی ویلیو واپس لائیں اور اپنے ہوسٹ سے پوچھیں کہ ان کے سیٹ اپ کے لیے کون سی ٹھیک ہے۔

عام غلطیاں

  • سیٹنگ کو wp-settings.php لائن کے بعد پیسٹ کرنا۔ وہ لائن ورڈپریس کو لوڈ کرتی ہے اور اس کے ڈیفالٹ سیٹ کرتی ہے۔ PHP کا کانسٹنٹ اسکرپٹ چلنے کے دوران بدل نہیں سکتا، اس لیے آپ کی لائن کا کوئی اثر نہیں ہوتا۔
  • ایک ہی سیٹنگ کو دو بار ڈیفائن کرنا۔ پہلی لائن ویلیو سیٹ کرتی ہے اور دوسری اسے بدل نہیں سکتی۔ PHP مینوئل کے مطابق کانسٹنٹ کو دوبارہ ڈکلیئر کرنا PHP 8.5 سے ڈیپریکیٹڈ ہے، اس لیے کوئی پیغام بھی آ سکتا ہے۔ شامل کرنے سے پہلے فائل میں نام تلاش کر لیں۔
  • true یا false کے گرد کوٹیشن لگانا۔ 'false' ایک غیر خالی اسٹرنگ ہے، اور PHP اسے true مانتا ہے۔ false بغیر کوٹیشن کے لکھیں۔ '256M' جیسے سائز کو البتہ کوٹیشن چاہیے۔
  • ورڈ پروسیسر یا ویب پیج سے آنے والے مڑے ہوئے کوٹس۔ PHP کو سیدھے کوٹس چاہئیں، اس لیے مڑے ہوئے کوٹس ایسا ایرر دیتے ہیں جو سائٹ کو لوڈ ہونے سے روک دیتا ہے۔
  • لائیو سائٹ پر ڈیبگ ایررز دکھانا۔ WP_DEBUG_DISPLAY کا ڈیفالٹ true ہے، اس لیے اگر آپ صرف WP_DEBUG آن کریں تو ایررز وزیٹرز کو پیج پر نظر آتے ہیں۔ ڈیبگ لاگ کی جگہ والی گائیڈ دکھاتی ہے کہ انہیں فائل میں کیسے بھیجیں۔
  • WP_ALLOW_REPAIR کو آن چھوڑ دینا۔ دستاویزات کہتی ہیں کہ اسے صرف ضرورت پر آن کریں اور مسئلہ حل ہوتے ہی بند کر دیں۔

اکثر پوچھے جانے والے سوالات

ورڈپریس میں wp-config.php کیا ہے؟ یہ وہ کنفیگریشن فائل ہے جو ورڈپریس شروع ہوتے وقت لوڈ کرتا ہے۔ اس میں آپ کا ڈیٹابیس لاگ اِن، سیکیورٹی کیز اور ٹیبل پری فکس ہوتے ہیں، اور یہیں آپ WP_DEBUG یا WP_MEMORY_LIMIT جیسی سیٹنگز شامل کرتے ہیں۔

wp-config.php فائل کہاں ہوتی ہے؟ عام طور پر آپ کی ورڈپریس انسٹال کے روٹ فولڈر میں، جہاں wp-admin، wp-includes اور wp-content بھی ہوتے ہیں۔ ورڈپریس اسے انسٹال سے ایک فولڈر اوپر بھی قبول کرتا ہے، بشرطیکہ اس فولڈر میں wp-settings.php نہ ہو۔

wp-config.php میں کوڈ کہاں شامل کروں؟ اس لائن کے اوپر جس پر That’s all, stop editing! Happy publishing. (بس اتنا ہی، ترمیم بند کریں! خوش اشاعت۔) لکھا ہے۔ پرانی فائلوں میں Happy blogging. (خوش بلاگنگ۔) لکھا ہوتا ہے۔ اس کے نیچے کی آخری لائن ورڈپریس کو لوڈ کرتی ہے، اس لیے اس لائن کے بعد رکھی گئی سیٹنگ بہت دیر سے آتی ہے۔

کیا wp-config.php میں ترمیم کرنا محفوظ ہے؟ ہاں، اگر آپ بیک اپ رکھیں اور سادہ ٹیکسٹ ایڈیٹر استعمال کریں۔ ایک ٹائپنگ کی غلطی wp-admin سمیت پوری سائٹ کو لوڈ ہونے سے روک سکتی ہے، اس لیے پہلے ایک کاپی ڈاؤن لوڈ کر لیں۔ ترمیم کے بعد سائٹ خراب ہو جائے تو وہ کاپی واپس رکھ دیں۔

اگر میں wp-config.php ڈیلیٹ کر دوں تو کیا ہوگا؟ ورڈپریس اپنا ڈیٹابیس لاگ اِن نہیں ڈھونڈ پاتا اور سیٹ اپ کا عمل شروع کر دیتا ہے، جس میں کنفیگریشن فائل بنانے کا کہا جاتا ہے۔ آپ کا مواد ڈیٹابیس میں محفوظ رہتا ہے، اس لیے بیک اپ بحال کرنے یا انہی تفصیلات کے ساتھ فائل دوبارہ بنانے سے سائٹ پھر جڑ جاتی ہے۔

wp-config.php کی پرمیشنز کیا ہونی چاہئیں؟ ورڈپریس کی ہارڈننگ گائیڈ کہتی ہے کہ اسے صرف آپ اور ویب سرور پڑھ سکیں، جس کا مطلب عموماً 400 یا 440 ہے۔ اس کی فائل پرمیشنز گائیڈ 600 بھی دکھاتی ہے۔ ویب سرور کا فائل پڑھ سکنا پھر بھی ضروری ہے، اس لیے اگر سائٹ لوڈ ہونا بند ہو جائے تو اپنے ہوسٹ سے پوچھیں۔

ذرائع


مفت wp-config.php جنریٹر سے اپنی ضرورت کی سیٹنگز ہاتھ سے ٹائپ کیے بغیر بنائیں، نئی سیکیورٹی کیز سمیت۔

FAQ

سوالات

ورڈپریس میں wp-config.php کیا ہے؟

یہ وہ کنفیگریشن فائل ہے جو ورڈپریس شروع ہوتے وقت لوڈ کرتا ہے۔ اس میں آپ کا ڈیٹابیس لاگ اِن، سیکیورٹی کیز اور ٹیبل پری فکس ہوتے ہیں، اور یہیں آپ WP_DEBUG یا WP_MEMORY_LIMIT جیسی سیٹنگز شامل کرتے ہیں۔

wp-config.php فائل کہاں ہوتی ہے؟

عام طور پر آپ کی ورڈپریس انسٹال کے روٹ فولڈر میں، جہاں wp-admin، wp-includes اور wp-content بھی ہوتے ہیں۔ ورڈپریس اسے انسٹال سے ایک فولڈر اوپر بھی قبول کرتا ہے، بشرطیکہ اس فولڈر میں wp-settings.php نہ ہو۔

wp-config.php میں کوڈ کہاں شامل کروں؟

اس لائن کے اوپر جس پر That's all, stop editing! Happy publishing. (بس اتنا ہی، ترمیم بند کریں! خوش اشاعت۔) لکھا ہے۔ پرانی فائلوں میں Happy blogging. (خوش بلاگنگ۔) لکھا ہوتا ہے۔ اس کے نیچے کی آخری لائن ورڈپریس کو لوڈ کرتی ہے، اس لیے اس لائن کے بعد رکھی گئی سیٹنگ بہت دیر سے آتی ہے۔

کیا wp-config.php میں ترمیم کرنا محفوظ ہے؟

ہاں، اگر آپ بیک اپ رکھیں اور سادہ ٹیکسٹ ایڈیٹر استعمال کریں۔ ایک ٹائپنگ کی غلطی wp-admin سمیت پوری سائٹ کو لوڈ ہونے سے روک سکتی ہے، اس لیے پہلے ایک کاپی ڈاؤن لوڈ کر لیں۔ ترمیم کے بعد سائٹ خراب ہو جائے تو وہ کاپی واپس رکھ دیں۔

اگر میں wp-config.php ڈیلیٹ کر دوں تو کیا ہوگا؟

ورڈپریس اپنا ڈیٹابیس لاگ اِن نہیں ڈھونڈ پاتا اور سیٹ اپ کا عمل شروع کر دیتا ہے، جس میں کنفیگریشن فائل بنانے کا کہا جاتا ہے۔ آپ کا مواد ڈیٹابیس میں محفوظ رہتا ہے، اس لیے بیک اپ بحال کرنے یا انہی تفصیلات کے ساتھ فائل دوبارہ بنانے سے سائٹ پھر جڑ جاتی ہے۔

wp-config.php کی پرمیشنز کیا ہونی چاہئیں؟

ورڈپریس کی ہارڈننگ گائیڈ کہتی ہے کہ اسے صرف آپ اور ویب سرور پڑھ سکیں، جس کا مطلب عموماً 400 یا 440 ہے۔ اس کی فائل پرمیشنز گائیڈ 600 بھی دکھاتی ہے۔ ویب سرور کا فائل پڑھ سکنا پھر بھی ضروری ہے، اس لیے اگر سائٹ لوڈ ہونا بند ہو جائے تو اپنے ہوسٹ سے پوچھیں۔