راهاندازی Python روی هاست لینوکس
Python یکی از زبانهای برنامهنویسی محبوب بین برنامهنویسان است. از Python برای انجام پروژههای بسیاری از جمله برنامهنویسی هوش مصنوعی، توسعه وب یا Web Development، ساخت applicationهای موبایل و Desktop app استفاده میشود
Python دارای یک سیستم Dynamic type(پویا) و مدیریت حافظه خودکار است همچنین مفسر پایتون در بسیاری از سیستم عاملها پشتیبانی میشود.
Python از کجا آمد؟
زبان Python در سال 1991 میلادی توسط یک برنامهنویس هلندی به نام خیدو فان روسوم (Guido van Rossum) اختراع شد
ویژگیهای زبان برنامهنویسی Python
بارز ترین ویژگی Python سادگی و آسانی ان است. این ویژگی آموش پایتون را به یکی از بهترین گزینههای انتخاب زبان برنامهنویسی برای مبتدیان و افرادی که قصد دارند برنامهنویسی را شروع کنند، تبدیل کرده است. Python را میتوانید سریع یاد بگیرید و به سرعت کُدنویسی را با آن شروع کنید. یادگیری و کُدنویسی Python بسیار سریع است. امّا اشتباه نکنید! سادگی Python به معنی ضعف یا کارایی کم آن نیست، بلکه Python یک زبان برنامهنویسی چند منظوره و سطح بالاست و که از شیءگرایی و برنامهنویسی ساختاریافته کاملاً پشتیبانی میکند.
برای اینکه بدانیم مهمترین ویژگیهای Python چیست باید با ساختار آن آشنا شویم.
Python زبانی قدرتمند و انعطاف پذیر است، به همین دلیل ساختار آن منظم و کُدنویسی در آن بسیار راحت است، این زبان برنامهنویسی توانایی زیادی در خواندن کُدها دارد، به گونهای که به راحتی میتوان کدهای Python را خواند و با آن ارتباط برقرار کرد. همانطور که گفتیم Python از انواع روشهای برنامهنویسی مانند پروسهای، تابعی و البته شیءگرایی پشتیبانی میکند. به همین علّت است که Developerهای پروژههای حساس و بزرگ Python جزء اولین انتخابهای آنهاست.
مزیّتهای Python چیست؟
- Open Source یا منبع باز: زبان Python از سمت OSI مجوز گرفته است که استفاده و توزیع آن را از جمله برای اهداف تجاری مجاز شمرده است
- Presence of third party modules : به بیان ساده، یعنی Python از Module هایی که توسط خودش نوشته نشده هم پشتیبانی میکند (اصطلاحاً یک برنامه Modular است)
- Extensive support libraries : پایتون کتابخانه استاندارد بزرگی را ارائه میدهد که شامل موضوعات مختلف مانند پروتکلهای اینترنتی، ابزارها و web serviceها، و رابطهای سیستمعامل است. بسیاری از پرکاربردترین کُدهای برنامهنویسی قبلاً در کتابخانه استاندارد نوشته شده است که باعث میشود طول و مقدار کُد به طرز چشمگیری کاهش یابد.
- فراگیری سریع و آسان : گستردگی تعداد کاربران و developerها باعث شده است که یک بانک اطلاعاتی غنی و جامع برای ترغیب افراد و توسعه زبان ایجاد گردد
- ساختار کاربر پسند یا User Friendly : پایتون دارای ساختار داخلی دادهها و مراجعی است که میتواند برای ساخت سریع دادههای همزمان اجرا، سریع استفاده گردد
معایب Python چیست؟
- کُند بودن: برخلاف زبان C یا C++ که ارتباط مستقیم به سخت افزار دارد، Python متکی به سخت افزار نیست و از این جهت، کُند تر از زبان C میباشد
- توسعهپذیری: Python زبان خوبی برای توسعه موبایل نیست و در محاسبات موبایلی ضعیف عمل میکند، از این رو برنامههای اندکی در موبایلها مانند Carbonnelle از طریق Python ساخته شده است
- Ram Usage: پایتون برای پروژههایی که بصورت فشرده هستند، انتخاب مناسبی نیست و به دلیل انعطافپذیر بودن دادهها، میزان مصرف حافظه بسیار بالاست
- دسترسی به پایگاه داده: دسترسی Python به پایگاه داده شامل یک سری محدودیت است. در مقایسه با تکنولوژیهای رایج مانند JDBC و ODBC، لایه دسترسی به پایگاه داده Python تا حدودی مبتدیانه است
- خطاهای هنگام اجرا: برنامهنویسان در زمینه طراحی زبان Python به چند مورد اشاره کردهاند. از آنجا که این زبان به صورت Dynamic است، خطاهایی دارد که فقط در زمان اجرا نمایش داده میشوند و به آزمایشات و بررسیهای بیشتری نیاز دارد
نصب Python
Python را میتوان مستقیما روی یک سرور لینوکسی نصب کرد، جهت نصب Python روی سرور بصورت مستقیم، جداگانه صحبت خواهیم کرد، اکنون میخواهیم راهاندازی Python روی هاست لینوکس مارال هاست را قدم به قدم پیش ببریم
روی هاستهای اشتراکی، Python از طریق ابزار Cloud Linux نصب میگردد، میتوان گفت تقریباً 80 درصد کار توسط Cloud linux انجام شده و شما از اجرای کامندهای پیدرپی راحت هستید
پسوند فایلهای Python بصورت py. میباشد، برای میزبانی فایلهای python با پسوند py. کافی است فایل را در فولدر cgi-bin درون شاخه اصلی هاست آپلود نمائید
راهاندازی Python روی هاست
برای راه اندازی قدم به قدم پروژه Python تا ادامه این آموزش همراه ما باشید
ابتدا وارد هاست لینوکسِ خود شوید، و روی گزینهی file manager کلیک کنید
سپس وارد دایرکتوری public_html شوید و یک فولدر به نام cgi-bin ایجاد کنید
سپس یک فایل از نوع py. ایجاد کنید.
اگر پروژه شما از قبل نوشته شده است، میتوانید بجای ایجاد فایل، از طریق گزینهی Upload فایلهای پروژهتان را در هاست آپلود کنید. سپس روی فایل راست کلیک کنید و مطابق با تصویر ضمیمه زیر، روی change permission کلیک کنید
(تنظیمات سطوح دسترسی، ابتداییترین اصول حفظ امنیت یک سایت میباشد و عدم تنظیم صحیح آن منجر به سرقت اطلاعات، نفوذ به وب سایت و بارگزاری فایلهای مخرب میشود، به همین دلیل دسترسیها طوری طراحی شدند که بتوان متناسب با سه رفتار از سمت کاربر یعنی خواندن (Read)، نوشتن یا اعمال تغییر (Write) و در نهایت اجرا و نمایش نتیجه مورد نظر(Execute) یک فایل، دایرکتوری یا مسیر را محدود یا مدیریت نمود.)
و مانند تصویر زیر، permissionها مورد نیاز را به فایل بدهید
در نظر داشته باشید که اگر هاست شما دایرکت ادمین است، برای قرار دادن permission میبایست دو کُد زیر را در ssh سرور اجرا نمائید
chown username:username /home/username/public_html/cgi-bin/hello.py
chmod +x /home/username/public_html/cgi-bin/hello.py
الآن به صفحه اصلی Cpanel برگردید و روی گزینهی Setup Python app کلیک کنید
روی گزینهی Create Application کلیک کنید
اکنون وارد تنظیمات python شدید، از منوی Python version میتوانید ورژن مورد نظرتان را انتخاب کنید
پس از انتخاب ورژن Python سایر گزینهها را به ترتیب تنظیم نمائید
- Application root : مسیری که فایلهای پروژه python را در آن آپلود کرده اید (در اینجا فولدر cgi-bin)
- Application URL : در صورتیکه بخواهید پس از نام دامینِ هاست، پروژه شما با URL خاصی باز شود یا به یک دایرکتوری اشاره کند، در این فیلد تنظیم میکنید
- Application Startup file : فایلی که هنگام لود URL پروژه در مرورگر نمایش داده شود
- Application Entry Point : این گزینه را بطور پیشفرض بر روی application قرار دهید
- Passenger log file : در صورتیکه بخواهید برای لاگفایلهای project یک مسیر تعیین کنید، در این فیلد آن را درج کنید
اکنون پروژه ایجاد شده است
در انتها به این نکته نیز توجه داشته باشید اگر نیاز است دایرکتوری یا فایلی را در شاخه بالاتر از cgi-bin قرار دهید، نیاز است در فایل htaccess. نیز تغییراتی اعمال نمائید، مانند تصویر زیر روی فایل htaccess. راست کلیک کنید و روی edit کلیک کنید
در پنجره باز شده روی edit کلیک کنید تا فایل بصورت code editor باز شود
سپس دو خط کُد زیر را در فایل htaccess. درج کنید
Options +ExecCGI
AddHandler cgi-script .py
و در صورتیکه بخواهید ماژولهای مورد نظرتان در python را نصب کنید یا کامند خاصی اجرا کنید، مانند تصویر ضمیمه در همان بخش Setup python app، از بخش Execute python script میتوانید کامند را در فیلد مورد نظر تایپ نموده و روی دکمهی Run Script کلیک کنید