关于端口:
用find / -name httpd.conf找到apache的配置文件httpd.conf
/Listen 80是apache服务器监听的端口,对/var/www下的静态资源html等默认访问
而tomcat安装目录下的conf/server.xml的connector port=8080(后一个connector其实是被注释了的)监听的是webapps/和虚拟目录中项目的访问端口。
webapps/下的项目相当于tomcat的/var/www,
在ROOT(默认有这个目录)下部署项目,WEB-INF、 META-INF、 index.jsp
在webapps下直接放置也可以(还没试过)
两者相同时会引起冲突。 应该根据需要进行配置。一般是tomcat配成80,apache配成其他。
两个服务器是可以同时运行的,只是监听的端口不能相同,apache默认80,tomcat默认8080。
配置完成后都需要重启服务完成配置文件的加载。
apache 用apachectl -k restart重启
tomcat 进入bin用./shutdown.sh和./start.sh重启
关于虚拟目录:
tomcat部署多个项目时使用。
在Linux上/home/yujian/File/myprojects/下创建yujian作为项目目录,
yujian/下有META-INF、 WEB-INF/web.xml、 index.jsp(从eclipse项目中拷出)
conf/server.xml在host节点的上一行(搜索prefix)增加一行代码
<Context path = "/yujian" docBase="home/yujian/File/myprojects/yujian"/>
/listings搜索并修改conf/web.xml的listings的值为true
配置首页
在虚拟目录中新建index或default前缀,并且html和jsp为后缀的文件,这里已经是index.jsp,作为网站的欢迎页
欢迎页可以在tomcat的conf/web.xml搜索welcome-file-list进行配置。
一些常见错误:
1、net.bind.Exception是端口占用,可在tomcat的logs的catalina.out日志里查看:
解决:用killall java杀死所有相关进程
2、tomcat启动正常但浏览器无法访问:tomcat启动时间差问题,访问在启动之前,要稍微等一下
而且经过亲自实验,与httpd和apachectl服务无关
3、su root 用service iptables stop把可把防火墙关闭
4、service httpd status/start/stop和apachectl -k start/stop/restart是对apache服务器的