ฉัน googling และพยายามที่จะแก้ปัญหานี้ด้วยสคริปต์ php ของฉันสองสามวันนี้และฉันหวังว่าจะมีใครบางคนที่นี่สามารถเห็นปัญหาที่ฉันพลาดในการทำให้สคริปต์ php ของฉันหลุดออกจากสคริปต์ทุบตีของฉัน
นี่คือ php ของฉัน:
//kickoff the yapeal script
echo "Starting yapeal.sh<br>";
echo "Current working directory: ";
echo getcwd() . "\n";
shell_exec('./yapeal.sh');
echo "<br>yapeal.sh ran, I hope.<br>";
นี่คือ yapeal.sh
#!/bin/bash
cd /var/www/tools/applications
php -f /var/www/lib/yapeal/yapeal.php
sleep 5s
echo "`date -u` Yapeal kicked off, working" > bashoutput.log 2>&1
นี่คือ perms ของไฟล์:
-rwxrwxrwx 1 www-data www-data 4640 Jul 10 07:20 index.php
-rwxrwxrwx 1 www-data www-data 2845 Jul 10 07:33 working.php
-rwxrwxrwx 1 www-data www-data 232 Jul 10 07:17 yapeal.sh
นี่คือสิ่งที่ฉันได้รับเป็นผลลัพธ์ในเว็บเบราว์เซอร์:
Starting yapeal.sh
Current working directory: /var/www/tools/applications
yapeal.sh ran, I hope.
ไม่มีเอาต์พุตไปยังไฟล์ bashoutput.log
ฉันได้ตรวจสอบ php.ini แล้วไม่มีการอ้างอิงถึง exec หรือ shell_exec ในส่วน disable_functions
ฉันแก้ไขปัญหาของฉันเอง แก้ไขรหัส php เป็น: $ output = shell_exec ('./ yapeal.sh'); echo $ output;
—
David B.
คุณควรจะโพสต์สิ่งนั้นเป็นคำตอบในไม่ช้า (หรือตอนนี้?)
—
BenjiWiebe