I started python -m SimpleHTTPServer
on one computer on lan and used wget
to download php files from it to another. As far as i see, they seem to be downloaded correctly - i got php sources instead of html layout. Why? Is this because this server doesn't execute php? When i was downloading i was worried that i'll download just html layout results instead of php source...
Asked
Active
Viewed 4,043 times
1

Phil
- 1,969
- 6
- 29
- 33
3 Answers
4
Yep, a simple server like Python's doesn't execute PHP. Even something like Apache wouldn't execute PHP either, unless you specifically told it to (which involves installing mod_php).
Technically, as far as the web server is concerned, everything is just a downloadable file unless you (the configurator) tell it otherwise.

David Z
- 5,475
- 2
- 25
- 22
3
SimpleHTTPServer module just serves files. To parse the php files you need one of the "big" http servers, for example apache or lighttpd, with the proper module (mod_php) or cgi to parse the php code and give you the html output of it

kargig
- 314
- 1
- 2
3
This may work :)
#!/usr/bin/env python
from BaseHTTPServer import HTTPServer
from CGIHTTPServer import CGIHTTPRequestHandler
serve = HTTPServer(("",8080),CGIHTTPRequestHandler)
serve.serve_forever()
php file:
#!/usr/bin/php
<? phpinfo(); ?>
dont forget to chmod +x on the php script.

rkthkr
- 8,618
- 28
- 38
-
that's for making php script execute? very interesting, +1... – Phil Aug 27 '09 at 19:00
-
Didn't get it. Where do I write this script? I've done a lot of PHP CGI, but no python CGI, so please tell me how to do it. Thanks. – 0fnt Aug 25 '10 at 04:55
-
It is possible to instantiate CGIHTTPServer directly, it will execute CGI scripts from the cgi-bin subdirectory by default. – halp Oct 22 '10 at 08:51