以前用Python运行的Web框架都是要运行在Linux下,加上WSGI服务器,比如Gunicorn+Flask,后来了解到了Apache,看看能不能基于Apache这个Web服务器下给python提供Web环境。于是上网找了很多资料,现在总结如下。

这篇是在Window10下Apache2.4的安装和运行。

开发环境

  • Windows 10 x64
  • Apache2.4 x64

版本介绍及安装过程

首先我们要先下载Apache2.4服务器: 
http://httpd.apache.org/download.cgi

关于现在版本的服务器说明一下,Apache有本身的服务器是不能使用的,必须要先编译才可以使用的。但是在他的官网上也提供了第三方编译好的Apache所以这里我们就,下载第三方的而不用自己手动在编译了。这里它提供了五个第三方的服务器。

  1. 如果要安装继承开发环境,可以选择后两个WampServer和XAMPP,安装使用都很方便。
  2. 下载单独的安装包可以选择前两个网站ApacheHaus和Apache Lounge

下载工程如下图所示:

说明:今天我们就以ApacheHaus为例,其他版本可能配置不同,可以自行搜索解决。根据提供的网址下载好服务器

Apache服务器配置

  1. 下载好之后我们将压缩包进行解压,然后将解压后的文件放置在指定的目录下。这理我放在D:\Apache。
  2. 进入Apache24\conf目录下打开httpd.conf文件,对其进行修改默认的配置

修改一

第38行默认是

Define SRVROOT "/Apache24"
ServerRoot "${SRVROOT}"
  • 1
  • 2
  • 1
  • 2

修改为你安装Apache的所在目录

#Define SRVROOT "/Apache24"
Define SRVROOT "D:\Apache\httpd-2.4.25-x64-vc11-r1\Apache24"
ServerRoot "${SRVROOT}"
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

如果不修改会提示错误:

httpd.exe: Syntax error on line 39 of D:/Android_Develop_Tools/httpd-2.4.23-x64-
vc14/Apache24/conf/httpd.conf: ServerRoot must be a valid directory
  • 1
  • 2
  • 1
  • 2

修改二

第60行默认是:

#Listen 12.34.56.78:80
Listen 80
  • 1
  • 2
  • 1
  • 2

改为8081

#Listen 12.34.56.78:80
Listen 8081
  • 1
  • 2
  • 1
  • 2

修改三

第224行默认是:

ServerName localhost:80   
  • 1
  • 1

改为:

ServerName localhost:8081  
  • 1
  • 1

如果不修改会提示错误:

(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。  : AH00072: make_sock: could not bind to address [::]:80
(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address 0.0.0.0:80
AH00451: no listening sockets available, shutting down
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

以管理员身份运行cmd或者PowerShell,进入到Apache24\bin目录下,并输入./httpd.exe -k install,安装apache服务,看到以下信息说明安装成功:

Installing the 'Apache2.4' service
The 'Apache2.4' service is successfully installed.
  • 1
  • 2
  • 1
  • 2

需要卸载则输入./httpd.exe -k uninstall即可。

解决443端口被占用

如果提示443端口被占用了

(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。  : AH00072: make_sock: could not bind to address [::]:443
(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address 0.0.0.0:443 AH00451: no listening sockets available, shutting down
  • 1
  • 2
  • 1
  • 2

解决办法为

打开httpd.conf, 找到加载ssl_module的那一行, 加#号注释掉就好了:# LoadModule ssl_module modules/mod_ssl.so 
现在输入httpd.exe -k start命令就可以了。

小技巧

如果不想每次启动停止Apache都输入命令,可以到Apache24\bin目录下使用ApacheMonitor.exe软件。

Window10下Apache2.4的安装和运行的更多相关文章

  1. Windows下Apache2.2+PHP5安装步骤

    Windows下Apache2.2+PHP5安装 初学者在学习PHP的时候可能都会遇到安装Apache和PHP不成功的问题,于是很多开发者便选择了集成包,一键安装好Apache+PHP+MySQL.但 ...

  2. Lua在Windows下的配置、安装、运行

    Windows下安装.运行Lua! 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1↓ 进入Lua官网:h ...

  3. Sublime Text 3(中文)在Windows下的配置、安装、运行

    Sublime Text 3(中文)下载.安装.运行! 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 具体 ...

  4. window10下用ZIP压缩包安装 mysql 8.0.11

    1.下载地址 https://dev.mysql.com/downloads/mysql/ 2.解压后的文件目录如图,复制到指定的文件目录,如我的 E:\root\mysql-8.0.11-winx6 ...

  5. window10下通过docker安装swoole,运行laravel-swoole服务

    最近公司压测一个接口,用laravel框架,业务逻辑就是从缓存中取数据,tps总是上不去,于是决定换下swoole来替换php-fpm,来处理php请求,tps比原来高了好几倍. 现在有个问题就是wi ...

  6. Linux下Apache2.2和PHP5的安装配置

    Linux下Apache2.2和PHP5的安装配置 环境介绍 我安装使用的Linux版本为CentOS6.5最精简版,Apache为2.2.29,PHP版本为5.4.28. 系统安装 首先安装Cent ...

  7. win7 64下暗黑世界V1.1 服务器端及客户端的安装及运行 成功

    原地址:http://bbs.gameres.com/thread_223717.html 屌丝一枚,没有MAC 更没有XCODE 潜心整了星期六与星期天两天才安装运行成功...只能说安装太复杂了,, ...

  8. flume 1.7在windows下的安装与运行

    flume 1.7在windows下的安装与运行 一.安装 安装java,配置环境变量. 安装flume,flume的官网http://flume.apache.org/,下载地址,下载后直接解压即可 ...

  9. [翻译]第一天 - 在 Windows 下安装和运行 .NET Core

    原文: http://michaelcrump.net/getting-started-with-aspnetcore/ 免责声明:我不是 .NET Core 开发团队的一员,并且使用的是公开.可用的 ...

随机推荐

  1. HBase0.94.2-cdh4.2.0需求评估测试报告1.0之二

    Hbase 配置文件: hbase-site.xml <configuration> <property> <name>hbase.cluster.distribu ...

  2. strcpy和strncpy用法和区别

    1. strcpy函数:顾名思义字符串复制函数:原型:extern char *strcpy(char *dest,char *src); 功能:把从src地址开始且含有NULL结束符的字符串赋值到以 ...

  3. ubuntu 设置Path 开机启动脚本

    vim /etc/rc.local export PATH=$PATH:/work/apps/node-v0.12.7-linux-x64/bin:/work/apps/ledisdb/binexpo ...

  4. Markdown 使用锚点

    首先是建立一个跳转的连接: [说明文字](#jump) 然后标记要跳转到什么位置即可: <span id = "jump">跳转到这里:</span>

  5. matlab图形handle

  6. LayoutInflater的用法

    Instantiates a layout XML file into its corresponding View objects. It is never used directly. Inste ...

  7. monkey测试工具与常用的linux命令

    Monkey测试工具 说明:monkey是一个安卓自带的命令行工具,可以模拟用户向应用发起一定的伪随机事件.主要用于对app进行稳定性测试与压力测试. 实现:首先需要安装一个ADB工具,安装完之后,需 ...

  8. [整理]tar压缩下来为什么格式是.tar.gz

    前段时间打包,直接用tar命令压缩,压缩好的文件取名rar.同事用winrar打开发现一直报错. 经过查询发现,tar -cvzf压缩下来的格式其实应该是.tar.gz 但是格式怎么会这么奇怪呢?是压 ...

  9. OpenCV For Java环境搭建与功能演示

    http://blog.csdn.net/jia20003/article/details/68944486

  10. hihoCoder #1343 Stable Members

    题目大意$\newcommand{\SD}{\mathrm{SD}}$ 给定一个 $n+1$ 个点的有向无环图,点从 $0$ 开始编号.无重边.自环,且从每个点 $u$ 都能到达 $0$ 号点.如果每 ...