运行 Python 网站上的脚本显示源代码

Running Python script on website displays source code

我有一个非常简单的 Python 脚本,我想 运行 通过我的网站。这是我的脚本:

#!/usr/bin/python
print("This line will be printed.")

假设我的脚本名为 'hello.py',我的网站名为 'mywebsite.com'。我的虚拟主机是BlueHost提供的,我可以通过FileZilla访问服务器。我将 'hello.py' 放在服务器上的 public_html 目录中(其中还包含我的网站 html 文件)。现在我尝试通过浏览器 运行 Python 脚本,所以在我的网络浏览器中我转到 'mywebsite.com/hello.py'。在网络浏览器中,打印了 'hello.py' 的源代码。有没有办法改为执行 Python 脚本?

需要进行以下修改才能成功:

(1) Python 脚本稍微修改为以下内容:

#!/usr/bin/python
print("Content-Type: text/html")
print

print("This line will be printed.")

(2) 将以下内容添加到 .htaccess 文件的 'IfModule mod_rewrite.c' 字段中:

<IfModule mod_rewrite.c>
Options +ExecCGI
AddHandler cgi-script .py
</IfModule>

下面是我在浏览器上搜索成功后的输出结果'mywebsite.com/hello.py':

将此与未遵循说明 (1) 或 (2) 的输出结果进行对比 - 浏览器仅输出 Python 源代码。例如,违反指令 (2) 会产生:

请注意,BlueHost Python 或 CGI 指南不提供此信息。我的解决方案是经过一系列 guess-and-checks 后得到的,可能会有更合适的方法来做到这一点。