Προαπαιτούμενα
Εγκαταστήστε το Perl 5.28 στον διακομιστή ιστού σας
Δοκιμή Perl
Προαπαιτούμενα
- Ένας διακομιστής Vultr με ενημερωμένο Arch Linux (δείτε αυτό το άρθρο .)
- Ένας διακομιστής ιστού που λειτουργεί, είτε Apache είτε Nginx
- Πρόσβαση Sudo:
- Οι εντολές που απαιτούνται για εκτέλεση ως root έχουν το πρόθεμα
#. Ο συνιστώμενος τρόπος εκτέλεσης εντολών ως root είναι, ως κανονικός χρήστης, να τοποθετήσετε πρόθεμα σε καθεμία από αυτέςsudo
- Έχετε εγκατεστημένο ένα πρόγραμμα επεξεργασίας κειμένου και εξοικειωθείτε με αυτό, όπως vi, vim, nano, emacs ή παρόμοιο πρόγραμμα επεξεργασίας
Εγκαταστήστε το Perl 5.28 στον διακομιστή ιστού σας
Το Perl είναι μέρος της ομάδας βάσης Arch, επομένως εγκαταστάθηκε μαζί με το υπόλοιπο Arch.
Για Apache
Εγκαταστήστε το πακέτο AUR (Arch User Repository) 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 Wrap με επεξεργασία /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/
Δοκιμή Perl
Μέσα στον κατάλληλο κατάλογο, δημιουργήστε 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δοκιμαστικό αρχείο που μόλις δημιουργήσατε.