2015-02-28 2 views
0

решаемые НоЗапуск питон файл из PHP

Теперь это подножка, но сказать мне в индексе PHP это:

/sbin/ejabberdctl: line 279: /home/ejabberd/var/lock/ejabberdctl/ejabberdctl-99: Permission denied /sbin/ejabberdctl: line 279: /home/ejabberd/var/lock/ejabberdctl/ejabberdctl-100: Permission denied Ran out of connections to try. Your ejabberd processes may be stuck or this is a very busy server. For very busy servers, consider raising MAXCONNID in ejabberdctl None None 

что я должен делать, Thnx.

Я пытаюсь запустить Python файл с PHP

в PHP файл я поставил:

passthru('python /home/register/register.py '. $_POST['username'] . ' example.com ' . $_POST['password'] . ' ' . $_POST['email'] . ' ' . $ip . ' 1 2>&1'); 

он вернется с этой ошибкой:

Traceback (most recent call last): File "/home/register/register.py", line 46, in iplog = Writer("ip.txt") File "/home/register/register.py", line 35, in __init__ self.file = open(self.filename, "a") IOError: [Errno 13] Permission denied: 'ip.txt' 

сказать Разрешение отказано, и пользователь php: apache

также стараюсь: exec & shell_exe с и samething

и я стараюсь CHMOD 777 и samething

Как я могу это исправить, спасибо.

+0

Вы уверены, что открываете файл в правильной директории? Попробуйте изменить 'ip.txt' на полный путь к файлу. – Barmar

+0

777 означает, что любой может читать и писать. Вы захотите либо chmod 755 (каждый может читать и исполнять), либо изменить 700, и chown apache. файлы. Если вы пишете другие файлы в каталоге и должны создавать новые, вам нужно убедиться, что каталог, в котором хранятся файлы, также может быть написан пользователем apache. –

+0

Как @Barmar Sait, вы уверены, что URL-адрес верен? На моем хостинге он показывает мне, что каталог/sub/subdomain/blabla, но реальный путь - это корень сервера, который для меня - /data/web/domain.xx/sub/subdomain/blabla. Также я использую exec вместо пройти. – MiChAeLoKGB

ответ

0

Похоже, проблема в вашем скрипте python. Я только что запустил следующее:

//index.php 
passthru('python /tmp/register.py 2>&1'); 

#/tmp/register.py 
print 1 

и на веб-странице показаны «1». Можете ли вы попробовать запустить python register.py из командной строки и сообщить нам, что такое ошибка? Кроме того, разместите соответствующие части файла python.

0

Я думаю, что это проблема разрешения ip.txt, ваш скрипт python не имеет права доступа к ip.txt.

+1

что мне делать? – deounix

+0

chown nobody.nobody ip.txt & make sure chmod, попробуйте. –

Смежные вопросы