Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SHELL] 500 Internal Server Error mimo wykonania
Forum PHP.pl > Forum > PHP
arogant
Witam. Wykonuje skrypt napisany w bashu poprzez shell_exec. Tak wygląda mój plik:
  1. if(isset($_GET['debug'])){
  2. $type = 'now';
  3. $date = '2022-12-22';
  4. $time = '15:32';
  5. echo "DeBUG";
  6. } else {
  7. $type = $_POST['type'];
  8. $date = $_POST['date'];
  9. $time = $_POST['time'];
  10. }
  11. if ($type != '') {
  12. if ($type == 'schedule' && $date != '' && $time != '') {
  13. $output = shell_exec("echo 'sudo /bin/bash /bin/vercheck' | at " . $time . " " . $date);
  14. } else if ($type == 'now') {
  15. $output = shell_exec("sudo /bin/bash /bin/vercheck");
  16. }
  17. }
  18. echo json_encode($time." ". $date." ".$type." = ");


Działanie skryptu vercheck wykonuje się poprawnie, ale mimo tego dostaję error 500. Przejrzałem wszystkie logi linuxa ale nic nie znalazłem związanego z tym.
Dodatkowo na początku pliku dałem
  1. ini_set(‘display_errors’, 1);
  2. ini_set(‘display_startup_errors’, 1);
ale też żadnych błędów oprócz 500 nie pokazało.. Nie mam już pojęcia w czym mogę szukać. Mógłby ktoś mnie nakierować? Pozdrawiam

Temat do zamknięcia. Przypomniałem sobie, że w tym skrypcie, który jest uruchamiany przez shell_exec resetuje php stąd error 500
Tomplus
Skoro resetujesz PHP, to oznacza że wywalasz sobie parser podczas jego działania. Tak jakbyś obciął sobie gałąź na której siedzisz.

Spróbuj uruchomić sobie skrypt z samą funkcją i zapisać sobie wynik do pliku tekstowego:
Kod
<?php
shell_exec("sudo /bin/bash /bin/vercheck >> ~/php_shell_exec_error.txt");
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.