使用Xampp运行Python脚本

Pla*_*Pro 9 python apache xampp

我正在使用python 2.7.13
首先,浏览器显示原始代码.

我做了什么:

编辑过httpd.conf

AddHandler cgi-script .cgi .pl .asp .py  
Run Code Online (Sandbox Code Playgroud)

在我的所有脚本的顶部,我添加了这个:

#!j:/Installeds/Python/python   
print "Content-type: text/html\n\n"
Run Code Online (Sandbox Code Playgroud)

现在它给了我Internal Server Error (500),我不知道还有什么可以尝试......第一次使用python.

Obs:我认为这可能会有所帮助> Apache>Error.log

[cgi:error] [pid 6364:tid 1620](9)错误的文件描述符:[client :: 1:51083] AH01222:不知道如何生成子进程:C:/ Files和Installs/Xampp/htdocs /测试/ main.py
AH02102:C:/ Files和Installs/Xampp/htdocs/Test/main.py不可执行; 确保解释的脚本有"#!" 要么 "'!" 第一行

mat*_*ict 27

在xampp for windows中运行Python:

第1步:[下载Python]

从www.python.org下载并安装最新版本的python.下载Python并点击任何版本的Windows安装程序[例如.蟒蛇-3.6.2]

第2步:[安装Python] 安装在硬盘的任何目录中[例如.d:\蟒-3.6.2]

第3:[Configur Python]打开安装xammp的目录转到apache >> conf [ex.D:\ xampp\apache\conf\httpd.conf]你会看到一个名为httpd.conf的文件在任何文本编辑器中打开它并将下面的代码放在该文件的末尾

AddHandler cgi-script .py
ScriptInterpreterSource Registry-Strict
Run Code Online (Sandbox Code Playgroud)

第4步:[可选]

在同一个文件中搜索当你发现它将index.py放在最后它看起来像这样

<IfModule dir_module>
    DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
    default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
    home.php home.pl home.cgi home.asp home.shtml home.html home.htm index.py
</IfModule>
Run Code Online (Sandbox Code Playgroud)

第5步:[重启apache/xampp]

这都是编辑,现在从你的xampp控制面板重启apache

第6步:[从xammp运行Python]

现在在xammp htdoc目录下打开一个文本编辑器和测试python [ex.d:\ XAMPP\htdocs中\ PythonProject.但是在脚本开头等待,您需要指定安装python的路径.在我的情况下它的D:/python-3.6.2/python.exe.在你的情况下它可能会有所不同,这取决于你安装的版本python和你的硬盘驱动器python代码的目录.

    #!D:/python-3.6.2/python.exe
    print("Content-Type: text/html\n")
    print ("Hello Python Web Browser!! This is cool!!")
Run Code Online (Sandbox Code Playgroud)

要么

    #!C:/Users/YOUR_WINDOWS_PROFILE/AppData/Local/Programs/Python/Python37-32/python.exe
    print("Content-Type: text/html")
    print()
    print ("""
    <TITLE>CGI script ! Python</TITLE>
    <H1>This is my first CGI script</H1>
    """)
Run Code Online (Sandbox Code Playgroud)

将文件保存为htdocs中的test.py并打开http:// localhost/PythonProject\test.py.如果一切顺利,您将看到文本"Hello Python Web Browser !!这很酷!!"


wad*_*ing 5

我运行的是 ubuntu 16.04,所以我的回答可能有点不同。我在 /opt/lampp/htdocs/PythonProject 中使用带有名为 test.py 的 python 3 文件的 google chrome 浏览器:

#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!!")
Run Code Online (Sandbox Code Playgroud)

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

AddHandler cgi-script .py
ScriptInterpreterSource Registry-Strict
Run Code Online (Sandbox Code Playgroud)

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

AddHandler cgi-script .cgi .pl
Run Code Online (Sandbox Code Playgroud)

最后我使文件可执行chmod +x /opt/lampp/htdocs/PythonProject/test.py,然后我只是通过浏览器运行它:

http://localhost/PythonProject/test.py
Run Code Online (Sandbox Code Playgroud)

输出:

hello world!

I can view this in my browser yay!!
Run Code Online (Sandbox Code Playgroud)


Noa*_*ino 0

错误的文件描述符意味着文件已损坏并且无法运行脚本,因此您可能错误地设置了 python。