在windows下安装apache以及运行python脚本
在这个课程的作业中的一个部分是用python实现web服务。于是需要安装apache服务器,本文记录了学习apache服务器的原理,以及安装配置apache服务器过程中遇到的种种问题和解决措施,以便以后再次使用时可以作为参考。
1、apache服务器
apache服务器可以使自己的电脑成为一台web服务器。可以通过http协议向web服务器发送请求,apache服务器接受到请求并做出回应。
学习web开发必备apache服务器。
作业要求运行python脚本,并生成网页,所以需要安装apache。
2、下载安装apache
点击download
选择windows版本
选择第一个
选择64位系统
下载后解压安装即可。
3、配置apache
1、首先将apache实际安装目录添加到环境变量。
2、打开conf/httpd.conf文件,修改apache安装的路径。
Define SRVROOT "D:Program Files (x86)ApacheApache24"
3、将apache注册为windows服务
httpd -k install -n "服务名" //将Apache注册为windows服务,自己指定一个服务名字。
httpd -k install -n apache
这个命令可以让下载的apache注册为windows服务,可以通过 net start apache
来启动apache,net stop apache
关闭apache。
4、启动apache
在命令行输入httpd.exe
测试能否启动成功。
这个错误是安装过程中常见的问题,问题是80端口被占用。解决方法如下:
1、在命令行输入netstat -ano|findstr 80
,查看是哪个进程在占用80端口,记下这个pid
2、打开任务管理器,找到pid是这个的进程,关闭即可。
3、此时可以运行apache了,在地址栏输入localhost
或者127.0.0.1
,如果显示apache的页面,说明安装成功。
4、运行python脚本
1、首先打开cgi服务
公共网关接口(Common Gateway Interface,CGI)是Web 服务器运行时外部程序的规范,按CGI 编写的程序可以扩展服务器功能。即让web服务器可以运行python脚本。
代开conf文件夹下的httpd.conf
文件,在以下模块中,.cgi后面添加.py。
<IfModule mime_module>
AddHandler cgi-script .cgi .py
</IfModule>
2、编写一个py脚本
#!/usr/bin/python3
#-*- coding:UTF-8 -*-
print ("Content-type:text/html")
print ()
print ('<html>')
print ('<head>')
print ('<meta charset="gb2312">')
print ('<title>Hello Word</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello Word!</h2>')
print ('</body>')
print ('</html>')
3、保存到cgi-bin文件夹下
4、访问localhost/cgi-bin/hello.py
此时出现了500错误,百度了一些文章,解决方法如下:
5、由于python脚本是我复制的,所以第一行的路径是不对,将python脚本的第一行改为本地python的实际安装路径即可。
#!C:UserslenovoAppDataLocalProgramsPythonPython39python.exe
#-*- coding:UTF-8 -*-
print ("Content-type:text/html")
print ()
print ('<html>')
print ('<head>')
print ('<meta charset="gb2312">')
print ('<title>Hello Word</title>')
print ('</head>')
print ('<body>')
print ('<h2>Hello Word!</h2>')
print ('</body>')
print ('</html>')
6、此时访问localhost/cgi-bin/hello.py
即可。