Tomcat部署java web项目,war包方式

作者: 第四单元 | 来源:发表于2017-08-26 11:11 被阅读956次

    今天做的网站要上线了。部署的过程中遇到许多问题,在这里记录一下。

    步骤

    1. 项目采用war包的形式发布。war包的生成:使用idea中的maven project中的install命令(一般可以先clean一下)
    2. 安装tomcat 8和java 1.8,(java版本根据项目需求)。配置环境变量CATALINA_HOME为tomcat的安装目录。java 8会自动配置环境变量,不需再配置。
    3. 因为是个小网站,力求配置过程简单,没有配置tomcat数据源啥的(主要是不会,囧),在项目中配置好数据库的连接,密码就是服务器数据库的密码。
    4. 将war包放到tomcat webapps目录下就好了,tomcat会自动解压。
    5. 打开tomcat conf server.xml文件,0将<Connector port="8080" protocol="HTTP/1.1 ...>"将这里的8080改成80,这样的话就可以直接输入域名来访问网站了(不用加端口号了)。另外如果项目中有存在汉字的url需要加一个属性 URIEncoding="utf-8"。完整的是这样的:
    <Connector port="80" protocol="HTTP/1.1"
                   connectionTimeout="20000"
                    URIEncoding="utf-8"
                   redirectPort="8443" />
    
    1. 继续在server.xml中配置
      找到Host标签,大概长这样:
    <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log." suffix=".txt"
                   pattern="%h %l %u %t "%r" %s %b" />
          </Host>
    

    这个不用动,参考一下就行。在下边新加一个Host 大概是这样:

    <Host name="blog.example.com"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
    <Context path="" docBase="blog" debug="0" privileged="true"/> 
                <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log." suffix=".txt"
                   pattern="%h %l %u %t "%r" %s %b" />
          </Host>
    

    其中docBase是你的war文件名,如这里是blog
    blog.example.com是你的域名,context里的path设置为空,就是访问时,域名或不用在加任何东西(如有需要可以设置)

    1. 配置域名解析到服务器ip

    其他:

    1. 配置war包名称。默认的war包名是构件id加上版本号。如果要改成其他名字可以在pom.xml的<build>标签下加上<finalName>name</finalName> 其中填写的name就是最终生成的war包名,如此例子下为name.war
    2. 在windows服务器上将tomcat注册成系统服务。用命令行窗口进入到tomcat bin目录下,这个目录下有个service.bat文件,这个文件就是为了将tomcat注册成系统服务准备的。执行
      service.bat install Tomcat8 后面的Tomcat8是服务的名称,可以自己取。如果取消服务,可以
      service.bat remove Tomcat8。注册成系统服务后就可以用net start Tomcat8和net stop Tomcat8来启动或关闭Tomcat。

    相关文章

      网友评论

      • 我在公司做牛码:是不是可以适当加一点服务器的优化配置的知识
        第四单元:@ScorpioZhq 恩,是。多谢建议。我这种是比较基本的配置,可以使用但不够好。

      本文标题:Tomcat部署java web项目,war包方式

      本文链接:https://www.haomeiwen.com/subject/swsmdxtx.html