So verwenden Sie separate PHP-Version für verschiedene PHP-Dateien

8

Ich habe eine Site (basierend auf ZEND Framework) und gehostet auf 1and1 Server.

1and1 Server verwendet PHP Version 5.2.17 und 5.4.5. Ich muss PHP Version 5.4.5 nur für ein paar Dateien verwenden. Dies liegt daran, dass einige meiner anderen Dateien Fehler anzeigen, wenn ich PHP 5.4.5 verwende, aber sie funktionieren gut mit PHP 5.2.17.

In meiner .htaccess-Datei wurde die Zeile unten geschrieben, um PHP 5.2.17 zu verwenden

%Vor%

Um PHP 5.4.5 zu verwenden, muss ich die folgende Zeile verwenden (Anweisungen zur Verwendung dieses Codes finden Sie auf der 1 und 1-FAQ-Seite)

%Vor%

FAQ URL (s):

Gibt es eine Möglichkeit, PHP 5.4.5 nur für diese speziellen Dateien zu verwenden?

Ich habe versucht, die folgende Zeile in .htaccess zu verwenden, aber es funktioniert nicht:

%Vor%

BEARBEITEN

Ich habe versucht, den 5.2-Code zu bearbeiten. Ich benutze PEAR-Pakete, um ein Excel-Blatt zu erstellen, das mit PHP 5.2.17 funktioniert, aber den Fehler unten in PHP 5.4.5 anzeigt.

  

Schwerwiegender Fehler: _PEAR_call_destructors ()

kann nicht deklariert werden

Nachtrag

Diese Änderung an der Datei .htaccess

%Vor%

erzeugt 404 "Seite nicht gefunden" -Fehler, wenn ich den Dateinamen von FilenameController.php in FilenameController.php6 ändere und wenn ich versuche, die Seite zu besuchen, die er generiert.

    
Debashis 17.08.2012, 13:00
quelle

2 Antworten

5

Warum nicht einfach

%Vor%

Und benenne deine 5.4 Skripte in php6 um? Sie können dies sogar vor dem Benutzer verbergen, indem Sie in Ihrer .htaccess -Datei Folgendes tun:

%Vor%

Dies führt eine interne Richtung zu einer .php6-Erweiterung für diese eine Skriptdatei. : -)

Lassen Sie mich jedoch betonen: Sie können nur auswählen, welche Scripting-Engine auf einer pro Anfrage -Basis und nicht pro Datei verwendet werden soll. Zum Beispiel: http:/yourdomain.com/FilenameController.php wird von PHP 5.4 RTS behandelt und alle enthaltenen Dateien werden mit PHP 5.4 kompiliert und ausgeführt; http:/yourdomain.com/index.php wird von PHP 5.2 RTS verarbeitet und alle enthaltenen Dateien werden mit PHP 5.2 kompiliert und ausgeführt.

Sie können 5.4 nicht verwenden, um eine Datei innerhalb einer Anwendung zu kompilieren, und 5.2, um den Rest zu kompilieren.

    
TerryE 18.08.2012 00:55
quelle
1
  

1and1 Server verwendet PHP Version 5.2.17 und PHP Version 5.4.5.

Ich wäre neugierig auf die Details dieser.

Wenn Sie PHP als Apache-Modul (mod_php) ausführen, können Sie immer nur eine Version auf derselben Apache-Installation ausführen. Sind Sie sicher, dass Ihr Server es sogar erlaubt, beide gleichzeitig zu verwenden? Wahrscheinlich können Sie Apache neu starten und es mit einer anderen Version ausführen. Wenn das der Fall ist, kannst du dich nicht wirklich darauf einstellen, damit du php nicht über cgi einrichten kannst.

    
troelskn 21.08.2012 08:06
quelle

Tags und Links