ازگر SimpleHTTPServer کا استعمال کیسے کریں۔

How Use Python Simplehttpserver



ویب سرور کا بنیادی کام کلائنٹ سے HTTP درخواستوں کو سنبھالنا ہے۔ یہ خاص IP ایڈریس اور پورٹ نمبر سے آنے والی HTTP درخواستوں کا انتظار کرتا ہے ، درخواست کو سنبھالتا ہے اور کلائنٹ کا جواب واپس بھیج دیتا ہے۔ ازگر استعمال کرتا ہے سادہ ایچ ٹی ٹی پی سرور۔ ویب سرور بنانے کا ماڈیول فوری طور پر اور سرور سے فائل کے مواد کو آسانی سے پیش کرتا ہے۔ اسے فائل شیئرنگ کے لیے بھی استعمال کیا جا سکتا ہے۔ اس کے لیے ، آپ کو اس ماڈیول کو قابل اشتراک فائلوں کے مقام کے ساتھ فعال کرنا ہوگا۔ یہ ماڈیول ازگر کے ترجمان کے ساتھ آتا ہے۔ آپ کو اسے انسٹال کرنے کی ضرورت نہیں ہے۔ چونکہ یہ ماڈیول کے ساتھ ضم کیا گیا ہے http. سرور python3 میں ماڈیول ، لہذا آپ کو چلانا ہوگا۔ http. سرور python3 میں ویب سرور چلانے کے لیے۔ HTTP کی درخواست کو سنبھالنے اور فائلوں کو شیئر کرنے کے لیے ویب سرور کو کس طرح استعمال کیا جا سکتا ہے ، اس ٹیوٹوریل میں دکھایا گیا ہے۔

ٹرمینل سے ویب سرور چلائیں۔

ٹرمینل سے ویب سرور کو چلانے کے لیے درج ذیل کمانڈ چلائیں۔ اگر کمانڈ میں کوئی پورٹ نمبر متعین نہیں ہے تو ویب سرور 8000 پورٹ پر بطور ڈیفالٹ شروع ہو جائے گا۔







$ python3 -m http.سرور



مندرجہ ذیل آؤٹ پٹ ظاہر ہوگا اگر ویب سرور مناسب طریقے سے شروع کیا گیا ہے۔ سرور کو روکنے کے لیے CTRL+C دبایا جاتا ہے۔




8080 پورٹ پر ویب سرور شروع کرنے کے لیے درج ذیل کمانڈ چلائیں۔





$ python3 -m http.سرور 8080۔

اگر ویب سرور 8080 پورٹ پر شروع ہوتا ہے تو درج ذیل آؤٹ پٹ ظاہر ہوگا۔



ازگر اسکرپٹ کا استعمال کرتے ہوئے ویب سرور چلائیں۔

نامی فولڈر بنانے کے لیے درج ذیل کمانڈز چلائیں۔ ویب اور فولڈر پر جائیں۔ اس ٹیوٹوریل کی تمام سکرپٹ فائلیں اور ایچ ٹی ایم ایل فائلیں اس فولڈر کے اندر بنائی جائیں گی۔

$ mkdir ویب۔

$سی ڈیویب

ایک ایچ ٹی ایم ایل فائل بنائیں۔ testHTML.html کے اندر ویب درج ذیل سکرپٹ کے ساتھ فولڈر۔ یہ فائل ویب سرور سے بعد میں پیش کی جائے گی۔

testHTML.html

< html >

< سر >

< عنوان >

ازگر ویب سرور کی جانچ کریں۔

</ عنوان >

</ سر >

< جسم >

< مرکز >

< img src='logo.jpeg' سب کچھ='تصویر نہیں ملی'/>

< h2 سٹائل=رنگ: سبز>مبارک ہو! آپ کا ویب سرور کامیابی سے چل رہا ہے۔</ h2 >

< p >وزٹ کریں۔< کو href='www.linuxhint.com'>LinuxHint.com</ کو >ازگر پر مزید سبق کے لیے۔</ p >

</ مرکز >

</ جسم >

</ html >

مثال 1: ویب سرور کو مخصوص پورٹ نمبر پر چلائیں۔

8008 پورٹ پر ویب سرور کو چلانے کے لیے درج ذیل اسکرپٹ کے ساتھ ایک ازگر فائل بنائیں۔ http. سرور ماڈیول ویب سرور کو چلانے کے لیے درآمد کیا گیا ہے ، اور ساکٹ سرور۔ 8080 پورٹ سے آنے والی HTTP درخواست کو سنبھالنے کے لیے ماڈیول درآمد کیا گیا ہے۔ نام کی ایک شے۔ سنبھالنے والا۔ HTTP درخواستوں کو سنبھالنے کے لیے بنایا گیا ہے۔ ہمیشہ کے لیے () فنکشن ویب سرور کو چلانے کے لیے کہا جاتا ہے۔ اسکرپٹ میں کوئی ختم کرنے کی شرط شامل نہیں کی گئی ہے۔ لہذا ، اسکرپٹ ایک خرابی پیدا کرے گا جب صارف سرور کو روکنے کی کوشش کرتا ہے۔

# سرور ماڈیول درآمد کریں۔

درآمدhttp.سرور

# درآمد ساکٹ سرور ماڈیول۔

درآمدساکٹ سرور


# پورٹ نمبر سیٹ کریں۔

بندرگاہ= 8080۔

# HTTP درخواستوں کو سنبھالنے کے لیے آبجیکٹ بنائیں۔

سنبھالنے والا۔=http.سرور.SimpleHTTPRequestHandler۔


# HTTP درخواستوں کو سنبھالنے کے لیے سرور کو ہمیشہ کے لیے چلائیں۔

کے ساتھساکٹ سرورٹی سی پی ایس سرور۔((''،بندرگاہ)،سنبھالنے والا۔) جیسا کہhttpd:

پرنٹ کریں(ویب سرور http: // localhost:٪ s پر چل رہا ہے٪ پورٹ)

httpdخدمت_ ہمیشہ کے لیے()

آؤٹ پٹ۔

مندرجہ بالا اسکرپٹ پر عمل کرنے کے بعد درج ذیل آؤٹ پٹ ظاہر ہوگا۔


اسکرپٹ لوکیشن کی فائلوں اور فولڈر کی فہرست دکھائی جائے گی اگر براؤزر سے درج ذیل یو آر ایل کو عمل میں لایا جائے۔

http: // localhost: 8080۔

اگر صارف ٹرمینل سے CTRL+C دباتا ہے یا PyCharm ایڈیٹر کا سٹاپ بٹن دباتا ہے تو درج ذیل ایرر میسج ظاہر ہوگا۔ یہ مسئلہ اس سبق کی اگلی مثال میں حل ہو گیا ہے۔

مثال 2: کمانڈ لائن کے ذریعے متعین پورٹ نمبر کے ساتھ ویب سرور چلائیں۔

کمانڈ لائن دلیل پورٹ نمبر دیتی ہے تو مخصوص پورٹ پر ویب سرور چلانے کے لیے درج ذیل اسکرپٹ کے ساتھ ایک ازگر فائل بنائیں۔ بصورت دیگر ، 5000 کو بطور ڈیفالٹ پورٹ استعمال کیا جائے گا۔ sys کمانڈ لائن دلیل اقدار کو پڑھنے کے لیے اسکرپٹ میں ماڈیول درآمد کیا گیا ہے۔ آزمائیں سوائے جب صارف سرور کو روکنے کی کوشش کرتا ہے تو خرابی کو سنبھالنے کے لیے اسکرپٹ میں بلاک شامل کر دیا گیا ہے۔ اگر KeyboardInterrupt استثناء سرور چلانے کے بعد ظاہر ہوتا ہے ، تو بند کریں() ویب سرور کو روکنے کے لیے فنکشن بلایا جائے گا۔

# سرور ماڈیول درآمد کریں۔

درآمدhttp.سرور

# درآمد ساکٹ سرور ماڈیول۔

درآمدساکٹ سرور

# sys ماڈیول درآمد کریں۔

درآمد sys


کوشش کریں:

# پورٹ نمبر سیٹ کریں۔

اگر sys.argv[:]:

بندرگاہ= int(sys.argv[])

اور:

بندرگاہ= 5000۔

# آئی پی ایڈریس سیٹ کریں۔

سرور کا پتہ= ('127.0.0.1'،بندرگاہ)

# HTTP درخواستوں کو سنبھالنے کے لیے آبجیکٹ بنائیں۔

سنبھالنے والا۔=http.سرور.SimpleHTTPRequestHandler۔


# HTTP درخواستوں کو سنبھالنے کے لیے ہمیشہ کے لیے ویب سرور چلائیں۔

کے ساتھساکٹ سرورٹی سی پی ایس سرور۔((''،بندرگاہ)،سنبھالنے والا۔) جیسا کہhttpd:

پرنٹ کریں(ویب سرور http: // localhost:٪ s پر چل رہا ہے٪ پورٹ)

httpdخدمت_ ہمیشہ کے لیے()

# سرور بند کر دیا۔

سوائے کی بورڈ مداخلت:

httpdسرور_ بند کریں۔()

پرنٹ کریں('سرور بند ہے۔')

آؤٹ پٹ۔

مندرجہ ذیل آؤٹ پٹ کمانڈ لائن دلیل قیمت کے بغیر مذکورہ اسکرپٹ پر عمل درآمد کے بعد ظاہر ہوگا۔

مندرجہ ذیل آؤٹ پٹ ظاہر ہوگا اگر ویب فائل سے پچھلے مرحلے میں بنائی گئی HTML فائل چلائیں۔

کمانڈ لائن دلیل کی قیمت مقرر کرنے کے لیے PyCharm ایڈیٹر کے رن مینو سے کنفیگریشن ڈائیلاگ باکس کھولیں۔ پیرامیٹرز فیلڈ کو کمانڈ لائن آرگومینٹ سیٹ کرنے کے لیے استعمال کیا جاتا ہے ، اور 3000 یہاں دلیل ویلیو کے طور پر سیٹ کیا جاتا ہے۔

اگر آپ دلیل کی قیمت مقرر کرنے کے بعد اسکرپٹ کو دوبارہ چلاتے ہیں تو درج ذیل آؤٹ پٹ ظاہر ہوگا۔

مثال 3: HTML فائل کے ساتھ ویب سرور چلائیں۔

بیس یو آر ایل کے لیے ایچ ٹی ایم ایل فائل کی وضاحت کرکے ویب سرور کو چلانے کے لیے درج ذیل اسکرپٹ کے ساتھ ایک ازگر فائل بنائیں۔ میزبان نام اور پورٹ نمبر نے اسکرپٹ کے آغاز میں وضاحت کی ہے۔ ازگر سرور۔ کلاس نے اسکرپٹ میں وضاحت کی ہے کہ جب ویب سرور چلنا شروع ہوتا ہے تو براؤزر میں ایچ ٹی ایم ایل فائل ڈسپلے کرے۔

# سرور ماڈیول درآمد کریں۔

درآمدhttp.سرور


# میزبان کا نام مقرر کریں۔

ہوسٹ= 'لوکل ہوسٹ'

# پورٹ نمبر سیٹ کریں۔

پورٹ= 4000۔


# ویب سرور کے انڈیکس پیج کو ظاہر کرنے کے لیے کلاس کی وضاحت کریں۔

کلاسازگر سرور۔(http.سرور.SimpleHTTPRequestHandler۔):

دفاعdo_GET(خود):

اگر خود.راستہ == '/':

خود.راستہ = 'testHTML.html'

واپسیhttp.سرور.SimpleHTTPRequestHandler۔.do_GET(خود)


# کلاس کے اعتراض کا اعلان کریں۔

ویب سرور=http.سرور.HTTPServer((ہوسٹ،پورٹ)،ازگر سرور۔)


# ویب سرور کا یو آر ایل پرنٹ کریں۔

پرنٹ کریں(سرور نے http: //٪ s:٪ s شروع کیا٪(ہوسٹ،پورٹ))


کوشش کریں:

# ویب سرور چلائیں۔

ویب سرور.خدمت_ ہمیشہ کے لیے()

سوائے کی بورڈ مداخلت:

# ویب سرور بند کریں۔

ویب سرور.سرور_ بند کریں۔()

پرنٹ کریں('سرور بند ہے۔')

آؤٹ پٹ۔

مندرجہ ذیل آؤٹ پٹ مندرجہ بالا اسکرپٹ پر عمل کرتے ہوئے دکھائی دے گا۔

براؤزر میں مندرجہ ذیل صفحہ ظاہر ہوگا اگر ویب سرور کا براؤزر کا بنیادی یو آر ایل چلتا ہے۔

نتیجہ

استعمال کرکے ویب سرورز کو لاگو کرنے کے مختلف طریقے۔ http. سرور اس ٹیوٹوریل میں ماڈیول دکھایا گیا ہے تاکہ ازگر کے صارفین کو ازگر میں ایک سادہ ویب سرور بنانے میں مدد ملے۔