通过终端命令行和 Python 创建即时 Web 服务器

如何从命令中使用 python 启动即时 Web 服务器行”/>  </p>
<p>想要快速共享文件、测试一些代码或广播某些内容?您可以立即从当前目录创建一个 Web 服务器,只使用 python,是的,没有 apache,没有 nginx,没有 litespeed,所有 python,现在几乎每个 unix 变体都附带了它。考虑到它的实用性,该命令非常简单,您可以打开终端窗口和任何 Web 浏览器自行测试。</p>
<p><strong>这个技巧仅使用 python 即可立即启动一个简单的 web 服务器</strong>,它适用于 Mac OS X、Linux、FreeBSD 和任何其他具有 python 的 unix 平台。</p>
<h3>如何使用 Python 启动即时 Web 服务器</h3>
<p>要从命令行创建即时 Web 服务器,请在您希望通过浏览器和 HTTP 访问的任何目录中键入以下内容:</p>
<h4>在 Python 2 中启动一个简单的 Web 服务器</h4>
<p><code>python -m SimpleHTTPServer</code></p>
<h4>在 Python 3 中启动简单的 Web 服务器</h4>
<p><code>python -m http.server</code></p>
<p>这将立即将当前目录发布为 Web 服务器,因此如果您有一个 index.html 文件将立即显示,否则它只会列出您的本地主机 IP 或“0.0.0.0”处的目录内容。请注意,端口 8000 是此功能的默认端口设置,这意味着从浏览器访问 Web 服务器需要输入以下地址:http://0.0.0.0:8000</p>
<p>  <img decoding=

请记住,如果目录中没有 index.htm 或 index.html 文件,则会向浏览器显示一个简单的 CWD/PWD 目录列表。

一旦运行,终端将随着页面和数据从 python 网络服务器加载而更新,显示标准的 http 日志记录信息,如 GET 和 PUSH 请求,哪些文件正在访问以及由谁访问,404 错误,IP 地址,日期,次,以及您希望从标准 http 日志中获得的所有内容,就好像您正在跟踪 apache 访问日志文件一样。

python 网络服务器

如果你想指定一个端口,你可以变得更有趣,如果你希望只向特定的个人广播一些东西,或者如果你只是不想显示它,那么可以给网络服务器一些模糊的程度在标准的 8000 端口扫描上。您需要做的就是在上述命令的末尾指定一个端口号,如下所示:

python -m SimpleHTTPServer 4104

这将使 Web 服务器在 IP 端口 4104 的当前目录中启动,例如,我们假设本地主机 IP:http://127.0.0.1:4104 或 http://0.0.0.0:4104取决于您的设置。

如果您正在进行一些快速的 Web 开发并希望立即在浏览器中检查它或将其展示给其他人,并且您不想花时间使用 sftp 或将其提交给一个存储库。这应该适用于任何 unix 变体操作系统,包括 FreeBSD、Linux、Ubuntu、Redhat,当然也包括 Mac OS X。

下面的视频演示了一个 python 服务器在一个目录中启动,其中包含一个简单的 index.html 文件,它还展示了正在运行的 python 命令如何反映 http 连接的情况,就像普通的 http 服务器日志一样:

如果您发现这个小技巧有任何特别有价值的用途或其他秘密,请告诉我们。