HTTP-Server: یک سرور ساده HTTP استاتیک

  • 2021-02-15

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

Example of running http-server

نصب و راه اندازی:

در حال اجرا در صورت تقاضا:

با استفاده از NPX می توانید اسکریپت را بدون نصب ابتدا اجرا کنید:

در سطح جهانی از طریق NPM

این کار HTTP-Server را در سطح جهان نصب می کند تا بتواند از خط فرمان در هر نقطه اجرا شود.

در سطح جهانی از طریق Homebrew

به عنوان وابستگی در بسته NPM خود:

استفاده:

[PATH] به طور پیش فرض به ./public در صورت وجود پوشه ، و ./ در غیر این صورت.

اکنون می توانید برای مشاهده سرور خود به http: // localhost: 8080 مراجعه کنید

توجه: ذخیره سازی به طور پیش فرض روشن است. اضافه کرد ن-C -1 را به عنوان گزینه ای برای غیرفعال کردن حافظه پنهان.

گزینه های موجود:

فرمان شرح پیش فرض
-P ی ا-پورت بندر برای استفادها ز-p 0 برای جستجوی درگاه باز ، از 8080 استفاده کنید. همچنین از process. env. port نیز خوانده می شود. 8080
-a آدرس برای استفاده 0. 0. 0. 0
-d لیست فهرست ها را نشان دهید درست است، واقعی
-i نمایش خودکار درست است، واقعی
-G ی ا-gzip در صورت فعال شدن ، به جای ./public/some-file. js. gz به جای ./public/some-file. js وقتی نسخه gzipped پرونده وجود دارد و درخواست رمزگذاری GZIP را می پذیرد. اگر Brotli نیز فعال باشد ، ابتدا سعی می کند Brotli را سرو کند. دروغ
-b ی ا-brotli هنگامی که فعال شود ، خدمت خواهد کرد. اگر GZIP نیز فعال باشد ، ابتدا سعی می کند Brotli را سرو کند. دروغ
-e ی ا-متن پسوند پرونده پیش فرض در صورت عدم تأمین HTML
-S ی ا-سیلی پیام های ورود به سیستم را از خروجی سرکوب کنید
-گروه CORS را از طریق هدر دسترسی کنترل-ایل-منشور فعال کنید
-O [مسیر] پنجره مرورگر را پس از شروع سرور باز کنید. به صورت اختیاری یک مسیر URL را برای باز کردن فراهم کنید. به عنوان مثال: -o/دیگر/دیر/
-c زمان حافظه نهان (در ثانیه) را برای هدر حداکثر سن-کنترل حافظه نهان تنظیم کنید ، به عنوان مثال-C10 به مدت 10 ثانیه. برای غیرفعال کردن حافظه پنهان ، ا ز-C -1 استفاده کنید. 3600
-u ی ا-utc از فرمت زمان UTC در پیام های ورود به سیستم استفاده کنید.
-log-ip ورود به آدرس IP مشتری را فعال کنید دروغ
-P ی ا-پروکسی پروکسی ها تمام درخواست هایی که نمی توانند به صورت محلی به URL داده شده حل شوند. به عنوان مثال: -p http://someurl. com
-گزینه های مختلف گزینه های پروکسی را با استفاده از اشیاء خالص تو در تو قرار دهید. به عنوان مثال:-proxy-options. Secure false
--نام کاربری نام کاربری برای احراز هویت اساسی
--کلمه عبور رمز عبور برای احراز هویت اساسی
-S ، -TLS ی ا-SSL فعال کردن درخواست امن با TLS/SSL (HTTPS) دروغ
-C یا - مسیر پرونده گواهینامه SSL گواهی
-K ی ا-کلید مسیر پرونده کلید SSL key. pem
-R ی ا-روابوت به طور خودکار a /robots. txt را ارائه دهید (محتوای پیش فرض برای کاربر-عامل: *\ ndisowlash: /) دروغ
-بدون نقطه dotfiles را نشان ندهید
-mimetypes مسیر به یک فایل . types برای تعریف mimetype سفارشی
-H یا - -Help این لیست را چاپ کرده و خروج کنید.
-v ی ا-version نسخه را چاپ کنید و خروج کنید.

پرونده های جادویی

  • index. html به عنوان پرونده پیش فرض برای هر درخواست دایرکتوری ارائه می شود.
  • در صورت عدم یافتن پرونده ، 404. html ارائه می شود. این می تواند برای میزبانی برنامه تک صفحه (SPA) برای ارائه صفحه ورود استفاده شود.

صید همه هدایت

برای اجرای تغییر مسیر همه گیر ، از صفحه فهرست خود به عنوان پروکسی با:

توجه داشته باشید که ؟در پایان URL پروکسی. با تشکر از @houston3 برای این هک هوشمندانه!

TLS/SSL

ابتدا باید اطمینان حاصل کنید که OpenSSL به درستی نصب شده است ، و پرونده های key. pem و cert. pem را دارید. می توانید آنها را با استفاده از این دستور تولید کنید:

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

این یک جفت گواهینامه ایجاد می کند و برای 3650 روز (حدود 10 سال) معتبر خواهد بود.

سپس برای فعال کردن SSL و-C برای پرونده گواهی خود باید سرور را ب ا-S اجرا کنید.

اگر می خواهید با کلید خصوصی خود از یک مسیر عبور استفاده کنید ، می توانید یکی را در دستور OpenSSL از طریق پارامت ر-Passout (با استفاده از رمز عبور Foobar) قرار دهید.

به عنوان مثال،Openssl Re q-newkey RSA: 204 8-Passout Pass: Fooba r-keyout Key. pe m-x50 9-Days 36 5-out Cert. Pem

به دلایل امنیتی ، مسیر عبور فقط از متغیر محیط node_http_server_ssl_passphrase خوانده می شود.

این همان چیزی است که در صورت موفقیت باید خروجی باشد:

توسعه

این مخزن را به صورت محلی بررسی کنید ، سپس:

اکنون می توانید برای مشاهده سرور خود به http: // localhost: 8080 مراجعه کنید

شما باید تصویر لاک پشت را در تصویر بالا که در آن URL میزبانی شده است مشاهده کنید. برای محتوای نسخه ی نمایشی به پوشه ./public مراجعه کنید.

ثبت دیدگاه

مجموع دیدگاهها : 0در انتظار بررسی : 0انتشار یافته : ۰
قوانین ارسال دیدگاه
  • دیدگاه های ارسال شده توسط شما، پس از تایید توسط تیم مدیریت در وب منتشر خواهد شد.
  • پیام هایی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
  • پیام هایی که به غیر از زبان فارسی یا غیر مرتبط باشد منتشر نخواهد شد.