Ich habe Dateistruktur auf EC2 wie: aber mit einigen Dateireferenzierungsproblemen konfrontiert.
%Vor%Ich habe versucht, Dateireferenzierung als:
%Vor%aber cron läuft nicht.Es gibt einen Fehler in der Mail als
%Vor%Wenn Sie sich die PHP-Konstante PATH_SEPARATOR ansehen, sehen Sie, dass sie ":" für Sie ist .
Wenn Sie die Zeichenkette ".: / usr / share / pear: / usr / share / php" mit diesem Zeichen zerlegen, erhalten Sie 3 Teile
Alle Versuche, () / require () -Dinge einzuschließen, sehen in diesen Verzeichnissen in dieser Reihenfolge aus.
Es zeigt Ihnen, dass in der Fehlermeldung Sie wissen lassen, wo es die Datei NICHT finden konnte, die Sie anfordern wollten ()
Für Ihre erste Anforderung, wenn diese in Ihrer index.php enthalten ist, brauchen Sie nicht die Dir-Sachen, tun Sie einfach:
%Vor%wie von Uberfuzzy [echte Ursache des Problems] erwähnt
Wenn Sie sich die PHP-Konstante [PATH_SEPARATOR] [1] ansehen, sehen Sie, dass sie für Sie ":" ist.
Wenn Sie die Zeichenfolge ".: / usr / share / pear: / usr / share / php" mit diesem Zeichen zerlegen, erhalten Sie 3 Teile
Alle Versuche, () / require () -Dinge einzuschließen, sehen in diesen Verzeichnissen in dieser Reihenfolge aus.
Es zeigt Ihnen, dass in der Fehlermeldung Sie wissen lassen, wo es die Datei NICHT finden konnte, die Sie anfordern wollten ()
Das war die Ursache für Fehler.
Jetzt zur Lösung kommen
php --ini
(in meinem Fall: /etc/php5/cli/php.ini
) include_path
in vi mit esc
und drücke dann /include_path
dann enter
include_path = ".:/usr/share/php:/var/www/<directory>/"
sudo service apache2 restart
Das ist es. Hoffe es hilft.
Tatsächlich besteht die Lösung darin, die php.ini-Datei zu öffnen, die Zeile include_path zu bearbeiten und ändere es entweder komplett in
%Vor%oder hängen Sie das
an %Vor%zum aktuellen Wert von include_path.
Es wird weiter erklärt in: Ссылка
Das sind nur die Verzeichnisse, in denen Sie sehen, wo PHP nach Ihrer Datei gesucht hat. Stellen Sie sicher, dass cron1.php
existiert, wo Sie denken, dass es tut. Und stellen Sie sicher, dass Sie wissen, wo dirname(__FILE__)
und $_SERVER['DOCUMENT_ROOT']
zeigen, wo Sie erwarten würden.
Dieser Wert kann in Ihrer php.ini Datei angepasst werden.
Tags und Links php apache2 path cron include-path