Windows下配置Apache服务器

一.、下载

  推荐 //www.apachehaus.com/cgi-bin/download.plx

  我下载的是64位的Apache24

二、解压

  解压下载好的压缩包httpd-2.4.46-win64-VS16.zip,我把其中Apache24文件夹全部存到E盘

       

三.、修改httpd.conf文件

  记事本方式打开E:\Apache24\conf\httpd.conf

  修改其中一些关键行,将该行内容修改如下(下面有些修改是增加运行python脚本,但不影响通用设置):

  1.第432行改为

AddHandler cgi-script .cgi .py

        在<IfModule mime_module>标签的 AddHandler 中添加 .py 后缀,这样我们就可以访问 .py 结尾的 python 脚本文件,注意前面的#也要删除

  2.第384行<Directory “${SRVROOT}/cgi-bin”>全部内容替换为

<Directory "${SRVROOT}/cgi-bin">
    AllowOverride None
    Options +ExecCGI
    Order allow,deny
    Allow from all
    Require all granted
</Directory>

  这是修改脚本文件的访问权限,<Directory “${SRVROOT}/htdocs”>是静态页面权限

  3.第74行删除前面的#

LoadModule access_compat_module modules/mod_access_compat.so

  4.第37行改为Apache24保存的目录,即E:\Apache24

Define SRVROOT "E:/Apache24"

  这是Apache2.4的主目录,路径不要包含中文。

  5.其他设置(可不修改)

  第60行Listen 指示服务器的端口号,默认80

  第227行需要改则删除#,例如 ServerName localhost:80

  第251行DocumentRoot是存放静态资源页面的目录

  第368行ScriptAlias是访问脚本文件的目录

四、安装服务

  cmd切换到E:\Apache24\bin,运行httpd -k install,如下图就成功了  

  

 

  如果安装失败,可以查看日志(路径:E:\Apache24\logs)或者使用httpd来查找具体原因,例如下图

  

五、启动服务

  建议使用ApacheMonitor.exe,路径E:\Apache24\bin\ApacheMonitor.exe

  

六、测试服务是否启动成功

  浏览器访问//localhost,看到“It works!”则表示成功。

  访问失败建议关闭防火墙退出杀毒软件。

七、静态页面测试  

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>测试</title>
    </head>
    <body>
        <h2>测试</h2>
    </body>
</html>

  保存到E:\Apache24\htdocs\test.html

  浏览器访问//localhost/test.html,看到“测试”则表示成功。

  如果第六步成功,而第七步失败,检查httpd.conf

八、测试脚本运行

#!C:\Users\Administrator\AppData\Local\Programs\Python\Python37\python.exe
# -*- coding: UTF-8 -*-

print ("Content-type:text/html")
print ()
print ('<html>')
print ('<head>')
print ('<meta charset="UTF-8">')
print ('<title>测试</title>')
print ('</head>')
print ('<body>')
print ('<h2>测试</h2>')
print ('</body>')
print ('</html>')

  保存到E:\Apache24\cgi-bin\test.py

  注意:第一行是指定使用哪个python解释器来运行脚本,这是我本机python安装路径,这个很重要,windows不适用#!/usr/bin/python

  浏览器访问//localhost/cgi-bin/test.py,看到“测试”则表示成功。

Tags: