从 python 简单 http 服务器下载 php 文件

从 python 简单 http 服务器下载 php 文件

python -m SimpleHTTPServer从局域网上的一台计算机开始,并将wgetphp 文件从这台计算机下载到另一台计算机。据我所见,它们似乎被正确下载了 - 我得到的是 php 源代码而不是 html 布局。为什么?这是因为该服务器不执行 php 吗?当我下载时,我担心我只会下载 html 布局结果而不是 php 源代码...

答案1

是的,像 Python 这样的简单服务器不会执行 PHP。甚至像 Apache 这样的服务器也不会执行 PHP,除非你明确告诉它(这需要安装 mod_php)。

从技术上来说,就 Web 服务器而言,一切只是一个可下载的文件,除非您(配置器)另有说明。

答案2

SimpleHTTPServer 模块仅提供文件服务。要解析 php 文件,您需要一个“大型”http 服务器,例如 apache 或 lighttpd,并配备适当的模块 (mod_php) 或 cgi 来解析 php 代码并为您提供其 html 输出

答案3

这可能有用:)

#!/usr/bin/env python
from BaseHTTPServer import HTTPServer
from CGIHTTPServer import CGIHTTPRequestHandler
serve = HTTPServer(("",8080),CGIHTTPRequestHandler)
serve.serve_forever()

php文件:

#!/usr/bin/php
<? phpinfo(); ?>

不要忘记在 php 脚本上 chmod +x。

相关内容