前言

假设Java项目已经打好war包丢到Tomcat的webapps文件下

配置Tomcat(server.xml)

修改标签下的Host标签,注意:Host标签及Context标签可以重复写多个

name:配置域名,通过域名直接访问tomcat下的java项目 JavaDemo,例子中:访问 www.baidu.com 即可访问到JavaDemo项目
path:项目层级路径,此处为空,如果填入值,则需要访问时也填入该值,例如:path=”test” 则访问 www.baidu.com/test 才能找到该项目
docBase:JavaDemo项目的相对/绝对路径,我这里是绝对路径

1
2
3
4
<Host name="www.baidu.com"  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 &quot;%r&quot; %s %b" />
<Context path="" docBase="/usr/tomcat/apache-tomcat-8.5.31/webapps/JavaDemo" reloadable="true"></Context>
</Host>

配置Nginx(nginx.conf)

如果想ngixn的配置文件单独配置,点击了解

配置完成tomcat后,仍需要配置nginx,因为项目的静态资源需要访问
root:直接访问项目源路径,方便找静态资源(css、js等)

注意:ngixn的配置文件 严格要求缩进及空格

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
server {
server_name baidu.com www.baidu.com;
add_header X-Frame-Options SAMEORIGIN;
root /usr/tomcat/apache-tomcat-8.5.31/webapps;
index index.html index.jsp;
location ~ (\.jsp)|(\.do)$ {
proxy_pass http://baidu.com:8080;
proxy_set_header HOST $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~* ^.+\.(css|js|ico|gif|jpg|jpeg|png)$ {
access_log off;
expires 7d;
}
}