我使用的是Ubuntu虚拟机。我安装了依赖于AOLServer的OpenACS。为此,我首先closures了这台机器上的Apache,然后根据这里给出的指示
http://openacs.org/xowiki/ubuntu
步骤1)aptitude安装postgresql
步骤2)aptitude安装openacs
我不得不closuresApache来做上面的安装。 现在安装完成。所以我可以访问http:// localhost:8000
但是当我尝试在安装过程中closures的这台机器上启动Apache时,我看到错误
service apache2 start * Starting web server apache2 (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down Unable to open logs
所以我认为可能是OpenACS安装AOLServer,所以Aolserver可能正在侦听端口80我检查
/etc/aolserver4/conf.d/openacs.sh
和这里
AOL_USER=www-data AOL_GROUP=www-data AOL_ADDRESS=192.168.1.15 AOL_PORT=8000 RUN_DAEMON=yes
所以AOLServer不会听到端口80到这里确认。
netstat -tualp | grep 80 tcp 0 0 somemachine.somedimain.:8000 *:* LISTEN 21321/aolserver4-ns
所以netstat显示只有8000使用中。 那么为什么我在这种情况下无法启动Apache?
编辑为ooshro下面指出检查netstat -tualp | grep \:www netstat -tualp | grep \:www输出
我得到了
tcp 0 0 localhost:www *:* LISTEN 2883/aolserver4-nsd
去检查:
netstat -tualpn | grep 80
要么
netstat -tualp | grep \:www
没有'n'选项,80parsing为www。
编辑“/etc/aolserver4/aolserver4.tcl”:
array set debian_config { HOSTNAME localhost ADDRESS 127.0.0.1 HTTP_PORT 8080 HTTPS_PORT 443 }
然后重新启动aolserver4和apache2
/etc/init.d/aolserver4 restart /etc/init.d/apache2 restart
好吧最后,我解决了这个问题。默认的openacs安装在端口8000上侦听,以避免与在端口80上侦听的默认aolserver冲突。
我不得不把RUN_DAEMON = no放在/ etc / default / aolserver4文件中,虽然这个文件的所有行都被注释掉了,但是我仍然需要添加
RUN_DAEMON=no
那是对我有用的。