2015-07-08 5 views
24

Ich habe die PHP-Version auf 5.5.26 aktualisiert. Mit PHP 5.4 meine Apache-Konfiguration mit FCGI war:Webmin php-lib.pl Änderung

AddHandler fcgid-script .php 
AddHandler fcgid-script .php5 

Mit der neuen Version von PHP muss ich andere config Werke setzen:

<FilesMatch \.php$> 
    SetHandler fcgid-script 
</FilesMatch> 

Es ist OK, es funktioniert.

Mein Problem ist mit Virtualmin-Modul von Webmin. Ich möchte nicht jedes Mal, wenn die Config ändern, so habe ich die Perl /usr/share/webmin/virtual-server/php-lib.pl Datei bearbeitet:

# Directives for fcgid 
local $dest = "$d->{'home'}/fcgi-bin"; 
#push(@phplines, "AddHandler fcgid-script .php"); 

# New config for PHP files 
push(@phplines, "<FilesMatch \\.php\$>"); 
push(@phplines, "SetHandler fcgid-script"); 
push(@phplines, "</FilesMatch>"); 

push(@phplines, "FCGIWrapper $dest/php$ver.fcgi .php"); 
foreach my $v (&list_available_php_versions($d)) { 
    #push(@phplines, 
    #  "AddHandler fcgid-script .php$v->[0]"); 
    push(@phplines, "FCGIWrapper $dest/php$v->[0].fcgi " . ".php$v->[0]"); 
} 

Aber meine Veränderung tut nichts, weiter Webmin die Linien AddHandler setzen. Ich habe Webmin neu gestartet, ich habe die Datei /etc/webmin/module.infos.cache gelöscht.

+0

Gibt es irgendwo eine Deploy-Funktion? – simbabque

+2

Setzen Sie eine Zeile in die Datei zu loggen, um zu bestätigen, dass dies das Skript ist, das von webmin aufgerufen wird – dlporter98

+0

Ich denke, das PHP-Tag ist falsch. – adrian7

Antwort

3

Zunächst einmal sollten Sie einfache Anführungszeichen statt doppelte Anführungszeichen für eine einfachere Syntax:

... 
push(@phplines, '<FilesMatch \.php$>'); 
push(@phplines, 'SetHandler fcgid-script'); 
push(@phplines, '</FilesMatch>'); 
... 

prüfen diese bestimmte Datei auf Syntaxfehler mit

perl -c /usr/share/webmin/virtual-server/php-lib.pl 

in diese eine Log-Datei irgendwo hinzufügen Datei, so dass Sie sicher sind, dass diese Datei überhaupt aufgerufen wird. Z.B. Fügen Sie so etwas vor dem oben gezeigten Code hinzu:

my $fh; 
open($fh, '>>', "/tmp/test.log") or die "Couldn't open: $!"; 
print $fh "This file is actually used!"; 
close $fh; 
...