پوشه cgi-bin چیست ؟

یکی از پوشه‌هایی که در هاست لینوکس به صورت پیش فرض وجود دارد و دقیقاً در مسیر ریشهٔ هاست یعنی public_html واقع شده است، پوشهٔ cgi-bin نام دارد. نقش این پوشه برای خیلی ها مبهم است و نمی دانند که دقیقاً کارش چیست و چه نوع اطلاعاتی را می‌توان درون آن ریخت. به همین دلیل این آموزش را برای شما تولید کردیم که به زبانی ساده راجع به پوشه cgi-bin در هاست لینوکس توضیحاتی را خدمت شما ارائه می‌نماید.

با توجه به اینکه ممکن است یک طراح سایت از روش‌های مختلفی برای ساخت اپلیکیشن و سایت استفاده نماید، می‌بایستی از تکنولوژی‌های مرتبط هم بهره ببرد. و با در نظر گرفتن این مورد که تکنولوژی مورد نیاز وی چیست، اسناد و پوشه‌های سایت را باید در جای خاصی از فضای میزبانی بارگذاری نماید.

با این توضیحات اگر یک سایت با زبان برنامه نویسی PHP نوشته شده باشد، در این حالت باید وب سرور از موتور پردازش PHP برخوردار بوده تا اسناد PHP قابلیت پردازش شدن داشته باشند. در این مورد اسناد و پوشه‌های سایت می‌توانند در مسیر ریشهٔ هاست که همان پوشهٔ public_html است جای گیرند و معمولاً اسناد PHP در جایی به غیر از این مسیر از پوشهٔ خانگی کاربر اجرا نمی‌گردند.

این مثلا در مورد برنامه‌های PHP بود. اما ما زبان‌های برنامه نویسی دیگری هم داریم. مثل زبان برنامه نویسی Python و Perl که اگر فضای میزبانی که خریداری کردید، ازاین زبان‌ها هم پشتیبانی بکنند، قادرید برنامه های پایتون و پِرل خود را هم روی آن به اجرا درآورید. در این حالت پوشه‌ای با نام cgi-bin در مسیر ریشهٔ هاست وجود دارد که در این باره کارایی دارد.

پوشهٔ cgi-bin مخصوص قرارگیری اسناد cgi است. CGI مخفف کلمات Common Gateway Interface است. CGI خود زبان برنامه نویسی نیست. بلکه یک قرارداد (پروتکل) ساده برای ایجاد ارتباط بین فرم‌های اینترنتی و برنامه‌های شماست. یک اسکریپت CGI هم می‌تواند به هر زبانی که می‌تواند STDIN را بخواند و در STDOUT بنویسد و متغیرهای محلی را هم بخواند، نوشته شود. مثل زبان‌های برنامه نویسی C, Perl, Python و یا حتی shell scripting.

کاری که یک اسکریپت CGI انجام می‌دهد به ترتیب به این صورت است؛ ابتدا اطلاعات را از فرم‌های اینترنتی دریافت می‌کند. حالا کاری که باید روی آنها صورت گیرد را اعمال می‌نماید. این کار را با مفسر زبان‌های برنامه نویسی مثل پایتون و پِرل و C انجام می‌دهد. پس از آن نتیجه را به صورت HTML توسط STDOUT خروجی می‌دهد که قابل نمایش برای استفاده کننده از برنامهٔ تحت وب باشد.

پس با این توضیحات شما هم می‌توانید یک سایت و یا نرم افزار تحت وب ایجاد کنید که با زبان‌های برنامه نویسی مثل Perl و C و Python نوشته شده باشد. اسناد این پرونده ها را باید در پوشه‌ای به نام cgi-bin قرار دهید که روی هاست شما به صورت پیش فرض در مسیر public_html واقع شده است.

حالا که متوجه شدید پوشه cgi-bin چیست و چه کاری انجام می‌دهد، اگر نرم افزاری که روی هاست‌تان نصب می‌کنید با هیچ کدام از این زبان‌های برنامه نویسی نوشته نشده است، قادرید به سهولت از پوشه cgi-bin صرف نظر کنید و اسناد سایت خود را روی public_html بریزید. برخی‌ها هم cgi-bin را حذف می‌نمایند که نباید مشکلی برای فضای میزبانی و سایت آنها پیش بیاید.

قابل ذکر است که برای مدیریت اطلاعات موجود در پوشهٔ cgi-bin می‌توانید از ابزار File Manager در کنترل پنل فضای میزبانی خود (سی پنل یا دایرکت ادمین) استفاده نمایید و به مانند هر سند یا پوشهٔ دیگر، ساختار آن را تبیین نمایید. برای کسب اطلاعات بیشتر راجع به نحوهٔ اجرای اسکریپت‌های CGI مثل برنامه‌های پایتون به اجرای اسکریپت Python روی هاست cPanel مراجعه نمایید.

مارس 18, 2019 Webnolog 5 دیدگاه

5 دیدگاه

  1. امین ولی پور گفت:

    با تشکر از ارائه مقاله خوب شما
    سوالی دارم که اگر بطور تصادفی این فولدر cgi-bin را پاک کنیم، چه مشکلی پیش می آید؟

    • Webnolog گفت:

      مشکلی پیش نمیاد. اگر بعداً نیاز به اون پیدا کردید، دوباره می‌تونید با همین نام بسازیدش.

  2. زهرا گفت:

    سلام.داخل پوشه.hccass.بطورپیش فرض موقع نصب هاست چه مقداری قرارداره؟چون به اشتباه تغیرش دادم میخاستم بدونم.

  3. زهرا گفت:

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

    • Webnolog گفت:

      احتمالا دلیل پر بودن فضای هاست و یا مشکل دیگه است. خطایی که در انتهای مرحلهٔ خارج سازی از حالت فشرده هست رو کامل مطالعه کنید. به شما میگه که مشکل چیه.

دیدگاه تان را ارسال کنید.

ایمیل شما منتشر نخواهد شد!