Előfeltételek
Telepítse a Perl 5.28-at a webszerverére
Teszt Perl
Előfeltételek
- Egy Vultr-szerver, amely a legfrissebb Arch Linuxot futtatja (lásd ezt a cikket .)
- Egy futó webszerver, Apache vagy Nginx
- Sudo hozzáférés:
- A rootként futtatandó parancsok előtagja a
#. A parancsok rootként való futtatásának javasolt módja az, hogy normál felhasználóként mindegyiket előtaggal írja elősudo
- Telepítsen egy szövegszerkesztőt, és ismerje azt, például vi, vim, nano, emacs vagy hasonló szerkesztő
Telepítse a Perl 5.28-at a webszerverére
A Perl az Arch alapcsoport része, ezért az Arch többi részével együtt telepítették.
Apache számára
Telepítse az AUR (Arch User Repository) csomagot mod_perl. Lásd: Csomagok készítése Arch Linux rendszeren (beleértve az AUR-t is) .
Engedélyezze az Apache Perl modult a szerkesztéssel /etc/httpd/conf/httpd.conf, és a LoadModuleparancsok listájának végéhez adja hozzá a következőket:
LoadModule perl_module modules/mod_perl.so
Minden Directoryszakaszban, amelyben futtatni szeretné a Perl-szkripteket, tegye ezeket a beállításokat a következő beállításokkal.
<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>
Ne feledje, ha egy meglévő Directoryszakaszt szerkeszt , és az már tartalmazza a következőt Options None, írja be megjegyzéssel az adott sort, vagy törölje azt.
Ha több gazdagép-könyvtárat futtat, akkor a képen látható módon szerkesztenie /etc/httpd/conf/httpd.confés megjegyzésbe kell írnia a ScriptAliasparancsot, különben az összes "/cgi-bin/" webkérés ki lesz szolgáltatva, /srv/http/cgi-bin/függetlenül attól, hogy melyik gazdagépről van szó:
<IfModule alias_module>
...
#ScriptAlias /cgi-bin/ "/srv/http/cgi-bin/"
</IfModule>
Indítsa újra az Apache-ot:
# systemctl restart httpd
Hozd létre a megfelelő könyvtárat:
# mkdir /srv/http/cgi-bin
Az Nginx számára
Az FCGI Wrap telepítése:
# pacman -S fcgiwrap
Indítsa el az FCGI Wrap programot, és indítsa el minden rendszerindítás után:
# systemctl enable --now fcgiwrap.socket
Engedélyezze az Nginx számára az FCGI Wrap használatát a szerkesztéssel /etc/nginx/nginx.conf, és minden kiszolgálóblokkhoz adja hozzá a következőket: Ha virtuális gazdagépeket használ, szerkessze minden gazdagép konfigurációs fájlját:
location ~ /cgi-bin/.*\.(cgi|pl)$ {
root /usr/share/nginx/html/;
fastcgi_pass unix:/run/fcgiwrap.sock;
include fastcgi.conf;
}
Hozd létre a megfelelő könyvtárat:
# mkdir /usr/share/nginx/html/cgi-bin/
Teszt Perl
A megfelelő könyvtárban hozza létre test.cgia tartalommal:
#!/usr/bin/perl
print "Content-type: text/plain\n\n";
print "perl works\n";
Tegye végrehajthatóvá (perl szkriptekhez szükséges):
# chmod +x test.cgi
Egy webböngészőben keresse fel a webhelyet http://YOUR-SERVER-WEB-ADDRESS-OR-IP/test.cgi, és látni fogja a következőt: perl works.
Ügyeljen arra, hogy törölje az test.cgiimént létrehozott tesztfájlt.