zoukankan      html  css  js  c++  java
  • python web环境相关

    一. apache配置与支持cgi

      1. 配置文件

      Apache是一个后台运行的程序,没有界面。所有的配置,都包含在配置文件里。主配置文件是:
      ~Apacheconfhttpd.conf
      如果要修改Apache的配置,可以用任何一个文本编辑工具(例如记事本)编辑这个配置文件。在配置文件里,以“#”开头的行是注释行。

      2. 配置选项

      在配置文件里的主要选项如下:
      #Listen 3000
      #Listen 12.34.56.78:80
      Apache的IP地址和端口。一般来说不需要设置,Apache会绑定在本机所有IP地址的80端口上。
      Port 80
      Apache的端口。默认值是80。
      ServerName test.dnschek.net
      Web服务器的名字。安装时输入的“Server Name”就是保存在这里。
      DocumentRoot "C:/Program Files/Apache Group/Apache/htdocs"
      这是网站的根目录。如果您想把网站文件存放在“D:myweb”目录下,可以把DocumentRoot后面的目录修改为“D:/myweb”。

      目录访问控制,由于是测试,都打开就好

      <Directory "D:/Apache2.2/cgi-bin">
         AllowOverride Options
         Order allow,deny
         Allow from ALL
         Options +ExecCGI
       #  AddHandler cgi-script .cgi .pl .exe
      </Directory>

      Options Indexes FollowSymLinks MultiViews
      为了安全起见,请把上面的“Indexes”删掉。否则别人可以浏览到您网站里的所有文件。
      DirectoryIndex index.html
      默认首页文件名。在浏览器里输入一个地址(例如http://test.dnschek.net/)的时候,Apache会查找这个默认的首页文件打开。如果要配置多个默认首页文件名,请用空格分开。

      LoadModule cgi_module modules/mod_cgi.so                //一定要加载

      然后设置cgi运行目录,当然可以直接指定一个目录使其php,cgi都能用,但现在才开始,纯粹点。

      ScriptAlias /cgi-bin/ "D:/Apache2.2/cgi-bin/"                             这个一般文件里有了,自己改下地址

      这句话是说在根目录下的cgi-bin这个目录就是访问的D:/Apache2.2/cgi-bin/里面的文件。

      下面设置cgi目录的权限,能运行的cgi程序的后缀名可以不在这儿设置,在这儿设置就只在这个文件夹下用这几个后缀名了。重要的是要使这个目录能运行cgi程序,加入Options +ExecCGI

      <Directory "D:/Apache2.2/cgi-bin">
         AllowOverride Options
         Order allow,deny
         Allow from ALL
         Options +ExecCGI
       #  AddHandler cgi-script .cgi .pl .exe
      </Directory>

      在<IfModule mime_module>里面加入下面的,所有能运行的文件后缀都放这里,找着方便。

      AddHandler cgi-script .exe .pl .cgi

    常见错误:

     CGI不执行,APACHE错误日志:Premature end of script headers,或 malformed header from script. Bad headerXXX,这种情况,还是检查一下CGI输出的第一句话是啥。应该是形如:
           Content-type:text/html
           注意:声明好Content-type后要输出两个空行。

  • 相关阅读:
    Codeforces Round #567 (Div. 2) B. Split a Number
    es界面的分组,求平均值的操作
    es界面的查询命令
    es界面的crud
    WebStorm中自定义文档注释模板
    Vue 正确理解mounted、beforeUpdate、updated三个钩子函数的关系
    oracle分析函数
    vue中时间格式的处理
    vue-router params和query的区别
    vue中的深拷贝理解和实现
  • 原文地址:https://www.cnblogs.com/jackhub/p/3984489.html
Copyright © 2011-2022 走看看