Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann man Passthru, Exec und System sicher verwenden, wenn PHP Python aufruft?
Es gibt zwei verwandte Fragen:
1.
Wenn Sie exec verwenden, müssen Sie „disable_functions“ entfernen.
Wie sorgt man für Sicherheit?
2. Platzieren Sie 1.php und test.py im selben Verzeichnis
1.php:
<code><?php exec('python test.py'); ?> </code>
test.py:
print '1234'
http://localhost/1.php anrufen, aber keine Antwort?
Es gibt zwei verwandte Fragen:
1.
Wenn Sie exec verwenden, müssen Sie „disable_functions“ entfernen.
Wie sorgt man für Sicherheit?
2. Platzieren Sie 1.php und test.py im selben Verzeichnis
1.php:
<code><?php exec('python test.py'); ?> </code>
test.py:
print '1234'
http://localhost/1.php anrufen, aber keine Antwort?
Wenn beim Aufruf von Python in PHP keine Antwort erfolgt, liegt möglicherweise ein Problem mit Umgebungsvariablen vor. Sie können versuchen, den absoluten Pfad von Python oder den absoluten Pfad der aufzurufenden Python-Datei zu verwenden.
Wenn keine Sonderbehandlung erfolgt, handelt es sich bei diesem Aufruf möglicherweise um einen synchronen Aufruf von http. Dieser Ort wartet auf die Ausführung von Python und kann zu einer Zeitüberschreitung führen.
Versuchen Sie, exec und andere Funktionen im CLI-Modus zu verwenden
PHP direkt mit Python anpassen