اس مضمون میں، ہم آپ کو مرحلہ وار ہدایات دیں گے کہ لینکس چلانے والے سرور پر ویب ماحول کو کیسے ترتیب دیا جائے۔ سب سے پہلے، آپ کو یہ سمجھنے کی ضرورت ہے کہ ایک عام ویب سرور چند بات چیت کرنے والے اجزاء پر مشتمل ہوتا ہے:
- HTTP سرور
- پروگرامنگ زبان کا ترجمان
- ڈیٹا بیس مینجمنٹ سسٹم (DBMS)
اپنی ویب سائٹ کو منظم کرنے کے لیے آپ کو مواد کے انتظام کے نظام (CMS)، ڈیٹا بیس کے انتظام کے لیے ایک ویب انٹرفیس، اور FTP رسائی بھی ترتیب دینے کی ضرورت ہوگی۔
آئیے لینکس پر ایک بہت مشہور کنفیگریشن Apache-PHP-MySQL(MariaDB) ترتیب دینے پر غور کریں۔ ہم vsftpd ftp سرور، phpMyAdmin - ڈیٹا بیس مینجمنٹ کے لیے ایک ویب انٹرفیس، اور مواد کے انتظام کا نظام ورڈپریس بھی انسٹال کریں گے۔
براہ کرم شروع کرنے کے لئے VPS سرور آرڈر کریں۔ or سرشار سرور. مثال کے طور پر ہم نے جامد IP ایڈریس کے ساتھ ایک ورچوئل سرور استعمال کیا جو Ubuntu Server 18.04 چلا رہا ہے۔ تمام کمانڈز روٹ صارف کے ذریعہ چلائے گئے تھے۔
اپاچی HTTP سرور کنفیگریشن
1. تنصیب
apt install apache2
جب انسٹالیشن مکمل ہو جائے تو براؤزر کھولیں اور چیک کریں۔ "http://[server's_ip_address]"
اگر آپ اوپر والے اسکرین شاٹ پر اس طرح کا استقبالیہ صفحہ دیکھتے ہیں، تو اس کا مطلب ہے کہ آپ کا HTTP سرور کام کر رہا ہے۔
2. ایک ٹیسٹ صفحہ بنائیں
ویب سائٹ کے لیے پہلے سے طے شدہ روٹ ڈائرکٹری ہے۔ "/var/www/html". یہ وہ جگہ ہے جہاں آپ کو خوش آمدید صفحہ مل سکتا ہے جو آپ نے ابھی دیکھا ہے۔ آئیے ایک علیحدہ ڈائریکٹری بنائیں "/var/www/sites" ورچوئل ہوسٹس اور سب فولڈر کے لیے "/var/www/sites/site1" آپ کی ٹیسٹ ویب سائٹ کے انڈیکس پیج کے ساتھ۔
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
نتیجے میں فائل "/var/www/sites/site1/index.html" HTML کوڈ کی صرف ایک لائن پر مشتمل ہونا چاہئے:
<H1>Welcome</H1>
3. اپاچی سرور کنفیگریشن
ویب سائٹس کی کنفیگریشن فائلیں موجود ہیں۔ "/etc/apache2/sites-available/" کیٹلاگ آئیے فائل سے ڈیفالٹ کنفیگریشن لیتے ہوئے ایک نئے ورچوئل ہوسٹ کے لیے کنفیگریشن فائل بناتے ہیں۔ "000-default.conf" ایک بنیاد کے طور پر.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
فائل کھولیں "site1.conf" اور تبدیل کریں "دستاویز روٹ" وصف اپنی ویب سائٹ کے راستے کو قدر کے طور پر رکھیں، تو ہمارے معاملے میں یہ ہے۔ "/var/www/sites/site1"
اس مرحلے پر ہمیں متعدد ویب سائٹس کے بیک وقت آپریشن کو ترتیب دینے کی ضرورت نہیں ہے، لہذا ہم پہلے سے طے شدہ ویب سائٹ کو غیر فعال کر سکتے ہیں اور نئی سائٹ کو فعال کر سکتے ہیں۔ تبدیلیاں لاگو کرنے کے لیے سرور کنفیگریشن کو دوبارہ لوڈ کریں۔
a2dissite 000-default
a2ensite site1
systemctl reload apache2
لنک کھولیں "http://[سرور کا _ip_address]" دوبارہ اور یقینی بنائیں کہ ڈیفالٹ ویلکم پیج کے بجائے ہمارے پاس ہمارا نیا صفحہ ہے۔
ہم نے اپنے HTTP سرور کی ترتیب مکمل کر لی ہے اور ہم اگلے مرحلے پر جا سکتے ہیں۔
FTP سرور کی ترتیب
1. تنصیب
آئیے اپنا ایف ٹی پی سرور اور ایک اضافی پیکیج انسٹال کریں۔ "db-util"، کہ ہمیں ورچوئل صارفین کو ترتیب دینے کی ضرورت ہوگی۔
apt install vsftpd db-util
2. مقامی اکاؤنٹ بنائیں
vsftpd سرور ہمیں انتہائی لچکدار طریقے سے رسائی کی اجازتوں کو ترتیب دینے کی اجازت دیتا ہے۔ اپنے کاموں کے لیے ہمیں ایف ٹی پی صارفین کو درج ذیل فراہم کرنے کی ضرورت ہے:
- کے مواد تک مکمل رسائی "/var/www/sites/";
- اوپر جو کچھ ہے اسے غیر فعال کریں۔ "/var/www/";
- ورچوئل اکاؤنٹ کے ساتھ کنکشن؛
ایک مقامی اکاؤنٹ بنائیں "مجازی" لاگ ان کی اجازت کے بغیر لیکن ہوم فولڈر تک رسائی کے ساتھ "/var/www/". یہ اکاؤنٹ FTP صارفین سرور سے منسلک ہونے کے لیے استعمال کریں گے۔
useradd -d /var/www virtual
"جڑ" کا مالک ہو گا۔ "/var/www" فولڈر بطور ڈیفالٹ۔ ایف ٹی پی صارفین کو ویب سائٹس کے مواد میں ترمیم کرنے کے قابل بنانے کے لیے، آئیے اس کے مالک کو تبدیل کرتے ہیں۔ "/var/www/sites/" کے ذیلی فولڈرز سمیت "مجازی".
chown -R virtual:root /var/www/sites
نتیجے کے طور پر، صارف "مجازی" کے مواد کو دیکھ سکیں گے۔ "/var/www/" اور میں لکھیں "/var/www/sites/" ذیلی فولڈر۔
3. کنفیگریشن
بنیادی ترتیب فائل میں ہے۔ "/etc/vsftpd.conf"، تو آئیے اسے کھولیں اور اسے درج ذیل میں ترمیم کریں:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. ڈیٹا بیس بنائیں
ورچوئل اکاؤنٹس کا ڈیٹا ذخیرہ کرنے کے لیے آپ کو ایک ڈیٹا بیس کی ضرورت ہوگی۔
پہلے، ایک سادہ ٹیکسٹ فائل بنائیں "users.txt" ہوم فولڈر میں اور ورچوئل صارفین کی رسائی کی تفصیلات (لاگ ان اور پاس ورڈ) کو ہر دوسری لائن میں محفوظ کریں۔ مثال کے طور پر، ہمیں لاگ ان کے ساتھ ایک ورچوئل صارف کی ضرورت ہوگی۔ "ایف ٹی پی" اور پاس ورڈ "Qwe123". پھر فائل اس طرح نظر آئے گی:
ftp
Qwe123
آئیے ڈیٹا بیس بناتے ہیں۔
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
آئیے پہلے سے طے شدہ PAM فائل میں ترمیم کریں۔ "/etc/pam.d/vsftp" مندرجہ ذیل ہے:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
براہ کرم نوٹ کریں کہ کا راستہ "pam_userdb.so" لائبریری مختلف ہو سکتی ہے لیکن ضرورت پڑنے پر آپ اسے تبدیل کر سکتے ہیں۔
تبدیلیاں لاگو کرنے کے لیے vsftpd سرور کو دوبارہ لوڈ کریں۔
systemctl restart vsftpd
ہم نے FTP سرور کی تشکیل مکمل کر لی۔
کنکشن کی تفصیلات:
- ftp://[server's_ip_address]
- لاگ ان: ftp
- پاس ورڈ: Qwe123
پی ایچ پی سرور کی ترتیب
1. پی ایچ پی کی تنصیب
آج PHP کا تازہ ترین مستحکم ورژن php 7.4.5 ہے جو Ubuntu کے سرکاری ذخیروں میں شامل نہیں ہے۔ آئیے تھرڈ پارٹی ریپوزٹری کو جوڑتے ہیں اور پی ایچ پی کا تازہ ترین ورژن انسٹال کرتے ہیں۔
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. چیک کریں
پی ایچ پی کو چلانے کے لیے ویب پیج کی فائل ہونی چاہیے۔ ".php" توسیع آئیے اپنے ٹیسٹ پیج کا نام تبدیل کریں:
cd /var/www/sites/site1/
mv index.html index.php
فائل میں درج ذیل پی ایچ پی لائن شامل کریں۔ "/var/www/sites/site1/index.php"، تو فائل کو اس طرح نظر آنا چاہئے:
<H1>Welcome</H1>
<?php
phpinfo();
?>
تبدیلیاں محفوظ کریں اور براؤزر میں نتیجہ چیک کریں۔
اگر آپ فنکشن کا نتیجہ دیکھتے ہیں۔ "phpinfo()"پی ایچ پی کا ترجمان ٹھیک سے کام کر رہا ہے۔ اب اگلے مرحلے پر چلتے ہیں۔
MySQL (MariaDB) کنفیگریشن
1. تنصیب
آئیے MySQL کے لیے ماریا ڈی بی اور پی ایچ پی ماڈیول انسٹال کریں اور پھر اپاچی کو دوبارہ لوڈ کریں۔
apt install mariadb-server php-mysql
systemctl restart apache2
ٹیسٹ پیج کو ریفریش کریں اور پی ایچ پی کنفیگریشن ٹیبل میں سیکشن PDO پر جائیں۔ اگر آپ سیکشن تلاش کر سکتے ہیں "PDO_mysql"، پھر اس کا مطلب ہے کہ Mysql کا ڈرائیور صحیح طریقے سے انسٹال ہوا ہے۔
پھر ہمیں ماریا ڈی بی کی ابتدائی سیکیورٹی کنفیگریشن کرنی ہوگی اور اس کے لیے پاس ورڈ سیٹ کرنا ہوگا۔ "جڑ" صارف، ریموٹ رسائی کو غیر فعال کریں، اور تمام مہمان اکاؤنٹس کو حذف کریں۔
mysql_secure_installation
پہلے قدم پر، ہمیں داخل ہونا پڑے گا۔ "جڑ" DBMS تک رسائی کے لیے صارف کا پاس ورڈ یا پاس ورڈ نہ ہونے کی صورت میں Enter دبائیں۔ چونکہ کے لیے کوئی پاس ورڈ سیٹ نہیں ہے۔ "جڑ" تنصیب کے بعد صارف، صرف دبائیں "داخل کریں".
براہ کرم نوٹ کریں کہ MariaDB میں پہلے سے ہی اس کے اپنے اکاؤنٹس موجود ہیں جن کا OS اکاؤنٹس سے کوئی تعلق نہیں ہے۔ لہذا صرف وہی صارف ہے جس کے ساتھ ہم ماریا ڈی بی میں ڈیل کرتے ہیں۔ "جڑ".
اس کے بعد، کنفیگریٹر ہم سے روٹ یوزر کے لیے پاس ورڈ سیٹ کرنے کو کہے گا۔ قسم "Y" تصدیق کرنے اور نیا پاس ورڈ درج کرنے کے لیے۔ ہمارے معاملے میں، یہ ہے "Qwe123"
جواب "Y" باقی تمام سوالات کے آخر تک۔
ترتیب ہو گئی ہے!
ماریا ڈی بی تک رسائی کی تفصیلات:
- لاگ ان: جڑ
- پاس ورڈ: Qwe123
phpMyAdmin کنفیگریشن
1. تنصیب
آئیے پی ایچ پی کے لیے ضروری ایکسٹینشن انسٹال کرتے ہیں۔ mbstring.
apt install php-mbstring
آفیشل ریپوزٹری میں صرف phpMyAdmin کا پرانا ورژن ہے، تو آئیے نئے کو دستی طور پر انسٹال کریں۔
پروجیکٹ کی سرکاری ویب سائٹ کھولیں "https://www.phpmyadmin.net/اور تازہ ترین آرکائیو ڈاؤن لوڈ کریں۔
محفوظ شدہ دستاویزات کو سرور میں کاپی کریں۔ "/var/www/sites/" کسی بھی ایف ٹی پی کلائنٹ کا استعمال کرتے ہوئے فولڈر۔
فولڈر کو غیر محفوظ کریں اور اس کا نام تبدیل کریں۔ "phpMyAdmin". انسٹال کرنا نہ بھولیں۔ "انزپ" افادیت آرکائیو کو غیر محفوظ کرنے کے بعد آپ اسے حذف کر سکتے ہیں۔
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
درج ذیل فولڈر بنائیں "/var/www/sites/phpMyAdmin/tmp" عارضی فائلوں کے لیے اور ہر کسی کے لیے رسائی کو فعال کریں۔ اگر آپ ایسا نہیں کرتے ہیں تو، phpMyAdmin عارضی فولڈر تک رسائی سے انکار کی اطلاع دے گا۔
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. ایک عرف بنائیں
چونکہ phpMyAdmin ایک الگ ورچوئل ہوسٹ نہیں ہے اور روٹ ڈائرکٹری سے باہر واقع ہے، آئیے عرف کو کنفیگر کرتے ہیں۔
فائل کھولیں "/etc/apache2/mods-available/alias.conf" اور اس لائن کو شامل کریں:
Alias /pma “/var/www/sites/phpMyAdmin"
اس سیکشن کے اندر:
<IfModule alias_module>
</IfModule>
تبدیلیاں لاگو کرنے کے لیے اپاچی کو دوبارہ لوڈ کریں۔
systemctl reload apache2
عرف سیٹ ہے، لہذا ہم یہاں phpMyAdmin تک رسائی حاصل کر سکتے ہیں۔ "http://[server's_ip_address]/pma"۔
3. ڈیٹا بیس تیار کریں۔
چونکہ ہم نے ماریا ڈی بی کی ابتدائی کنفیگریشن کے دوران روٹ یوزر کے استعمال پر پابندی لگا دی ہے، اس لیے ہمیں تمام اجازتوں کے ساتھ ایک نیا اکاؤنٹ بنانا پڑے گا جو phpMyAdmin تک رسائی کے لیے استعمال کیا جائے گا۔
اس کے علاوہ، phpMyAdmin کی اضافی خصوصیات کو فعال کرنے کے لیے ہمیں اس تک رسائی کے لیے ایک سروس ڈیٹا بیس اور اکاؤنٹ کی ضرورت ہوگی۔
آئیے اکاؤنٹس بناتے ہیں۔
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
براہ کرم نوٹ کریں کہ دوسری درخواست میں ڈیٹا بیس کا نام بیک اسپارکس میں ہے “… آن `phpmyadmin`.* TO 'pma'@'localhost' کی شناخت کے ذریعے …”،
نتیجے میں، ماریا ڈی بی میں دو اکاؤنٹس بنائے جائیں گے:
- لاگ ان: pma، پاس ورڈ: Qwe123 مکمل رسائی، phpMyAdmin میں لاگ ان کرنے کے لیے استعمال کیا جائے گا
- لاگ ان: pmaservice، پاس ورڈ: Qwe123 اضافی خصوصیات کے کام کرنے کے لیے سروس اکاؤنٹ درکار ہے۔
اگلے مرحلے پر، ہم ان تفصیلات کو کنفیگریشن فائل میں سیٹ کریں گے۔ "config.inc.php".
پھر ہمیں فائل سے ڈیٹا بیس درآمد کرنے کی ضرورت ہوگی۔ "phpMyAdmin/sql/create_tables.sql".
آئیے اسے phpMyAdmin کی مدد سے درآمد کرتے ہیں۔
لنک کھولیں "http://[server's_ip_address]/pma"
لاگ ان درج کریں "پی ایم اے" اور پاس ورڈ "Qwe123"
کو دیکھیے "درآمد"پر کلک کریں، "فائل کو منتخب کریں" اور فائل کو منتخب کریں۔ "sql/create_tables.sql" phpMyAdmin کی روٹ ڈائرکٹری میں۔ آپ کے کمپیوٹر پر فولڈر ہونا چاہئے۔ "phpMyAdmin" فائلوں کے ساتھ۔ اگر ضروری ہو تو اسے غیر محفوظ کریں۔
کلک کریں "اگلے" درآمد شروع کرنے کے لئے.
4. کنفیگریشن
آئیے ٹیمپلیٹ سے کنفیگریشن فائل کاپی کرتے ہیں۔
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
آئیے کنفیگریشن فائل کو کھولتے ہیں۔ "/var/www/sites/phpMyAdmin/config.inc.php" اور درج ذیل تبدیلیاں کریں:
انتساب کے لیے بے ترتیب 32 حروف کی قدر مقرر کریں۔ "$cfg['blowfish_secret']". اس کے لیے کوئی بھی پاس ورڈ جنریٹر استعمال کریں۔
کی تمام لائنوں سے تبصرہ ہٹا دیں۔ "phpMyAdmin کنفیگریشن اسٹوریج کی ترتیبات" سیکشن کریں اور ماریا ڈی بی کے سروس اکاؤنٹ کا لاگ ان اور پاس ورڈ سیٹ کریں۔ "کنٹرولر" اور "کنٹرول پاس" اس کے مطابق صفات. ہمارے معاملے میں، یہ ہے pmaservice اور Qwe123.
تبدیلیوں کو محفوظ کریں.
phpMyadmin کے لیے تفصیلات تک رسائی:
- http://[server’s_ip_address]/pma/
- لاگ ان: پی ایم اے
- پاس ورڈ: Qwe123
لینکس سرور پر ورڈپریس کو انسٹال اور کنفیگر کرنے کا طریقہ
1. ورڈپریس پیکج اور فائلوں کی جگہ کا تعین
WP کی سرکاری ویب سائٹ پر جائیں "https://ru.wordpress.org/اور آرکائیو کو اپنے مقامی پی سی پر ڈاؤن لوڈ کریں۔
محفوظ شدہ دستاویزات کو سرور پر اپ لوڈ کریں۔ "/var/www/sites/" فولڈر اور اسے غیر محفوظ کریں "ورڈپریس”فولڈر۔
کے مندرجات کو کاپی کریں۔ "/var/www/sites/wordpress/" کے روٹ فولڈر "/var/www/sites/site1/" ویب سائٹ.
چونکہ ہم نے فائلوں کو کنسول کے ذریعے روٹ کی اجازت کے ساتھ کاپی کیا ہے، آئیے اس کے مالک کو تبدیل کرتے ہیں۔ "/var/www/sites/" کے مواد سمیت فولڈر "مجازی". یہ کلائنٹ کے ذریعے ایف ٹی پی کنکشن کے لیے مکمل رسائی کو فعال کرنے کے لیے درکار ہے۔
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. ورڈپریس کے لیے ڈیٹا بیس بنائیں
phpMyAdmin میں لاگ ان کریں اور "ڈیٹا بیس بنائیں" پر کلک کریں۔ ہمارے معاملے میں "wordpress_db" میں ایک صوابدیدی ڈیٹا بیس کا نام بتائیں اور "تخلیق کریں" بٹن پر کلک کریں۔
بائیں سیکشن میں نیا ڈیٹا بیس منتخب کریں اور کلک کریں۔ "مراعات"
پھر کلک کریں "صارف اکاؤنٹ شامل کریں".
لاگ ان اور پاس ورڈ درج کریں (wpservice / Qwe123) کھلی کھڑکی میں، چیک کریں۔ "wordpress_db میں تمام مراعات دیں" اور پر کلک کریں "اگلے"
اگلے صفحے پر کلک کریں۔ "سب منسوخ کریں" ڈیٹا بیس کی سطح پر تمام مراعات کو دوبارہ ترتیب دینے کے لیے اور کلک کریں۔ "اگلے".
3. لینکس سرور پر ورڈپریس کنفیگریشن
اپنی ویب سائٹ کی روٹ ڈائرکٹری پر جائیں اور ٹیمپلیٹ سے کنفیگریشن فائل کاپی کریں۔
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
کھولو "wp-config.php" فائل کریں اور ڈیٹا بیس کنکشن کے پیرامیٹرز درج کریں جو ہم نے پچھلے مرحلے پر بنائے تھے اور تبدیلیاں محفوظ کریں۔
4. CMS ورڈپریس انسٹال کریں۔
براؤزر میں درج ذیل لنک کو کھولیں۔ "http://[server's_ip_address]/wp-admin/install.php".
تمام کھیتوں کو بھریں اور کلک کریں۔ "ورڈپریس انسٹال کریں". بے ترتیب صارف نام اور پاس ورڈ سیٹ کریں۔ ہمارے معاملے میں، یہ ہے wpadmin اور Qwe123 اس کے مطابق.
یہ تفصیلات ورڈپریس تک رسائی کے لیے استعمال ہوں گی۔
انسٹالیشن مکمل کرنے کے بعد، لنک کھولیں۔ "http://[server's_ip_address]/wp-login.php"رسائی کی تفصیلات درج کریں، اور ورڈپریس میں لاگ ان کریں۔
آپ کو مرکزی صفحہ پر ورڈپریس ٹیمپلیٹس میں سے ایک دیکھنا چاہئے۔
ترتیب مکمل ہو گئی ہے۔
ورڈپریس تک رسائی کی تفصیلات:
- http://[server’s_ip_address]/wp-login.php
- لاگ ان: wpadmin
- پاس ورڈ: Qwe123