标签:包名 根目录 重定向 oca 跨域 绝对路径 环境 spring web
相关博客:https://blog.csdn.net/weixin_39723544/article/details/82012827
jar包
运行:
执行命令: java -jar xx.jar
优点
运行方便,适合运行在服务器的脚本项目
war包
运行:
放置在Tomcat的webapps目录中,然后呢启动Tomcat
优点
方便修改配置,适合web项目
jar包
修改打包方式
配置文件:pom.xml
<!-- 将打包方式修改为jar -->
<packaging>jar</packaging>
添加spring boot maven插件,指定mainClass
配置文件:pom.xml
<build>
<plugins〉
<plugin〉
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifact>
<configuration>
<mainClass>com.cherry.framework.FrameworkApplication</mainClass>
</configuration〉
<executions〉
<execution〉
<goals〉
<goal>repackage</goal>
</goals>
</execution〉
</executions>
</plugin>
</plugins>
</build>
通过maven打包
进入项目根目录(即pom.xml所在文件目录),执行命令
mvn clean package
运行项目
进入jar包目录,执行命令
java -jar ***.jar
war包
修改配置文件
<!-- 将打包方式修改为war -->
<packaging>war</packaging>
<!-- 移除tomcat依赖或者将tomcat依赖scope改为provide -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 或者 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<!-- 将tomcat依赖scope改为provide -->
<scope>provided</scope>
</dependency
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<!-- 防止使用Tomcat部署后,因为application.properties(或者application.yml)中配置的server.port和server.servlet.context-path失效,导致项目访问资源加载不到的问题 -->
<build>
<!-- 应与application.properties(或application.yml)中context-path保持一致 -->
<finalName>war包名称</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
修改启动类
启动类继承SpringBootServletInitializer,并实现configure
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
}
通过maven打包项目
进入项目根目录(即pom.xml所在文件目录),执行命令
mvn clean package
Tomcat部署
将war包放置到Tomcat的webapps目录下,启动Tomcat
修改Tomcat的配置文件
/conf/server.conf
修改Connector节点的port属性值
将端口8080改成80
<!-- 修改前 -->
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<!-- 修改后 -->
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
修改Engine节点的name属性值
将localhost修改成域名
<!-- 修改前 -->
<Engine name="Catalina" defaultHost="localhost">
<!-- 修改后 -->
<Engine name="Catalina" defaultHost="test.hutianyao.com">
修改Host节点的name属性值
将localhost修改成域名
<!-- 修改前 -->
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<!-- 修改后 -->
<Host name="test.hutianyao.com" appBase="webapps" unpackWARs="true" autoDeploy="true">
在<Host name="xxx.com" ...节点里面最后位置加上节点信息,docBase为项目的绝对路径
<Context path="" docBase ="D:\deploy\cm" reloadable="false"></Context>
保存配置文件,重启Tomcat
配置系统的host文件,添加域名配置
当前服务器IP 域名
## 示例
192.168.85.128 www.testnginx.com
直接使用配置的域名进行访问即可
在项目的根目录下执行命令
npm run build
得到打包后的项目
执行打包命令之后,项目根目录新生成的dist文件夹即是打包好的项目,可以直接运行
使用nginx部署
安装nginx
配置nginx环境变量
在/etc/profile 中加入:
export NGINX_HOME=nginx安装路径
export PATH=$PATH:$NGINX_HOME/sbin
## 示例
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin
保存,执行命令:
source /etc/profile
使配置文件生效。
修改nginx的配置文件
conf/nginx.conf
upstream testnginx{
server localhost:8080;
#server localhost:8081;
}
server {
listen 80; #1.你想让你的这个项目跑在哪个端口
server_name 47.94.76.91; #2.当前服务器ip,可以直接配置域名
location / {
root /home/dist/; #3.dist文件的位置(需要绝对路径)
try_files $uri $uri/ /index.html; #4.重定向,内部文件的指向(照写)
}
location /apis { #4.当请求跨域时配置端口转发
proxy_pass http://47.92.76.97:8848/apis; #5.转发地址
}
}
重启nginx
## 检查配置
nginx -t
## 重启nginx
nginx -s reload
如果配置域名的话,需要配置系统host文件,添加域名解析
当前服务器IP 域名
## 示例
192.168.85.128 www.testnginx.com
访问项目
标签:包名 根目录 重定向 oca 跨域 绝对路径 环境 spring web
原文地址:https://www.cnblogs.com/hutianyao/p/13254921.html