المتطلبات الأساسية
- خادم Vultr يعمل حتى الآن Arch Linux (انظر هذه المقالة ).
- خادم ويب قيد التشغيل ، إما Apache أو Nginx
- وصول سودو:
- الأوامر المطلوب تشغيلها كجذر مسبوقة بـ
#. الطريقة الموصى بها لتشغيل الأوامر كجذر هي ، كمستخدم عادي ، بادئة كل واحد منهمsudo
- تثبيت محرر نصوص ، والتعرف عليه ، مثل vi أو vim أو nano أو emacs أو محرر مماثل
تثبيت Perl 5.28 على خادم الويب الخاص بك
تعد Perl جزءًا من مجموعة القوس الأساسية ، لذلك تم تثبيتها جنبًا إلى جنب مع بقية القوس.
لأباتشي
قم بتثبيت حزمة AUR (مستودع المستخدم المقوس) mod_perl. انظر حزم البناء على Arch Linux (بما في ذلك AUR) .
قم بتمكين وحدة Apache Perl عن طريق التحرير /etc/httpd/conf/httpd.conf، وفي نهاية قائمة LoadModuleالأوامر ، أضف ما يلي:
LoadModule perl_module modules/mod_perl.so
اجعل كل Directoryقسم تريد أن تتمكن من تشغيل سكربتات Perl يحتوي على هذه الخيارات الخيارات التالية.
<Directory "/srv/http/cgi-bin">
AllowOverride None
Require all granted
AddHandler perl-script .pl
AddHandler perl-script .cgi
PerlResponseHandler ModPerl::Registry
Options +ExecCGI
PerlOptions +ParseHeaders
</Directory>
لاحظ إذا كنت تقوم بتحرير Directoryقسم موجود ، وكان يحتوي بالفعل على Options Noneهذا السطر أو قم بالتعليق عليه أو حذفه.
إذا كنت تقوم بتشغيل دلائل مضيف متعددة ، فستحتاج أيضًا إلى تحرير الأمر /etc/httpd/conf/httpd.confوالتعليق عليه ScriptAliasكما هو موضح ، أو سيتم تقديم جميع طلبات الويب "/ cgi-bin /" /srv/http/cgi-bin/بغض النظر عن المضيف الذي يكون عليه:
<IfModule alias_module>
...
#ScriptAlias /cgi-bin/ "/srv/http/cgi-bin/"
</IfModule>
أعد تشغيل Apache:
# systemctl restart httpd
قم بإنشاء الدليل المناسب:
# mkdir /srv/http/cgi-bin
لـ Nginx
تثبيت FCGI Wrap:
# pacman -S fcgiwrap
قم بتشغيل FCGI Wrap ، واجعله يبدأ بعد كل تمهيد:
# systemctl enable --now fcgiwrap.socket
اسمح لـ Nginx باستخدام التفاف FCGI عن طريق التحرير /etc/nginx/nginx.conf، وفي كل كتلة خادم تريد استخدامها في Perl ، أضف ما يلي: بدلاً من ذلك ، إذا كنت تستخدم مضيفين افتراضيين ، فقم بتحرير ملف تكوين كل مضيف:
location ~ /cgi-bin/.*\.(cgi|pl)$ {
root /usr/share/nginx/html/;
fastcgi_pass unix:/run/fcgiwrap.sock;
include fastcgi.conf;
}
قم بإنشاء الدليل المناسب:
# mkdir /usr/share/nginx/html/cgi-bin/
اختبار بيرل
ضمن الدليل المناسب ، قم بإنشاء test.cgiمحتويات:
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
print "perl works\n";
جعله قابلاً للتنفيذ (مطلوب لنصوص perl):
# chmod +x test.cgi
في مستعرض ويب ، قم بزيارة http://YOUR-SERVER-WEB-ADDRESS-OR-IP/test.cgi، وسترى perl works.
تأكد من حذف test.cgiملف الاختبار الذي أنشأته للتو.