Howto قم بتشغيل CGI يتم تجميع
سؤال
الجميع،
يدعم مضيف البرامج النصية Perl CGI ، كيف يمكنني استخدام البرنامج النصي CGI المترجمة على المضيف؟
حاولت إعداد تنفيذ الأذونات عبر CHMOD ، لكن عندما أحاول تشغيله عبر المتصفح ، أحصل على خطأ خادم.
شكرا مقدما على كل المساعدة.
لا يوجد حل صحيح
نصائح أخرى
من الممكن مع بعض القيود:
- أنت تجمع بشكل ثابت أو ليس لديك أي تبعيات خارجية
- أنت تستخدم glibc ليست أحدث من
إذا كنت تقوم بالتجميع تحت GCC ، فقد تحتاج أيضًا إلى توفيرها libgcc_s.so
مما قد يعني أنك بحاجة إلى LD_LIBRARY_PATH
في هذه الحالة ، ربما تقوم بتشغيل ثنائي من خلال برنامج نصي shell.
يمكنك التحقق من التبعيات على ثنائي مع ldd
. توصيتي هي التجميع بشكل ثابت مع عدم وجود تبعيات على نظام مع GLIBC على الأقل من العمر مثلها.
ملاحظة: (1) أعلاه ليس متطلبًا تمامًا إذا تمكنت من ضبط LD_LIBRARY_PATH
ويمكن تشغيل كل شيء من خلال برنامج نصي غلاف ، لكن الأمور تصبح أكثر تعقيدًا إذا كنت بحاجة إلى هذه الوظيفة.
ربما أفتقد شيئًا ما ، لكن حقيقة أن مضيفك يدعم "Perl CGI" لا يعني أنهم يدعمون "CGI المترجمة" (الذي أفترض أنه برنامج CGI C).
بعض التفاصيل حول خطأ الخادم ستكون مفيدة.