Windows下Apache配置cgi-bin

修改httpd.conf

找到第一个<Directory />的地方,如下:

需要注意的是,一定要修改第一次出现的地方,修改后面的位置,一直报403错误。

<Directory />
    AllowOverride none
    Require all denied
</Directory>

修改这一段成下:

<Directory "C:/xampp/cgi-bin">
   AllowOverride None
    Order allow,deny
    Allow from all
    Options ExecCGI
</Directory>
AddHandler cgi-script .exe .pl .cgi .py

cgi-bin目录一般是在所安装的Apache目录下,但是本人安装的是XAMPP,所以是这个目录。

当然,实际上可以由自己指定的。

此外,还要修改ScriptAlias

Windows下Apache配置cgi-bin

 

貌似在370多行,修改的路径和上面一致即可。

看起来是必须的,但是实际上,这个可能需要读者自行测试了。

以下为第一个程序:test.cpp

#include <iostream>
using namespace std;
 
int main ()
{
    
   cout << "Content-type:text/html\r\n\r\n";
   cout << "<html>\n";
   cout << "<head>\n";
   cout << "<meta charset=\"utf-8\">";
   cout << "<title>Hello World </title>\n";
   cout << "</head>\n";
   cout << "<body>\n";
   cout << "<h2>Hello World! </h2>\n";
   cout << "</body>\n";
   cout << "</html>\n";
   
   return 0;
}

直接 g++ test.cpp -o test.exe,生成可执行文件。

然后启动apache,输入路径,访问即可。

Windows下Apache配置cgi-bin

 

 或者g++ test.cpp -o test.cgi

Windows下Apache配置cgi-bin

 

 至于python:test.py

#!"C:\Python39\python.exe"
print("Content-type:text/html\r\n\r\n")
print("<html>\n")
print("<head>\n")
print("<meta charset=\"utf-8\">")
print("<title>Hello World </title>\n")
print("</head>\n")
print("<body>\n")
print("<h2>Hello World! </h2>\n")
print("</body>\n")
print("</html>\n")

和cgi-bin目录中已有的cgi.cgi类似。第一行需要填写解释器的路径。

Windows下Apache配置cgi-bin

 

上一篇:当面试官问你在网页上点击一个链接或 URL 发生了什么是在问什么


下一篇:配置Apache 运行CGI