برنامه نویسیپایتونسیستم عامللینوکسویندوز

چگونه یک HTTP Server با پایتون راه اندازی کنیم؟

شاید تا کنون برایتان پیش آمده باشد که برای انتقال فایل ها بین کامپیوتر و لپ تاپ یا گوشی موبایل خود راهی جز کپی کردن بر روی فلش نداشته باشید. یا برای تست کردن یک قالب وبسایت بر روی گوشی اندروید یا ios به بن بست بخورید.در این آموزش یاد خواهید گرفت چگونه  یک HTTP Server با استفاده از یک ماژول پایتون راه اندازی کنید. اگر با زبان پایتون آشنایی ندارید جای هیچ نگرانی نیست و کافیست قدم به قدم با این آموزش پیش بروید.

این آموزش برای هر دو ورژن پایتون جوابگو میباشد و تنها تفاوت در ماژول مورد استفاده است.

با کدام ماژول کار میکنیم؟

برای پایتون ورژن ۳ از ماژول http.server و برای پایتون ورژن ۲ از SimpleHTTPServer  استفاده میکنیم.برای سیستم عامل های گنو/لینوکس و سیستم عامل مک پایتون بصورت پیشفرض نصب می‌باشد.برای نصب پایتون در سیستم عامل ویندوز می توانید از آموزش زیر استفاده کنید.

ماژول http.server  دقیقا چکاری انجام می دهد؟

این ماژول بر روی localhost و همچنین آی پی local(درون شبکه) پورت مشخصی را برای پروتکل http رزرو میکند و از درون شبکه قابل دسترسی است. چون ما با استفاده از cmd و ترمینال از این ماژول استفاده میکنیم، این ماژول محتویات مسیری که دستور در آنجا اجرا شده است را مانند یک وب سرور بر روی آی پی مورد نظر در دسترس قرار می دهد.

به چه منظور با این ماژول کار می کنیم؟

با انجام این کار شما می توانید فایل هایی که قصد کپی کردن آنهارا در کامپیوتر دیگر یا گوشی موبایل دارید بدون نیاز به کابل و با سرعت بیشتر از کپی منتقل کنید، یکی از مزایای آن این است که چند دستگاه می توانند بصورت همزمان از این فایل ها استفاده کنند،تنها کافیست دستگاه ها به یک شبکه متصل باشند.

همچنین  می توانید بین ماشین های مجازی فایل منتقل کنید و به اشتراک بگذارید.یا یک قالب وبسایت را رو گوشی موبایل لود کنید، با استفاده از این ماژول می توانید قالب را روی گوشی موبایل تست کنید.

خب بریم سراغ آموزش…

بعد از نصب و راه اندازی پایتون،مانند تصویر زیر cmd را باز می کنیم.

 

run cmd

دستور زیر را وارد میکنیم تا از نصب شدن درست پایتون مطمئن شویم.

python --version

با دستور بالا ورژن پایتون نصب شده روی سیستم نمایش داده میشود.

ورژن پایتون
ورژن پایتون

سپس به مودم یا هات اسپات متصل شوید.

با استفاده از دستور زیر local ip سیستم خود را بدست آورید.

ipconfig

 

همانگونه که مشاهده می کنید آدرس آی پی محلی دستگاه مشخص شده است و این آدرس تنها از طریق دستگاه های متصل به همین شبکه قابل دسترسی است.

بعد از بدست آوردن آی پی محلی به مسیری که قصد اجرای سرور روی آن پوشه داریم با استفاده از دستور زیر تغییر مسیر می دهیم.

cd <path>

به جای <path> مسیر پوشه را مینویسیم.

 

برای مثال، طبق تصویر زیر به پوشه ی دانلود تغییر مسیر میدهیم.

سپس با دستور زیر سرور را اجرا میکنیم.

python -m  http.server 7000
HTTP Server با پایتون
HTTP Server با پایتون

برای پایتون۲:

python -m SimpleHTTPServer 7000
HTTP Server با پایتون
HTTP Server با پایتون

هر دو دستور یک عمل را انجام می دهند، یعنی پورت ۷۰۰۰ را بر روی ip محلی ما باز می کنند و بر روی آن یک HTTP Server  اجرا میکند.

حال برای اطمینان مرورگر را باز کرده و آدرس آی پی محلی را بصورت زیر وارد کنید و اینتر بزنید.

ip:7000

برای مثال=> 127.0.0.1:7000

آدرس ۱۲۷.۰.۰.۱ آدرس میزبان محلی(localhost) است. اگر لیست فایل هارا لود کرد یعنی کار به درستی انجام شده است.

حال اگر هر کدام از دستگاه های متصل به شبکه آدرس آی پی شما را به همراه پورت وارد مرورگر خود کنند می توانند به فایل ها دسترسی داشته باشند و از آنها استفاده کنند.

HTTP Server با پایتون
HTTP Server با پایتون
توجه داشته باشید که تمامی مراحل در سیستم عامل گنو/لینوکس نیز به همین صورت می‌باشد و تنها به جای دستور ipconfig از دستور ifconfig استفاده میکنیم.

 

نوشته های مشابه

۲ دیدگاه

  1. سلام یعنی اینطوری تمام کسایی که به wifiوصل هستند میتونند به اون ادرس دسترسی دشته باشند یا تمام کسایی که به اینترنت دسترسی دارن
    بعد من اان تو لینوکس یه سرور راه اندازی کردم ویه دامنه هم دارم میخوام یه dnsاختصاضی درست کنم که باهش بتونم دامنه ام رو به سرور ول کنم چطور باید اینکار رو انجام بدم لطفا کامل توضیح دهید

    1. سلام، این آموزش برای داخل شبکه ی محلی (local network) هست(وای فای، هات اسپات گوشی یا هر شبکه ی کوچیک یا بزرگ داخلی) و خارج از شبکه ی محلی کاربردی نداره.برای متصل کردن دامنه به سرور هم بهترین گزینه تهیه ی هاست هست و سرور خانگی پیشنهاد نمیشه چون هم از طرف ISP محدودیت هست و هم صرفه ی اقتصادی نداره براتون.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا