每个套接字只允许使用一次,但我的电脑就是出现不能绑定端口80的问题,怎么回事?
提示错误为:
make_sock:could not bind to address 0.0.0.0:80
no listening sockets available,shutting down
Unable to open logs
一波三折的安装过程,
由于我的系统是Win7 (64位)系统,安装过程中遇到了各种问题,先记录一下。
安装Apache
1、64位的Apache不同于32位打包成exe文件可直接安装,先把httpd-2.2.19-win64解压到E:/server/ apache- httpd-2.2.19-win64/(/*E为具体服务器文件所在盘盘符*/)
2、以管理员身份运行 命令提示符(开始-程序-附件),进入E:/server/apache-httpd-2.2.19-win64/bin/
执行 httpd -k install 命令
错误开始来了:
(1)httpd.exe 计算机丢失MSVCR100.dll (http://lizhiy05.iteye.com/blog/1774751)参考这个解决方案。
(2)这个问题解决之后,又出现了
httpd: Could not reliably determine the server's fully qualified domain name
解决这个问题很简单:找到#ServerName www.example.com:80 把#去掉,再重启apache即可没事了。
(3)修改httpd.conf,这里跟32位系统里配置一样
1)、ServerRoot "/httpd-2.2-x64"
改成:ServerRoot "
d:\httpd2215x64
"
2)、DocumentRoot "/httpd-2.2-x64/htdocs"
改成:DocumentRoot
"
d:\httpd2215x64\htdocs
"
3)、<Directory "/httpd-2.2-x64/htdocs">
改成:<Directory "d:\httpd2215x64\htdocs">
3、httpd的启动和停止命令
启动:httpd -k start
停止:httpd -k stop
但是在启动的过程中,又出现问题了,端口被占用。
apahce 启动错误make_sock:could not bind to address [::]:80
然后开始检查哪个进程占用了80端口。解决方案参考:
80端口被NT kernel & System 占用pid 4(http://lizhiy05.iteye.com/blog/1774778)
经过两天的解决,Apach终于在我的Win7
64位
系统上工作起来。 感谢所有在网上提供资料的同志们。