2016-10-21 5 views
1

In Putty Befehlszeile schreibe ichLauf PHP in Putty gibt 'konnte nicht geöffnet Eingabedatei'

/usr/bin/php /var/www/html/folder/file.php 

versuchen auch

php /var/www/html/folder/file.php 

Beide geben 'konnte nicht geöffnet Eingabedatei'

Die Freigabe für die Datei ist 777. Betriebssystem ist UNIX

PHP-Skript:

<?php 

$headers = 'MIME-Version: 1.0' . "\r\n"; 
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; 
$headers .= 'From: CRON'; 

mail('[email protected]','CRON',"<b>THIS IS SIMULATION TEST</b>",$headers); 


?> 
+0

Entschuldigen Sie die blöde Frage, aber haben Sie überprüft, dass die Datei tatsächlich da ist? Versuchen Sie vielleicht auch, mit einem relativen Pfad zuzugreifen. –

+0

Ja). Zusätzlich dazu kann ich es durch den Browser –

+0

ausführen Und was ist mit relativen Pfad verwenden? Das heißt, wenn Sie in den Ordner/var/www/html/wechseln und von dort aus starten. –

Antwort

2

Dies passiert manchmal, wenn Sie Windows Newline Endungen (\ r \ n) anstelle von Unix-Stil (\ n) innerhalb der PHP oder cron-Datei haben.

Fix: konvertieren Zeilenenden zu Unix-Stil

dos2unix /var/www/html/folder/file.php

oder

sed -i 's/\r//' /var/www/html/folder/file.php

oder

Verwenden Sie einen Editor wie Notepad++ zu EOL konvertieren:

  1. die Datei in Editor öffnen ++
  2. doppelklicken Sie auf "DOS/Windows-" in der rechten unteren Ecke
  3. Änderung "UNIX/OSX-Format"
  4. speichern, hochladen und testen

.

Denken Sie daran, tun dies für die PHP-Datei und die Datei mit Ihren Cron-Befehlen.

+0

Ich habe keine Newline-Endungen. Nur eine Zeile der Dateiadresse –

+0

Haben Sie die #!/Usr/bin/php-Zeile an der Spitze der .php-Datei? – c4n

+0

Und ich meine Newline-Endungen in der PHP-Datei, nicht in der Befehlszeile. – c4n

0

Verwenden Sie den relativen Pfad. Das heißt, wenn Sie in den Ordner/var/www/html/wechseln und von dort aus starten.

+0

Ich muss es über den absoluten Pfad ausführen. Wie es von cronjob –

+0

ausgeführt wird, sehe ich, dass ich @Tarlan in den Kommentaren antwortete. –

+0

Jetzt ist es))))) –

Verwandte Themen