Încerc să pun în funcțiune un script perl pe Oracle Linux 8.5.
Serverul meu Apache și gazdele virtuale funcționează cu html static.
Gazda mea virtuală de testare, fnu, are un script perl foarte simplu numit hw.pl în /var/www/fnu:
#!/usr/bin/perl
printează „Tipul conținut: text/html\n\n”;
printează „Bună, lume. Acesta este fnu.”;
Am un link de la index.html la hw.pl, permisiunile deschise și proprietarul setat la apache:
-rwxrwxrwx. 1 apache apache 89 Jun 4 20:59 hw.pl
lrwxrwxrwx. 1 apache apache 5 Jun 4 20:59 index.html -> hw.pl
Iată configurația site-ului în /etc/httpd/conf.d:
<VirtualHost *:80>
DocumentRoot „/var/www/fnu/”
ServerName fnu.[obscured].net
ServerAlias fnu
ErrorLog /var/log/fnu/error.log
CustomLog /var/log/fnu/request.log combinat
</VirtualHost>
<Directory "/var/www/fnu">
Opțiuni +ExecCGI +SymLinksIfOwnerMatch
AddHandler cgi-script .cgi .pl
</Directory>
Dacă îndrept un browser către fnu/hw.pl, primesc rezultatul pe care îl aștept - ieșirea scriptului. Dacă îndrept browserul către fnu/, primesc conținutul fișierului. Deci, urmărește linkul, dar nu îl rulează ca script perl odată ce ajunge acolo. Nimic util în /var/log/fnu/error.log.
SELinux este setat la Permisiv.
Apreciez orice ajutor.
Ieșirea scriptului conform așteptărilor
Conținutul fișierului script