主要有两个配置文件
(1)nginx配置文件/etc/nginx/nginx.conf
(2)tomcat配置文件apache-tomcat-9.0.30/conf/server.xml
nginx配置文件
user root;
worker_processes auto;
pid /run/nginx.pid;
# include /etc/nginx/modules-enabled/*.conf;
# 为了防止配置后依然反问道默认界面可以注释掉include
# 也可以将第一行改成 user root
http {
#tomcat 项目的运行地址,允许加端口
upstream tomcat {
#Ip地址,或者域名解析后的域名
#ip:8080指向的是tomcat
#假设我申请域名并解析到ip地址www.paranoid.com
server www.paranoid.com:8080;
}
server {
#监听80端口
listen 80;
#当监听到域名为www.paranoid.com
server_name www.paranoid.com;
#转向到 http://tomcat 即(http://www.paranoid.com:8080)
location / {
proxy_pass http://tomcat;
proxy_redirect default;
#设置代理
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
} #将所有访问请求转发给tomcat进行处理
}
# 直接转向服务器上其他端口
server {
listen 80;
#当监听到域名为www.paranoid.com
server_name www.watchman-pypi.com;
# 下面项目可能是一个springboot项目,直接打成jar包运行
#只要在服务上配置安全组,在spring项目中的配置文件中监听8082端口,将域名解析到服务器IP在服务器上
#直接运行jar包,就可以访问到。这里作用是为了隐藏端口,通过nginx做了一个转向的作用
location / {
proxy_pass http://www.watchman-pypi.com:8082/;
}
}
}
tomcat配置文件
#tomcat是8080端口当以8080端口结尾并且域名解析到ip地址时会通过下面配置,针对不同的域名进行区分
#这也就是为什么之前我通过 域名:8080 转移到tomcat处理
# appBase 你的项目的工作文件,这里是默认的tomcat
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- 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
Note: The pattern used is equivalent to using pattern="common" -->
<Context docBase="/root/web-home/web" path="/home" reloadable="false" />
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
#定制自己的
# appBase 你的项目的工作文件,这里是我的工作文件
#通过name选择那个工作文件夹
<Host name="www.paranoid.com" appBase="/root/web-home/web" unpackWARs="true"
autoDeploy="true">
<Context path="" docBase="/root/web-home/web" debug="0" reloadable="true" crossContext="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>
注意在修改nginx配置文件后需要输入命令:
nginx -s reload
重新加载,否则有的时候不起作用
之后重启tomcat和nginx即可
tomcat重启:
sudo netstat -apn | grep 80
查看tomcat进行
kill 3642
进入到tomcat的bin文件夹下执行
./startup.sh
tomact 输出日志(还是在bin目录下)
./catalina.sh run
重启nginx:
启动Nginx服务
sudo /etc/init.d/nginx start
停止Nginx服务
sudo /etc/init.d/nginx stop