Home Knowledge base Skyline Cloud اوبنٹو پر LEMP اسٹیک (Nginx، MySQL، PHP) کیسے انسٹال کریں KNOWLEDGE BASE

اوبنٹو پر LEMP اسٹیک (Nginx، MySQL، PHP) کیسے انسٹال کریں

اوبنٹو 24.04 LTS پر پروڈکشن کے لیے تیار LEMP اسٹیک — Nginx، MySQL اور PHP-FPM — انسٹال اور کنفیگر کرنے کی واضح، مرحلہ وار رہنمائی، آزمودہ سرور بلاک اور PHP ٹیسٹ پیج کے ساتھ۔

اوبنٹو 24.04 پر LEMP اسٹیک (Nginx، MySQL، PHP) کیسے انسٹال کریں

اوبنٹو 24.04 LTS پر پروڈکشن کے لیے تیار LEMP اسٹیک — Nginx، MySQL اور PHP-FPM — انسٹال اور کنفیگر کرنے کی ایک واضح، مرحلہ وار رہنمائی، ایک آزمودہ سرور بلاک اور ایک PHP ٹیسٹ پیج کے ساتھ۔

SKYLINE Engineering @skyline

شائع کردہ Jun 9, 2026 | مطالعے کا وقت 6 منٹ

تعارف

ایک LEMP اسٹیک متحرک ویب ایپلیکیشنز کو سرو کرنے کے لیے اوپن سورس سافٹ ویئر پر مشتمل ہوتا ہے۔ یہ مخفف Linux، ENginx (جس کا تلفظ "انجن-ایکس" ہے)، MySQL، اور PHP کے لیے استعمال ہوتا ہے۔ یہ امتزاج ویب کے ایک خاصے حصے کو طاقت فراہم کرتا ہے، بشمول WordPress، Laravel، اور Magento سائٹس کے۔

یہ ٹیوٹوریل اوبنٹو 24.04 LTS پر ایک مکمل LEMP اسٹیک انسٹال اور کنفیگر کرتا ہے: ویب سرور کے طور پر Nginx، ڈیٹابیس کے طور پر MySQL، اور متحرک مواد کو پروسیس کرنے کے لیے PHP-FPM۔ مکمل ہونے پر، آپ کے پاس ایک کام کرتا ہوا سرور بلاک ہوگا جو ایک PHP پیج سرو کر رہا ہوگا۔

یہ رہنمائی کسی بھی اوبنٹو 24.04 سرور پر کام کرتی ہے۔ اگر آپ اسے مملکت کے اندر کسی Skyline Cloud VPS یا کلاؤڈ سرور پر چلا رہے ہیں، تو آپ کو مملکت کے اندر ڈیٹا ریزیڈنسی، PDPL/NCA ہم آہنگی، اور مقامی عربی سپورٹ بھی حاصل ہوتی ہے۔

پیشگی تقاضے

شروع کرنے سے پہلے، آپ کے پاس یہ ہونا چاہیے:

  • ایک اوبنٹو 24.04 سرور جس میں ایک غیر روٹ صارف ہو جسے sudo کے اختیارات حاصل ہوں۔
  • ایک بنیادی فائر وال (UFW) — جس کا احاطہ نیچے کیا گیا ہے۔
  • اختیاری طور پر، ایک ڈومین نام جو A ریکارڈ کے ذریعے آپ کے سرور کے عوامی IP کی طرف اشارہ کرتا ہو۔

اگر آپ کے پاس ابھی تک کوئی سرور نہیں ہے، تو آپ Skyline Cloud پر چند منٹوں میں ایک بنا سکتے ہیں۔

مرحلہ 1 — پیکیج انڈیکس کو اپ ڈیٹ کرنا

ہمیشہ ایک تازہ ترین پیکیج انڈیکس کے ساتھ شروع کریں تاکہ آپ موجودہ ورژنز انسٹال کریں:

sudo apt update
sudo apt upgrade -y

مرحلہ 2 — Nginx انسٹال کرنا

Nginx ویب سرور انسٹال کریں:

sudo apt install nginx -y

اگر UFW فعال ہے، تو HTTP اور HTTPS ٹریفک کی اجازت دیں۔ Nginx Full پروفائل دونوں پورٹس 80 اور 443 کھول دیتا ہے:

sudo ufw allow 'Nginx Full'
sudo ufw status

تصدیق کریں کہ Nginx چل رہا ہے:

systemctl status nginx

براؤزر میں http://your_server_ip پر جائیں — آپ کو ڈیفالٹ Welcome to nginx! پیج نظر آنا چاہیے۔

مرحلہ 3 — MySQL انسٹال کرنا

MySQL ڈیٹابیس سرور انسٹال کریں:

sudo apt install mysql-server -y

MySQL خود بخود شروع ہو جاتا ہے۔ اس کے بعد، غیر محفوظ ڈیفالٹس کو ہٹانے کے لیے سیکیورٹی اسکرپٹ چلائیں:

sudo mysql_secure_installation

آپ سے کہا جائے گا کہ آپ VALIDATE PASSWORD کمپوننٹ کو کنفیگر کریں، گمنام صارفین کو ہٹائیں، ریموٹ روٹ لاگ اِن کو ناممکن بنائیں، اور ٹیسٹ ڈیٹابیس کو ختم کریں۔ ان سخت کرنے والے اقدامات پر Y کے ساتھ جواب دیں۔

ایک نئی اوبنٹو انسٹال پر، root MySQL صارف auth_socket پلگ اِن کے ذریعے تصدیق کرتا ہے، لہٰذا آپ شیل سے پاس ورڈ کے بغیر کنیکٹ ہوتے ہیں:

sudo mysql

root استعمال کرنے کے بجائے ایک مخصوص ایپلیکیشن صارف بنانا بہترین عمل ہے۔ MySQL پرامپٹ سے:

CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'a_strong_password';
CREATE DATABASE appdb;
GRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

مرحلہ 4 — PHP انسٹال کرنا

Apache کے برعکس، Nginx میں کوئی بلٹ اِن PHP پروسیسر نہیں ہوتا۔ آپ PHP-FPM (FastCGI Process Manager) اور MySQL ایکسٹینشن انسٹال کرتے ہیں:

sudo apt install php-fpm php-mysql -y

اوبنٹو 24.04 ڈیفالٹ طور پر PHP 8.3 کے ساتھ آتا ہے۔ ورژن اور FPM سروس کے نام کی تصدیق کریں:

php -v
systemctl status php8.3-fpm

ساکٹ پاتھ /run/php/php8.3-fpm.sock کو نوٹ کریں — آپ Nginx کنفیگ میں اس کا حوالہ دیں گے۔

مرحلہ 5 — PHP-FPM استعمال کرنے کے لیے Nginx کو کنفیگر کرنا

اپنی سائٹ کے لیے ایک ویب روٹ اور ایک سرور بلاک بنائیں۔ your_domain کو اپنے ڈومین یا سرور IP سے تبدیل کریں۔

sudo mkdir -p /var/www/your_domain
sudo chown -R $USER:$USER /var/www/your_domain

سرور بلاک فائل بنائیں:

sudo nano /etc/nginx/sites-available/your_domain

مندرجہ ذیل کنفیگریشن شامل کریں:

server {
    listen 80;
    server_name your_domain www.your_domain;
    root /var/www/your_domain;

    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.3-fpm.sock;
    }

    location ~ /\.ht {
        deny all;
    }
}

سائٹ کو sites-enabled میں لنک کرکے فعال کریں، پھر ڈیفالٹ سائٹ کو ہٹا دیں تاکہ یہ ٹکراؤ پیدا نہ کرے:

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
sudo unlink /etc/nginx/sites-enabled/default

نحوی غلطیوں کے لیے کنفیگریشن کو ٹیسٹ کریں، پھر ری لوڈ کریں:

sudo nginx -t
sudo systemctl reload nginx

مرحلہ 6 — PHP پروسیسنگ کی جانچ

اپنے ویب روٹ میں ایک ٹیسٹ PHP فائل بنائیں:

nano /var/www/your_domain/info.php

یہ مواد شامل کریں:

<?php
phpinfo();

اپنے براؤزر میں http://your_domain/info.php پر جائیں۔ آپ کو ایک تفصیلی PHP معلوماتی پیج نظر آنا چاہیے، جو اس بات کی تصدیق کرتا ہے کہ Nginx درست طور پر درخواستوں کو PHP-FPM کی طرف بھیج رہا ہے۔

اس کے فوراً بعد فائل کو ہٹا دیں — یہ سرور کی ایسی تفصیلات ظاہر کرتی ہے جنہیں حملہ آور استعمال کر سکتے ہیں:

sudo rm /var/www/your_domain/info.php

مرحلہ 7 — HTTPS کے ساتھ محفوظ بنانا (تجویز کردہ)

کسی بھی عوامی سائٹ کے لیے آپ کو ٹریفک HTTPS کے ذریعے سرو کرنی چاہیے۔ اگر آپ کا ڈومین سرور کی طرف اشارہ کرتا ہے، تو Certbot انسٹال کریں اور ایک مفت Let's Encrypt سرٹیفکیٹ حاصل کریں:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d your_domain -d www.your_domain

Certbot آپ کے سرور بلاک میں ترمیم کرتا ہے، سرٹیفکیٹ انسٹال کرتا ہے، اور خودکار تجدید سیٹ اپ کرتا ہے۔ آپ systemctl status certbot.timer کے ساتھ تجدید ٹائمر کی تصدیق کر سکتے ہیں۔ کاروباری سائٹس کے لیے جنہیں آرگنائزیشن-ویلیڈیٹڈ یا وائلڈ کارڈ سرٹیفکیٹ کی ضرورت ہوتی ہے، Skyline کے منظم SSL آپشنز دیکھیں۔

سروس کا خلاصہ

کمپوننٹ پیکیج سروس ڈیفالٹ پورٹ / ساکٹ
ویب سرور nginx nginx 80 / 443
ڈیٹابیس mysql-server mysql 3306 (localhost)
PHP پروسیسر php-fpm php8.3-fpm /run/php/php8.3-fpm.sock

نتیجہ

اب آپ کے پاس اوبنٹو 24.04 پر ایک کام کرتا ہوا LEMP اسٹیک ہے — Nginx درخواستوں کو سرو کر رہا ہے، PHP-FPM متحرک کوڈ کو پروسیس کر رہا ہے، اور MySQL آپ کا ڈیٹا محفوظ کر رہا ہے، جو UFW اور HTTPS کے پیچھے محفوظ ہے۔ یہاں سے آپ WordPress، ایک Laravel ایپ، یا کوئی بھی PHP پروجیکٹ /var/www/your_domain میں تعینات کر سکتے ہیں۔

اگر آپ خود آپریٹنگ سسٹم کا انتظام نہیں کرنا چاہتے، تو ایک منظم پلیٹ فارم یا کاروباری ای میل ہوسٹنگ یہ کام آپ سے ہٹا سکتی ہے۔ VPS سائزنگ، قیمتوں، اور وسیع تر پروڈکٹ رینج کو دریافت کرنے کے لیے، VPS اور کلاؤڈ سرورز ہب پر جائیں۔

تعینات کرنے کے لیے تیار ہیں؟ Skyline Cloud کے ساتھ مملکت کے اندر ایک کلاؤڈ سرور شروع کریں اور اپنے LEMP اسٹیک کو چند منٹوں میں لائیو کریں۔

SKYLINE Engineering

@skyline

The engineering team at SKYLINE Industrial Solutions. We publish field-tested guides drawn from real KSA and GCC deployments.

See author profile
SKYLINE engineering services

Need this implemented for you?

Reading is free — building it right takes a team. SKYLINE engineers ship Skyline Cloud for Aramco vendors, banks, hospitals and government agencies across Saudi Arabia. Talk to us before you start.

Aramco Approved Contractor ISO 9001 · ISO 27001 SAMA CSF aligned NCA ECC ready 247+ KSA clients

Comments

0 total · 0 threads
Be the first to leave a comment.