apache 使用Xampp运行Python脚本

qkf9rpyu  于 2022-11-16  发布在  Apache
关注(0)|答案(4)|浏览(135)

我使用的是python 2.7.13
一开始浏览器显示的是原始代码。
我所做的:

已编辑httpd.conf文件

AddHandler cgi-script .cgi .pl .asp .py

在我所有脚本的顶部,我添加了以下内容:

#!j:/Installeds/Python/python   
print "Content-type: text/html\n\n"

现在它给了我Internal Server Error (500),我不知道还能尝试什么......第一次使用python。
观察结果:我认为这可能会有帮助〉Apache>Error.log
[cgi:错误] [pid 6364:tid 1620](9)文件描述符错误:[客户端::1:51083] AH 01222:不知道如何生成子进程:C:/文件和安装/Xampp/htdocs/测试/main.py
AH 02102:C:/文件和安装/Xampp/htdocs/测试/main.py不可执行;确保解释的脚本的第一行包含“#!”或“'!”

xyhw6mcr

xyhw6mcr1#

在XAMPP for Windows中运行Python

步骤1:下载并安装Python

https://www.python.org/downloads下载并安装Python的最新版本。

步骤2:为Python配置XAMPP

使用您选择的文本编辑器打开位于.../xampp/apache/conf/httpd.conf的Apache httpd.conf配置文件。
XAMPP GUI还可以快速访问httpd.conf文件:

复制以下代码并将其粘贴到文件末尾:

AddHandler cgi-script .py
ScriptInterpreterSource Registry-Strict

步骤2.5:将Python扩展添加到默认页面位置(可选)

httpd.conf文件中搜索<IfModule dir_module>,将index.py以及其他内容添加到默认页面位置列表中。

<IfModule dir_module>
    DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm index.py \
    default.php default.pl default.cgi default.asp default.shtml default.html default.htm default.py \
    home.php home.pl home.cgi home.asp home.shtml home.html home.htm home.py
</IfModule>

步骤3:重新启动Apache / XAMPP

如果Apache在编辑时正在运行,现在应该重新启动它。

步骤4:从XAMPP运行Python

在XAMPP htdocs目录下创建一个文件夹和Python文件;例如.../xampp/htdocs/PythonProject/test.py
在脚本开始时,你首先需要指定Python可执行文件的目录,Python 3.10.0的默认位置是C:/Users/<YOUR_WINDOWS_PROFILE>/AppData/Local/Programs/Python/Python310/python.exe,但在你的例子中,它可能会有所不同,这取决于你安装Python的版本和目录。

#! C:/Users/<YOUR_WINDOWS_PROFILE>/AppData/Local/Programs/Python/Python310/python.exe

之后,您可以创建Python脚本。

#! C:/Users/<YOUR_WINDOWS_PROFILE>/AppData/Local/Programs/Python/Python310/python.exe

print("Content-Type: text/html\n")
print("Hello, World!")

保存文件并在Web浏览器中打开localhost/PythonProject/test.py。Python脚本应该正在运行。

lo8azlld

lo8azlld2#

我用的是ubuntu16.04,所以我的答案可能会有点不同。我用的是谷歌Chrome浏览器,test.py在/opt/lampp/htdocs/PythonProject中有一个名为www.example.com的python 3文件:

#test.py
#!/usr/bin/env python3
print('Content-type: text/html\r\n\r')
print("<p>hello world!</p>")
print("I can view this in my browser yay!!")

我在/opt/lampp/etc/httpd.conf中编辑了我的httpd.conf文件,并且我没有没有添加

AddHandler cgi-script .py
ScriptInterpreterSource Registry-Strict

到文件的末尾,而是将**.py**添加到现有行的末尾

AddHandler cgi-script .cgi .pl

最后我把这个文件做成了chmod +x /opt/lampp/htdocs/PythonProject/test.py可执行文件,然后我就通过浏览器运行它:

http://localhost/PythonProject/test.py

输出:

hello world!

I can view this in my browser yay!!
xwbd5t1u

xwbd5t1u3#

1.从这里下载python(https://www.python.org/downloads/)并安装它
1.打开XAMPP控制面板,点击config并转到httpd.conf文件〉〉搜索addhandler并添加“.py”[不带引号],就像屏幕截图中一样(如果没有添加)httpd.conf file
1.重新启动apache服务器

**若要执行python指令码:**开启任何文本编辑器,并将此程式码

#!C:/Users/"Username"/AppData/Local/Programs/Python/Python37-32/python.exe
print("content-type: text/html\n\n" )
print("<br><B>hello python</B>")

在第一行中,你必须输入python.exe文件的位置,然后输入shebang(#!)“username”--你电脑的用户名这会因用户而异。你可以从环境变量中找到python的位置(见下面的截图)
py environment variables

  • 然后将脚本放在xampp〉〉htdocs文件夹中
  • 打开浏览器并键入localhost/“filename”.py(http://localhost/filename.py)[“filename”=脚本名称],您将看到以下输出

output

cotxawn7

cotxawn74#

Bad File描述符意味着文件已损坏,它表示无法运行脚本,因此可能是python设置不正确。

相关问题