ہم اپنے بازار کو وسعت دیتے رہتے ہیں۔ ہم نے حال ہی میں آپ کو بتایا کہ کیسے Gitlab کی تصویر بنائی، اور اس ہفتے ڈروپل ہمارے بازار میں نمودار ہوا۔
ہم آپ کو بتاتے ہیں کہ ہم نے اسے کیوں چنا اور تصویر کیسے بنائی گئی۔
ڈروپل — کسی بھی قسم کی ویب سائٹ بنانے کے لیے ایک آسان اور طاقتور پلیٹ فارم: مائیکرو سائیٹس اور بلاگز سے لے کر بڑے سماجی پروجیکٹس تک، ویب ایپلیکیشنز کی بنیاد کے طور پر بھی استعمال کیا جاتا ہے، پی ایچ پی میں لکھا جاتا ہے اور متعلقہ ڈیٹا بیس کو ڈیٹا اسٹوریج کے طور پر استعمال کیا جاتا ہے۔
Drupal 9 میں ورژن 8.9 میں متعارف کرائی گئی تمام خصوصیات شامل ہیں۔ ورژن 9 اور ورژن 8 کے درمیان اہم فرق یہ ہے کہ پلیٹ فارم نومبر 2021 کے بعد اپ ڈیٹس اور سیکیورٹی اصلاحات حاصل کرتا رہے گا۔ ورژن 9 اپ ڈیٹ کے عمل کو بھی آسان بناتا ہے، ورژن 8 سے اپ گریڈ کرنے کے عمل کو اور بھی آسان بناتا ہے۔
سرور کی ضروریات
ڈروپل استعمال کرنے کے لیے، 2 جی بی ریم اور 2 سی پی یو کور استعمال کرنے کی سفارش کی جاتی ہے۔
مین ڈروپل فائلیں تقریباً 100 ایم بی لیتی ہیں، اس کے علاوہ آپ کو امیجز، ڈیٹا بیس، تھیمز، اضافی ماڈیولز اور بیک اپس کو اسٹور کرنے کے لیے جگہ کی ضرورت ہوگی، جو آپ کی سائٹ کے سائز پر منحصر ہوگی۔
ڈروپل 9 کو کم از کم حد کے ساتھ پی ایچ پی 7.4 یا اس سے زیادہ کی ضرورت ہے (memory_limit) 64 MB میموری کے لیے؛ اگر اضافی ماڈیولز استعمال کیے جائیں تو 128 MB کو انسٹال کرنے کی سفارش کی جاتی ہے۔
ڈروپل Apache یا Nginx کو ویب سرور کے طور پر اور MySQL، PostgreSQL یا SQLite کو ڈیٹا بیس کے طور پر استعمال کر سکتا ہے۔
ہم Nginx اور MySQL کا استعمال کرتے ہوئے Drupal انسٹال کریں گے۔
تنصیب
آئیے انسٹال شدہ پیکجوں کو تازہ ترین ورژن میں اپ ڈیٹ کریں:
sudo dnf update -y
آئیے http/80 اور https/443 بندرگاہوں پر آنے والی ٹریفک کے لیے مستقل اجازت شامل کریں:
چونکہ مرکزی سینٹوس ریپوزٹری فی الحال پی ایچ پی 7.2 استعمال کرتی ہے، آئیے پی ایچ پی 7.4 (ڈروپل 9 کے لیے کم از کم ورژن) کے ساتھ ایک REMI ذخیرہ شامل کریں۔
ایسا کرنے کے لیے، EPEL ریپوزٹری شامل کریں (REMI ریپوزٹری کے لیے درکار):
چونکہ ہم VDS کے لیے ایک ٹیمپلیٹ بنا رہے ہیں، اور وہ سست ہو سکتے ہیں، اس لیے ہم 30 سیکنڈ کی mysqld شروع کرنے کی تاخیر کا اضافہ کریں گے، ورنہ ابتدائی سسٹم بوٹ کے دوران شروع ہونے والے سرور کے ساتھ مسائل ہو سکتے ہیں:
sudo sed -i '/Group=mysql/a
ExecStartPre=/bin/sleep 30
' /usr/lib/systemd/system/mysqld.service
آئیے اس گروپ اور صارف کو تبدیل کریں جس کے تحت nginx /etc/php-fpm.d/www.conf میں تبدیلیاں کرکے چلیں گے:
sudo sed -i --follow-symlinks 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf
sudo sed -i --follow-symlinks 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf
آئیے پی ایچ پی سیشن ڈائرکٹری کے مالک کو اس کے مطابق nginx میں تبدیل کریں:
sudo chown -R nginx. /var/lib/php/session
آئیے کنفیگریشن فائل /etc/nginx/nginx.conf سے تبصروں کے ساتھ لائنوں کو ہٹا دیں (تاکہ sed کے لیے کوئی ڈبل ٹرگرز نہ ہوں):
sudo sed -i -e '/^[ t]*#/d' /etc/nginx/nginx.conf
/etc/nginx/nginx.conf میں gzip کمپریشن کی ترتیبات شامل کریں۔
آئیے انڈیکس فائل index.php کی سیٹنگز کو /etc/nginx/nginx.conf میں شامل کریں:
sudo sed -i '/ root /usr/share/nginx/html;/a
index index.php index.html index.htm;
' /etc/nginx/nginx.conf
آئیے پہلے سے طے شدہ سرور کے لیے ترتیبات شامل کریں: php-fpm ساکٹ کے ذریعے PHP پروسیسنگ، جامد فائلوں کے لیے لاگ کو غیر فعال کریں، ایکسپائر ٹائم میں اضافہ کریں، favicon.ico اور robots.txt کے لیے رسائی اور ایرر لاگ کو غیر فعال کریں، اور .ht تک رسائی سے انکار کریں۔ سب کے لیے فائلیں:
آئیے انسٹالیشن فائلوں کے ساتھ آرکائیو کو ڈیلیٹ کرتے ہیں:
rm -f ./tar.gz
آئیے nginx فائلوں کے مالک کو تفویض کریں:
chown -R nginx. /usr/share/nginx/html
اس مرحلے پر ہم سرور کو بند کر دیں گے اور اسنیپ شاٹ لیں گے:
shutdown -h now
سنیپ شاٹ سے وی ڈی ایس شروع کرنے کے بعد، ہم اسکرپٹ کو چلا کر MySQL سرور کا ابتدائی سیٹ اپ کریں گے:
mysql_secure_installation
آئیے پاس ورڈ کی توثیق کرنے والے کو فعال کریں:
Would you like to setup VALIDATE PASSWORD component? : y
آئیے MySQL روٹ صارف کے لیے پاس ورڈ سیٹ کریں:
New password:
Re-enter new password:
آئیے گمنام صارفین کو ہٹا دیں:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
آئیے جڑ کو دور سے جڑنے سے روکیں:
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
آئیے ٹیسٹ ڈیٹا بیس کو حذف کریں:
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
آئیے استحقاق کی میزیں دوبارہ لوڈ کریں:
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
اس کے بعد، انسٹالیشن مکمل کرنے کے لیے، ہم جا سکتے ہیں۔ vps_ip_address
اس ایڈریس پر ہم ڈروپل انسٹالیشن کا صفحہ دیکھیں گے۔
آئیے استعمال کرنے کے لیے زبان کا انتخاب کریں۔ مثال کے طور پر: روسی۔ "محفوظ کریں اور جاری رکھیں" پر کلک کریں
آئیے ایک انسٹالیشن پروفائل منتخب کریں (ڈیمو صرف اپنے آپ کو سسٹم سے واقف کرنے کے لیے استعمال کیا جاتا ہے)۔ ہمارے معاملے میں، اسے "معیاری" ہونے دیں۔
اگلے صفحے پر ہم ڈیٹا بیس کو ایک نام دیں گے، مثال کے طور پر "ڈروپل"۔ آئیے mysql_secure_installation چلاتے وقت ڈیٹا بیس کے صارف نام کی جڑ اور پاس ورڈ کی نشاندہی کریں۔ "محفوظ کریں اور جاری رکھیں" پر کلک کریں۔
آئیے ترجمے کی تنصیب اور اپ ڈیٹ مکمل ہونے کا انتظار کریں (اس عمل میں کئی منٹ لگ سکتے ہیں)۔
ہم سائٹ کے نام کی نشاندہی کریں گے، سائٹ کا ای میل سیٹ کریں گے (جس سائٹ کی جانب سے اطلاعات بھیجی جائیں گی)، لاگ ان، پاس ورڈ اور ڈروپل ایڈمنسٹریٹر اکاؤنٹ کا ای میل۔ ہم علاقائی ترتیبات میں ملک اور ٹائم زون بھی ترتیب دیں گے۔ اور "محفوظ کریں اور جاری رکھیں" پر کلک کرکے انسٹالیشن مکمل کریں۔
اس کے بعد، آپ بنائے گئے ڈروپل ایڈمنسٹریٹر لاگ ان اور پاس ورڈ کے ساتھ کنٹرول پینل میں جا سکتے ہیں۔
HTTPS ترتیب دینا (اختیاری)
HTTPS کو کنفیگر کرنے کے لیے، VDS کا ایک درست DNS نام ہونا چاہیے، اس میں وضاحت کریں۔
/etc/nginx/nginx.conf
سرور سیکشن میں سرور کا نام (مثال کے طور پر):
server_name domainname.ru;
آئیے nginx کو دوبارہ شروع کریں:
service nginx restart
آئیے certbot لانچ کریں:
sudo /usr/local/bin/certbot-auto --nginx
اپنا ای میل درج کریں، سروس کی شرائط (A) سے اتفاق کریں، نیوز لیٹر کو سبسکرائب کریں (اختیاری) (N)، وہ ڈومین نام منتخب کریں جن کے لیے آپ سرٹیفکیٹ جاری کرنا چاہتے ہیں (ہر ایک کے لیے درج کریں)۔
اگر سب کچھ غلطیوں کے بغیر ہوا، تو ہم سرٹیفکیٹس کے کامیاب اجراء اور سرور کی ترتیب کے بارے میں ایک پیغام دیکھیں گے:
Congratulations! You have successfully enabled ...
اس کے بعد، پورٹ 80 کے کنکشن کو 443 (https) پر ری ڈائریکٹ کر دیا جائے گا۔
سرٹیفکیٹس کو خود بخود اپ ڈیٹ کرنے کے لیے /etc/crontab میں شامل کریں:
اس ترتیب کا مقصد متحرک base_url کے تعین سے وابستہ مسئلے کے حل کے طور پر ہے، اور اسے HTTP HOST ہیڈر حملوں کو روکنے کے لیے ڈیزائن کیا گیا ہے (جب آپ کی سائٹ کو لگتا ہے کہ یہ کوئی اور ہے)۔
ایسا کرنے کے لیے، آپ کو سیٹنگ فائل میں سائٹ کے لیے بھروسہ مند ڈومین نام بتانے کی ضرورت ہے۔
فائل میں
/usr/share/nginx/html/sites/default/settings.php آئیے غیر تبصرہ کریں یا اصل سائٹ کے ناموں کے نمونوں کے ساتھ ایک ترتیب شامل کریں، مثال کے طور پر:
ڈروپل اے پی سی یو کو سپورٹ کرتا ہے - متبادل پی ایچ پی یوزر کیشے، ورژن 8 اور 9 اے پی سی یو کا قلیل مدتی مقامی کیشے کے طور پر پچھلے ورژنز کے مقابلے میں زیادہ استعمال کرتے ہیں۔ ڈیفالٹ کیش سائز (32 MB) زیادہ تر سائٹس کے لیے موزوں ہے، اور 512 MB سے زیادہ نہیں ہو سکتا۔
چالو کرنے کے لیے، پی ایچ پی اے پی سی یو ماڈیول انسٹال کریں:
dnf -y install php-pecl-apcu
nginx اور php-fpm کو دوبارہ شروع کریں:
service nginx restart
service php-fpm restart
اگر آپ کیش کے لیے تجویز کردہ میموری سائز کے ساتھ روسی زبان اور APCu استعمال کرتے ہیں، تو آپ کو کنٹرول پینل میں ایک انتباہ نظر آ سکتا ہے کہ کیش کے لیے مختص میموری کا سائز تجویز کردہ سے مختلف ہے، لیکن درحقیقت سب کچھ درست طریقے سے کام کر رہا ہے، اور غلط انتباہ کو اگلی اپ ڈیٹس میں درست کر دیا جائے گا۔
یا اگر وارننگ آپ کی آنکھوں کو تکلیف دیتی ہے تو آپ استعمال کر سکتے ہیں۔ آفس سے متعلقہ پیچ.
ہم آپ کو یاد دلانا چاہیں گے کہ آپ ہمارے لیے ایک تصویر بھی بنا سکتے ہیں۔
حصہ لینے کے طریقے کے لیے تین اختیارات ہیں۔
تصویر خود تیار کریں اور اپنے بیلنس میں 3000 روبل حاصل کریں۔
اگر آپ فوری طور پر جنگ میں بھاگنے اور وہ تصویر بنانے کے لیے تیار ہیں جس کی آپ کو کمی ہے، تو ہم آپ کو آپ کے داخلی توازن میں 3000 روبل کے ساتھ کریڈٹ کریں گے - آپ اسے سرورز پر خرچ کر سکتے ہیں۔
سپورٹ کو بتائیں کہ آپ تصاویر بنانے اور جانچنے جا رہے ہیں۔
ہم آپ کو 3000 روبل کریڈٹ کریں گے اور اسنیپ شاٹس بنانے کی صلاحیت کو فعال کریں گے۔
صاف آپریٹنگ سسٹم کے ساتھ ایک ورچوئل سرور آرڈر کریں۔
اس VPS پر سافٹ ویئر انسٹال کریں اور اسے سیٹ کریں۔
سافٹ ویئر کی تعیناتی کے لیے ہدایات یا اسکرپٹ لکھیں۔
ترتیب شدہ سرور کے لیے ایک سنیپ شاٹ بنائیں
"سرور ٹیمپلیٹ" ڈراپ ڈاؤن فہرست میں پہلے سے بنائے گئے اسنیپ شاٹ کو منتخب کرکے ایک نیا ورچوئل سرور آرڈر کریں۔
سرور کی کامیاب تخلیق کی صورت میں، مرحلہ 6 پر موصول ہونے والے مواد کو تکنیکی معاونت پر منتقل کریں۔
کسی خرابی کی صورت میں، آپ سپورٹ کے ساتھ وجہ کی جانچ کر سکتے ہیں اور سیٹ اپ کو دہرا سکتے ہیں۔
کاروباری مالکان کے لیے: اپنا سافٹ ویئر پیش کریں۔
اگر آپ ایک سافٹ ویئر ڈویلپر ہیں جو VPS پر تعینات اور استعمال ہوتا ہے، تو ہم آپ کو بازار میں شامل کر سکتے ہیں۔ اس طرح ہم نئے صارفین، ٹریفک اور مرئیت لانے میں آپ کی مدد کر سکتے ہیں۔ ہمیں لکھیں۔
ہمیں کمنٹس میں بتائیں کہ آپ کو کون سی تصویر یاد آرہی ہے؟