On 1/27/13, tamouse mailing lists <tamouse.li...@gmail.com> wrote:
> On Sun, Jan 27, 2013 at 3:10 AM, jupiter <jupiter....@gmail.com> wrote:
>> I have a client.php which calls an external python socket client
>> program exec("Client.py"), the Client.py calls
>> sockobj.connect(("localhost", 60000)) to connect socket.
>> If I run the client.php from Linux command line $ ./client.php, it
>> works find, no problem at all.
>> But when I run it from web page http://localhost/client.php, it could
>> not connect to socket at following exception in python
>> sockobj.connect(("localhost", 60000)):
>> "sockobj.connect Errno 13 Permission denied"
>> Why it can run from command line, but cannot make socket connection
>> from web? Does it need some kind of configuration in php or apache?
>> Appreciate any tips and clues.
>> Thank you.
>> Kind regards.
>> I am puzzled by
> First question: why use a separate program and language to call a
> socket? PHP has two ways of doing it, using the Socket extension and
> using the Stream extension. The Stream extension is a little nicer as
> you just use standard PHP file functions on it.
I knew it was a bad example to run external python, so I tried to run
socket connection directly from the php file client.php, it got the
same error "socket_connect() failed. Reason: () Permission denied" at
$result = socket_connect($socket, "localhost", 60000).
Once again, it was fine to run the client.php from the command line. I
can feel something was missing either in php or apache ....
> To look here, though, you might want to look at the permissions on
> client.py to make sure it as well as the requisite paths to get to the
> script are readable and executable by the user running your webserver,
> or alternatively, your php scripts if running something like fcgi.
Forget about client.py, and all files are with 755 access permission.
It is not my first time to program and run php, but it is my first
time to run php file calling socket connection. Something was not
quite right here.
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php