• Windows 配置Apache+CGI


    首先还是先在官网下载Apache,版本为Apache 2.4.26 x64,下载64位的
    地址为:http://www.apachehaus.com/cgi-bin/download.plx

     

     下载完成后解压,Apache24移动到你想放置的地方

     

    我这里是把Apache24放在G盘下。 

      


     接下来进行CGI配置

    进入conf,用记事本(或者Notepad等编辑器)编辑httpd.conf文件

    【简洁版修改步骤:这里只列出了要修改的关键地方】(后面有介绍详细修改步骤)
    # STEP:1.设置Appache在你电脑的安装目录 Define SRVROOT "G:/Apache24" ServerRoot "${SRVROOT}" ...
    #Listen
    12.34.56.78:80 # STEP:2.修改监听端口 Listen 88 ...
    # STEP:
    3.开启基于主机的组授权(去掉下面这行的注释即可) LoadModule access_compat_module modules/mod_access_compat.so ... # STEP:4.开启apache的代理模块(直接去掉前面的注释即可) LoadModule proxy_module modules/mod_proxy.so ... # STEP:5.开启代理http和https请求(直接去掉前面的注释即可) LoadModule proxy_http_module modules/mod_proxy_http.so ...
    # STEP:
    6.开启rewrite模式(直接去掉前面的注释即可) LoadModule rewrite_module modules/mod_rewrite.so ...

    # STEP:7.开启虚拟主机动态配置(直接去掉前面的#注释即可)
    LoadModule vhost_alias_module modules/mod_vhost_alias.so
    ...
    
    # STEP:8.开启CGI路径的访问权限
    <Directory "G:/var/www/cgi-bin/">
        AllowOverride All
        Options +ExecCGI
        Order allow,deny
        Allow from all
    </Directory>
    ...
    
        # STEP:9.修改映射地址
        ScriptAlias /cgi-bin/ "G:/var/www/cgi-bin/"
        ... 
        
        # STEP:10.添加后缀
        AddHandler cgi-script .cgi .pl .py
        ...
    
    # STEP:11.开启虚拟主机配置
    # Virtual hosts
    Include conf/extra/httpd-vhosts.conf
    ...

     


    详细讲解配置步骤:


    Step:1.修改安装目录,在39行左右
    当前Apache安装存放的目录,例如我这里的"G:/Apache"
    修改Define SRVROOT后面的路径

      

    Step:2.修改Listen端口,在67行左右
    默认为80,80端口可能会被其他程序占用,所以我这里修改为88,当然也可以修改为其他的8088、90等,只要没有被占用就行了

      

    Step:3.开启基于主机的组授权(名称或IP地址),在81行左右

    直接去掉前面的#注释即可
    LoadModule access_compat_module modules/mod_access_compat.so

      

    Step:4.开启apache的代理模块 ,在149行左右
    直接去掉前面的#注释即可
    LoadModule proxy_module modules/mod_proxy.so

    Step:5.开启代理http和https请求,在157行左右
    直接去掉前面的#注释即可
    LoadModule proxy_http_module modules/mod_proxy_http.so

    Step:6.开启rewrite模式,在167行左右
    直接去掉前面的#注释即可
    LoadModule rewrite_module modules/mod_rewrite.so

    Step:7.开启虚拟主机动态配置,在188行左右
    直接去掉前面的#注释即可
    LoadModule vhost_alias_module modules/mod_vhost_alias.so

    Step:8.设置CGI路径的访问权限,在239行左右
    原本的内容为
    <Directory />
    AllowOverride none
    Require all denied
    </Directory>

    删掉或注释掉,修改为下面的内容
    <Directory " G:/var/www/cgi-bin/">
    AllowOverride All
    Options +ExecCGI
    Order allow,deny
    Allow from all
    </Directory>

    注意,所有的HTTP服务器执行CGI程序都保存在一个预先配置的目录。
    这个目录被称为CGI目录,并按照惯例,它被命名为/var/www/cgi-bin目录。
    所以这里修改的目录为“G:/var/www/cgi-bin/”。(我在G盘手动创建了"G:/var/www/cgi-bin/"目录)

    Step:9.设置CGI脚本文件路径,在373行左右

    后面的路径修改为“G:/var/www/cgi-bin/”,跟上一步一样
    这里的意思是将" G:/var/www/cgi-bin/"映射为/cgi-bin/,当通过浏览器访问/cgi-bin/目录时,实际上就是访问" G:/var/www/cgi-bin/"目录

    Step:10.AddHandler中添加.py后缀,,在428行左右
    这样我们就可以访问.py结尾的Python脚本文件
    先去掉前面的#注释,再在后面加上.py就行了,注意用空格隔开

    Step:11.开启虚拟主机配置,在509行左右

    直接去掉前面的#注释即可
    Include conf/extra/httpd-vhosts.conf

    这样修改httpd.conf就可以了,保存即可。

    然后把Apache安装成Windows后台服务
    使用命令:httpd -k install -n "Apache2.4"
    前面的配置没问题的话,一般是安装成功的
    注意要先指定到Apache的bin目录下再执行命令

      

    启动Apache
    启动:httpd.exe -w -n "Apache2.4" -k start 
    停止:httpd.exe -w -n "Apache2.4" -k stop 
    重启:httpd.exe -w -n "Apache2.4" -k restart

    注意,如果启动失败,出现这样的错误, make_sock: could not bind to address [::]:443

    请参考这篇文章的处理方式:https://www.cnblogs.com/music-liang/p/11845975.html

     启动成功后,浏览器输入 http://localhost:88/ 

    现实这样即为成功。

    如果提示启动失败
    进行winsock的修复
    在运行里输入:netsh winsock reset
    然后重启电脑即可

    在G:/var/www/cgi-bin目录下面放一个文件

     chap15.5.cgi文件内容如下。这是我学习Python基础教程第15章的一个示例。

    注意,第1行必须要加上Python解释器。否则会出错。

    #!C:UsersheliangAppDataLocalProgramsPythonPython38-32python.exe
    print("Content-type:text/plain")
    print()
    print("-------使用CGI创建动态网页--------")
    
    """
    python -m http.server --cgi
    如果是在Linux下面,则第1行 应该像下面这么写
    #!/usr/bin/env python
    """
    
    # http://localhost:88/cgi-bin/chap15.5.cgi
    
    
    print("Hello, world!")
    print()
    print("CGI")

    在浏览器中输入:

    http://localhost:88/cgi-bin/chap15.5.cgi

     大功告成。

    PS:
    如果想删除服务
    执行:sc delete apache2.4

    参考地址:

    https://blog.csdn.net/zhuanshu666/article/details/74936940

  • 相关阅读:
    windows版redis
    苹果Mac电脑文件夹路径怎么看?“访达”也能显示文件路径
    Windows下Nginx初始化
    Win10微信查看图片卡顿或发送图片卡顿的原因和解决方法
    【Windows安装RabbitMQ详细教程】
    pb中打印设置
    字典pop,filter
    case when 用法
    自定义函数封装变量
    MySQL WorkBench 导入数据
  • 原文地址:https://www.cnblogs.com/music-liang/p/11846268.html
Copyright © 2020-2023  润新知