انجمنهای فارسی اوبونتو
کمک و پشتیبانی => برنامهسازی => نویسنده: کنجکاو! در 31 امرداد 1392، 11:46 قظ
-
با سلام خدمت دوستان و اساتید،
راستیتش خیلی عنوان مناسبی پیدا نکردم واسه تاپیک، پس شرمنده اگه کمی ناجوره.
من میخوام توسط Mini CPUیی که دارم (کوبی بورد)،با نصب آپاچی یه وب سرور کوچیک خونگی (برای مدیریت بعضی سخت افزار) راه بندازم. مهمترین قسمت قضیه ارتباط CPU با GPIO بورده! که البته توسط python راحت میشه اینکار رو کرد (من ارتباط سریال رو نیاز دارم)
حالا نیاز دارم یه جوری صفحه وب نوشته شده با phpام رو به برنامه مذکور با python مرتبط کنم. و میخوام ببینم کسی واسه این راه حلی نداره؟
امیدوارم تونسته باشم منظورمو درست برسونم
با تشکر
-
با یکم جستجو و به CGI Programming رسیدم که فک کنم کاری که میخوام رو انجام میده:
http://www.tutorialspoint.com/python/python_cgi_programming.htm
کسی آشنایی داره با این؟
و یا اینکه اصن راه حل دیگه ای به نظرش میرسه؟
با تشکر
-
خب فعلاً یه سری راه حل هایی بدست آوردم.
گفتم شاید دوستان هم بعداً لازم داشتن، اینجا به اشتراک میذارم.
علاوه بر موردی که توی پست قبل گفتم:
ببینید، از طریق شل اسکریپت و پایتون و البته C میشه به سخت افزار این کوبی بورد (یا بوردهای Mini CPU دیگه مثل مارس)و اصطلاحاً به GPIO اون هم دستور داد.
حالا من میخواستم وب سرور راه بندازم و بعد کاربر بتونه از طریق وب پیجی که میزنم، سخت افزار رو کنترل کنه، پس باید یه ارتباطی بین php و مواردی که گفتم باشه، و بتونم مثلاً پایتون رو فراخونی کنم.
1- استفاده از شل اسکریپت، برای اینکار از shell_exec() استفاده میشه، لینک های زیر رو ببینید:
PHP: exec - Manual (http://php.net/manual/en/function.exec.php)
shell - php shell_exec() vs exec() - Stack Overflow (http://stackoverflow.com/questions/7093860/php-shell-exec-vs-exec)
2- فراخونی برنامه نوشته شده به پایتون، کاری که خودم انجام دادم. من دستوراتی که میخوام به سخت افزار ارسال بشه رو توی یک برنامه پایتون مینویسم، و بعد برنامه رو فراخونی می کنم: با استفاده از تابع System() که برای مورد قبل هم استفاده میشه!
System Function (http://php.net/manual/en/function.system.php)
در لینکایی که دادم مثال به اندازه کافی و خیلی مفهوم وجود داره.
امیدوارم به درد کسی بخوره این مطلب
با تشکر
-
یه ماجحول هست برای آپاچی برای اجرای python ! همون cgi هستش که خودتون فرمودید
http://modpython.org/
هم میتونید از روش بالا استفاده کنید؛
هم میتونید از همون روش فراخوانی اسکریپتهای python انجام بدید؛
و یا چندتا روش دیگه که سخته
من جاتون بودم روش اول رو میرفتم؛ خیلی خوی و خوشمزه میتونی python رو اجرا کنی و . . .