在CentOS 5上部署WWW应用心得
来源:互联网 发布:lamy2000淘宝组装 编辑:程序博客网 时间:2024/05/23 15:14
具体参考的文章,我已经粘贴至博客来了
一开始是用CentOS 5 默认的Tomcat5来实现jsp,但是在对mysql5的数据库调用上一直实现不了,
经过多次测试,还是有问题,所以,一狠心,卸载了Tomcat5,进行重新使用最新的jdk,以及部署了
Tomcat6,测试成功。
后来对Apache与Tomcat整合过程中,发现了重要的问题,在虚拟主机配置中,就是对Apache中
的httpd.conf与Tomcat的server.xml对应中,发现了如下问题:
对于httpd.conf
示意:
#Use name-based virtual hosting.
#
#NameVirtualHost *:80
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ServerName localhost
ErrorLog logs/localhost-error_log
CustomLog logs/localhost-access_log common
</VirtualHost>
#说明:上面这个是让Apache默认一个非任意访问的网站指向,就是非以下定义的,这个要放第一个
<VirtualHost *:80>
ServerAdmin webmaster@njupt.org.cn
DocumentRoot /var/www/projects/njupt.org.cn
ServerName www.njupt.org.cn
ServerAlias njupt.org.cn
ErrorLog /var/www/projects/logs/njupt.org.cn-error_log
CustomLog /var/www/projects/logs/njupt.org.cn-access_log common
</VirtualHost>
对于server.xml
要对应建立:
<Host name="www.njupt.org.cn" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
<Context path="" docBase="/var/www/projects/njupt.org.cn" debug="0" reloadable="true"
crossContext="true"/>
</Host>
这样的配置,就只要把网站放置在/var/www/projects/njupt.org.cn目录下,如果用下面的方法:
<Host name="www.njupt.org.cn" appBase="/var/www/projects/njupt.org.cn"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
-->
<!--
<Context path="" docBase="/var/www/projects/njupt.org.cn" debug="0" reloadable="true"
crossContext="true"/>
-->
</Host>
这样就需要把网站主目录放在/var/www/projects/njupt.org.cn/ROOT/ 下了
但这样有一个好处就是,在
httpd 的配置mod_jk.conf中
###### 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
JkMount /servlet/* worker1
JkMount /*.jsp worker1
JkMount /*.jspx worker1
JkMount /*.do worker1
这个对分目录自身属于的/*/WEB-INF 都有效,同时,在mod_jk.conf中配置的/*.do表明,在站点所有目录下的*.do都会
被Tomcat执行,而JkMount /servlet/* worker1 表明需要为/servlet/目录下的所有Servlet才可被Tomcat执行。
最后,在设置Tomcat6开机自动运行的时候,
发现按照配置,不能开机自动运行,检查配置的错误logs文件,发现了:
出现如下错误:JAVA——HOME/jre/bin/../lib/i386/client/libjvm.so: cannot restore segment prot after reloc: Permission denied
是因为selinux阻止了你的操作,关闭selinux即可或者改为允许模式。
- 在CentOS 5上部署WWW应用心得
- 在新浪SAE上部署应用实战心得
- 如何在 Linode 的 CentOS 6 上部署 WordPress 应用?
- 在CentOS上部署BugFree
- 在linux系统CentOS 6.6 64位上安装部署jetty和运行web应用
- 在centos上部署python+hbase
- hadoop在CentOS上的安装部署
- 轻轻松松在centos上部署docker服务
- 在CentOS上部署JAVA服务
- 在CentOS 6上部署Shadowsocks Server
- 监控工具netdata在CentOS上部署
- 在centos上部署java WEB环境
- 在CentOS 7.2上部署Kubernetes集群
- 在CentOS上部署OpenStack(一)
- 在CentOS上搭建部署Jenkins
- 在Windows 2000 Advance server 上部署ClickOnce的心得
- 如何在CentOS 7上使用Nginx将www重定向到非www
- 在JBOSS,TOCMAT上部署J2EE应用
- 源缓存包 EHCache 全接触[转载]
- Asp.net中DataBinder.Eval用法的总结
- error: No curses/termcap library found的解决办法
- 此版本魔兽争霸III需要特定语言版本之Windows 的解决方法
- FLEX:target和currentTarget属性的区别
- 在CentOS 5上部署WWW应用心得
- AVR C语言宏定义技巧(常用宏定义)(转)
- WindowsMobile上C#通过DirectShow控制摄像头
- c#.net 文本编辑控件——C# RichTextBox对象中插入文字而不改变文本格式
- VC++有源码调试中崩溃问题定位的一个好方法
- 用友U9产品SOA设计架构遭技术质疑
- 《怎样成为优秀的软件架构师》解析 (好文转载)
- 浅析SIP协议
- JSP中文乱码