Keine Eingabedatei angegeben - Apache und php-fastcgi

8

Die Website meines Kunden läuft derzeit auf einem Apache-Server mit mod_php. Die Routen aller Anwendungen sind in der .htaccess-Datei definiert (siehe Code unten). Jetzt versucht er auf einen Server mit apache und php-fastcgi zu migrieren, aber die Routen funktionieren nicht mehr.

%Vor%

Wenn ich auf Ссылка zugreife, bekomme ich No input file specified und im Apache error_log [fcgid:warn] mod_fcgid: stderr: PHP Warning: Unknown: function '1' not found or invalid function name in Unknown on line 0 , aber wenn ich direkt auf die Route zugreife Ссылка funktioniert es gut.

AKTUALISIEREN

Ich habe eine funktionierende Lösung gefunden, die etwas vom Framework-Verhalten verändert hat. Wenn jemand eine Lösung hat, ohne das Framework zu ändern (wahrscheinlich in der Apache- oder PHP-Konfiguration), werde ich die Antwort gadlich auf das Kopfgeld übertragen.

    
LucasFerreira 27.08.2015, 16:54
quelle

3 Antworten

5

Wie von @ user3584460 bestätigt, habe ich beschlossen, alle meine Routen zu ändern, um den gewünschten Controller / Aktion als Querystring-Parameter zu übergeben. Hier, wie es gemacht wurde.

Ich habe alle Routen geändert, um einen _url-Parameter zu übergeben:

%Vor%

Auf diese Weise würde ich nicht den Fehler "Keine Eingabedatei angegeben" erhalten, aber das Framework (zend) würde die Route nicht erkennen und würde immer die Startseite anzeigen.

Der Routen-Dispatcher hat erwartet, dass die Variable $requestUri im Format index.php/module/controller/action ist, aber mit der Änderung in .htaccess war es index.php?_url=/module/controller/action . Daher musste ich einige Änderungen in der Klasse Zend_Controller_Request_Http vornehmen, damit die Konvertierung durchgeführt werden konnte.

Also habe ich der Methode setRequestUri folgende Zeilen hinzugefügt:

%Vor%

Jetzt funktioniert es gut.

    
LucasFerreira 01.09.2015, 14:39
quelle
2

Ändern Sie Ihre Zeile mit noticias :

%Vor%     
Croises 27.08.2015 17:01
quelle
1

Manchmal sehen wir dies auf Websites, die Umschreibungen verwenden. Wir haben das behoben, indem wir das Neuschreiben geändert haben. Die alte Zeile wäre etwas wie:

%Vor%

Wir haben es in:

geändert %Vor%

Dies hat das Problem behoben.

    
Rudy Broersma 21.02.2016 12:05
quelle

Tags und Links