این جی آئی این ایکس میں علیحدہ پی ایچ پی-ایف پی ایم پول کیسے مرتب کریں
شائع شدہ: 15 فروری، 2025 کو 11:53:19 AM UTC
اس مضمون میں ، میں متعدد پی ایچ پی -ایف پی ایم پولز کو چلانے اور فاسٹ سی جی آئی کے ذریعہ این جی آئی این ایکس کو ان سے مربوط کرنے کے لئے ضروری ترتیب کے اقدامات پر جاتا ہوں ، جس سے ورچوئل میزبانوں کے مابین عمل کی علیحدگی اور تنہائی کی اجازت ملتی ہے۔
How to Set Up Separate PHP-FPM Pools in NGINX
اس پوسٹ میں موجود معلومات این جی آئی این ایکس 1.4.6 اور پی ایچ پی-ایف پی ایم 5.5.9 پر مبنی ہیں جو اوبنٹو سرور 14.04 x64 پر چل رہے ہیں۔ یہ دوسرے ورژن کے لئے درست ہوسکتا ہے یا نہیں۔ (اپ ڈیٹ: میں تصدیق کر سکتا ہوں کہ اوبنٹو سرور 24.04، پی ایچ پی-ایف پی ایم 8.3 اور این جی آئی این ایکس 1.24.0 کے طور پر، اس پوسٹ میں تمام ہدایات اب بھی کام کرتی ہیں)
ایک ہی پول میں سب کچھ چلانے کے بجائے متعدد پی ایچ پی-ایف پی ایم چائلڈ پروسیس پول قائم کرنے کے بہت سے فوائد ہیں۔ سیکورٹی، علیحدگی / تنہائی اور وسائل کا انتظام چند اہم چیزوں کے طور پر ذہن میں آتا ہے۔
اس سے قطع نظر کہ آپ کا محرک کیا ہے، یہ پوسٹ آپ کو ایسا کرنے میں مدد کرے گی :-)
حصہ 1 - ایک نیا پی ایچ پی-ایف پی ایم پول مرتب کریں
سب سے پہلے ، آپ کو اس ڈائریکٹری کو تلاش کرنے کی ضرورت ہے جہاں پی ایچ پی -ایف پی ایم اس کے پول ترتیبات کو اسٹور کرتا ہے۔ اوبنٹو 14.04 پر ، یہ / وغیرہ / پی ایچ پی 5 / ایف پی ایم / پول ڈاٹ ڈی ہے۔ شاید وہاں پہلے سے ہی ایک فائل موجود ہے جسے www.conf کہا جاتا ہے ، جو پہلے سے طے شدہ پول کے لئے ترتیب رکھتا ہے۔ اگر آپ نے امکانات سے پہلے اس فائل کو نہیں دیکھا ہے تو آپ کو اس سے گزرنا چاہئے اور اپنے سیٹ اپ کے لئے اس میں موجود ترتیبات کو تبدیل کرنا چاہئے کیونکہ ڈیفالٹس کافی کم طاقت والے سرور کے لئے ہیں ، لیکن ابھی کے لئے صرف اس کی ایک کاپی بنائیں تاکہ ہمیں شروع سے شروع کرنے کی ضرورت نہ ہو۔
یقینا ، "مائی پول" کو اس چیز سے تبدیل کریں جو آپ اپنے پول کو کہنا چاہتے ہیں۔
اب نینو یا جو بھی ٹیکسٹ ایڈیٹر آپ پسند کرتے ہیں اس کا استعمال کرتے ہوئے نئی فائل کھولیں اور اسے اپنے مقصد کے مطابق ایڈجسٹ کریں۔ آپ شاید بچوں کے پروسیس نمبروں کو تبدیل کرنا چاہیں گے اور ممکنہ طور پر پول کس صارف اور گروپ کے تحت چلتا ہے ، لیکن دو ترتیبات جو آپ کو بالکل تبدیل کرنا ہوں گی وہ ہیں پول کا نام اور ساکٹ جو وہ سن رہا ہے ، ورنہ یہ موجودہ پول کے ساتھ ٹکراؤ کرے گا اور چیزیں کام کرنا بند کردیں گی۔
پول کا نام فائل کے اوپری حصے کے قریب ہے ، جو مربع بریکٹ میں بند ہے۔ پہلے سے طے شدہ طور پر یہ [www] ہے۔ جو کچھ بھی آپ چاہتے ہیں اسے تبدیل کریں۔ میں اسی طرح کا مشورہ دیتا ہوں جیسا کہ آپ نے کنفیگریشن فائل کا نام دیا ہے ، لہذا اس مثال کی خاطر اسے [مائی پول] میں تبدیل کریں۔ اگر آپ اسے تبدیل نہیں کرتے ہیں تو ، ایسا لگتا ہے کہ پی ایچ پی -ایف پی ایم صرف اس نام کے ساتھ پہلی کنفیگریشن فائل لوڈ کرے گا ، جس سے چیزوں کو توڑنے کا امکان ہے۔
اس کے بعد آپ کو وہ ساکٹ یا پتہ تبدیل کرنے کی ضرورت ہے جو آپ سن رہے ہیں ، جس کی وضاحت سننے کی ہدایت کے ذریعہ کی جاتی ہے۔ پہلے سے طے شدہ طور پر ، پی ایچ پی -ایف پی ایم یونیکس ساکٹ استعمال کرتا ہے لہذا آپ کی سننے کی ہدایت شاید اس طرح نظر آئے گی:
آپ اسے کسی بھی جائز نام میں تبدیل کرسکتے ہیں جو آپ چاہتے ہیں ، لیکن ایک بار پھر ، میں تجویز کرتا ہوں کہ کنفیگریشن فائل کے نام سے ملتی جلتی کسی چیز کے ساتھ چپکے رہیں ، تاکہ آپ مثال کے طور پر اسے سیٹ کرسکتے ہیں:
ٹھیک ہے، فائل محفوظ کریں اور ٹیکسٹ ایڈیٹر سے باہر نکلیں۔
حصہ 2 - NGINX ورچوئل میزبان ترتیب کو اپ ڈیٹ کریں
اب آپ کو این جی آئی این ایکس ورچوئل ہوسٹ فائل کو فاسٹ سی جی آئی کنفیگریشن کے ساتھ کھولنے کی ضرورت ہے جسے آپ کسی نئے پول میں تبدیل کرنا چاہتے ہیں - یا اس کے بجائے ، نئے ساکٹ سے جڑیں۔
اوبنٹو 14.04 پر پہلے سے طے شدہ طور پر ، یہ دستیاب / وغیرہ / نگنکس / سائٹس کے تحت ذخیرہ کیے جاتے ہیں ، لیکن کہیں اور بھی وضاحت کی جاسکتی ہے۔ آپ شاید سب سے بہتر جانتے ہیں کہ آپ کے مجازی میزبان کی تشکیل کہاں واقع ہے ;-)
اپنے پسندیدہ ٹیکسٹ ایڈیٹر میں متعلقہ کنفیگریشن فائل کھولیں اور پی ایچ پی-ایف پی ایم ساکٹ کی وضاحت کرنے والی fastcgi_pass ہدایت (جو مقام کے سیاق و سباق میں ہونا چاہئے) تلاش کریں۔ آپ کو اس قدر کو تبدیل کرنا ہوگا تاکہ یہ پہلے مرحلے کے تحت بنائے گئے نئے پی ایچ پی-ایف پی ایم پول تشکیل سے میل کھائے ، لہذا ہماری مثال کو جاری رکھتے ہوئے آپ اسے اس میں تبدیل کریں گے:
fastcgi_pass یونیکس:/وی اے آر/رن/پی ایچ پی 5-ایف پی ایم-مائی پول.سوک؛
پھر اس فائل کو بھی محفوظ اور بند کریں۔ آپ اب تقریبا ختم ہو چکے ہیں.
حصہ 3 - پی ایچ پی-ایف پی ایم اور این جی آئی این ایکس کو دوبارہ شروع کریں
آپ کے ذریعہ کی گئی ترتیب کی تبدیلیوں کو لاگو کرنے کے لئے ، پی ایچ پی -ایف پی ایم اور این جی آئی این ایکس دونوں کو دوبارہ شروع کریں۔ یہ دوبارہ شروع کرنے کے بجائے دوبارہ لوڈ کرنے کے لئے کافی ہوسکتا ہے ، لیکن مجھے لگتا ہے کہ یہ تھوڑا سا ہٹ اور مس ہے ، اس پر منحصر ہے کہ کون سی ترتیبات تبدیل کی گئی ہیں۔ خاص معاملے میں ، میں چاہتا تھا کہ پرانے پی ایچ پی - ایف پی ایم بچوں کے عمل فوری طور پر ختم ہوجائیں ، لہذا پی ایچ پی - ایف پی ایم کو دوبارہ شروع کرنے کی ضرورت تھی ، لیکن این جی آئی این ایکس کے لئے دوبارہ لوڈ کافی ہوسکتا ہے۔ اسے اپنے لئے آزمائیں.
sudo service nginx restart
اور ویلا، آپ کا کام ختم ہو گیا ہے. اگر آپ نے سب کچھ صحیح طریقے سے کیا ہے تو ، آپ نے جس ورچوئل میزبان میں ترمیم کی ہے اسے اب نیا پی ایچ پی -ایف پی ایم پول استعمال کرنا چاہئے اور کسی دوسرے ورچوئل میزبان کے ساتھ بچوں کے عمل کا اشتراک نہیں کرنا چاہئے۔