Я пытаюсь записать файл, запустив скрипт python в качестве пользовательских www-данных. Когда я запускаю скрипт, используя следующее:
sudo python my_script.py
он пишет хорошо. Когда я запускаю скрипт PHP как www-data, он не пишет. Разрешения:
folder(PiControl....contains status_log file): drwxrwxrwx
file(status_log....the file I am trying to write to): -rwxrwxrwx User:www-data group:www-data
запись в файл Код Python:
#!/usr/bin/python
import datetime
status="on"
with open("status_log", "a") as myfile:
myfile.write("{} {} {}".format("<br>light is now:", status,datetime.datetime.now()))
Я создал кнопку веб-страницы для запуска файла
Может кто-нибудь сказать мне, что здесь изменить?
Поскольку у меня были symlink'ed мои веб файлы из моего домашнего каталога, когда PHP прочитал status_log, они нашли его в моем локальном каталоге, когда www-данные написали ему (через Python выше), он создал файл в /var/www, вместо этого of/home, где я пытался его прочитать.
Решение заключалось в том, чтобы изменить путь считываемого файла к его местоположению в: /var/www