有时候,我们服务器上可能有多个版本的JDK,而Tomcat要运行的可能不是当前系统默认的JDK,所以需要指定JDK运行。 修改tomcat目录下setclasspath.bat 在实际出现代码的前面增加一行,内容如下(实际jdk的路径,根据实际情况修改): set JAVA_HOME=D:\Program Files\Java\jdk1.8.0_291-windows 如图: 修改tomcat目录下setclasspath.sh 在实际出现代码的前面增加一行,内容如下(实际jdk的路径,根据实际情况修改): exp…

2021-09-14 0条评论 15点热度 0人点赞 admin 阅读全文

部署web的时候,为了方便期间,把用户资源做一个link附加到应用中(ln -s /storage /opt/tomcat/webapps/ROOT/xxx),结果发现tomcat里的程序无法读取到这个目录或者里面的文件 例如:ServletActionContext.getServletContext().getRealPath('/storage')就输出为null,其他文件操作的地方,报java.io.FileNotFoundException. 原因是Tomcat下,默认是不支持linking的方式的,需要…

2021-09-13 0条评论 19点热度 0人点赞 admin 阅读全文

本地开发的时候,使用Graphics生成验证码是正常的,但是部署到CentOS的Tomcat中就报错了: Exception in thread "http-nio-8080-exec-4" java.lang.InternalError: java.lang.reflect.InvocationTargetException at java.desktop/sun.font.FontManagerFactory$1.run(FontManagerFactory.java:86) at java.base/java…

2021-07-03 0条评论 87点热度 0人点赞 admin 阅读全文

Nginx配置了https(SSL) Nginx Proxy后端的Tomcat 用户使用EDGE请求下载一个PDF文件,实际由Tomcat的程序生成的PDF文件,结果下载后用户无法打开(文件大小也和实际不一致) 检查程序没有问题,且用直接请求tomcat下载也正常,发现是Tomcat前端套用的Nginx默认有关proxy buffer 缓存的配置问题。 修改nginx的配置文件 server { listen 443; server_name www.example.com; # 设置这个proxy_buffer_…

2021-06-19 0条评论 105点热度 0人点赞 admin 阅读全文

一般的web服务器(Nginx)或者应用服务器(Tomcat)的默认请求,都是有默认超时设置的(一般默认60秒),超过这个时间我们的代码没有返回结果,用户端就会收到报错:504 GatewayTimeout, Tomcat应用服务器里,也可能收到ClientAbortException(Borken Pipe)等错误。 有时候确实有一些请求比较耗时(例如生成统计报表等),在1分钟内还没有处理好,程序或者nginx那边就报错了,所以有时候需要为Nginx或者Tomcat修改默认超时设置。 nginx设置超时的设置是(…

2021-05-28 0条评论 129点热度 0人点赞 admin 阅读全文

Nginx转发给Tomcat的时候,发现一个问题,有一个名字叫User_Token的Header在Tomcat里始终获取不到,去掉nginx,直接让Tomcat接前端,就可以获取到这个Header 所以问题就应该出在Nginx这边,再仔细debug发现,如果把名字换成User-Token就可以了,所以就应该是这个User_Token下划线的问题。 经过搜索,在nginx里有一个配置,叫: 这个默认值是off,就是带下划线的Header是不被认可的,我们只要在server下把这个值打开就可以了: server { #…

2021-05-22 0条评论 131点热度 0人点赞 admin 阅读全文

装好nginx或者tomcat后,Java应用(Nginx是通过proxy来调用Tomcat应用的)如果POST比较大的数据,会报错 所以需要对Tomcat和Nginx进行一些参数调整,如果是SpringBoot的tomcat应用,则需要对application.properties调整 找到tomcat目录下的/conf/server.xml,修改配置文件,找到Connector,添加maxPostSize参数 我这里设置的是-1,表示不做大小限制(因为我这边上层还有nginx,只需要在nginx设置好就可以了)…

2021-05-20 0条评论 91点热度 0人点赞 admin 阅读全文

今天Tomcat上的一个API接口(是返回较大的图片,流量较大)客户端请求报错,如下错误: org.apache.catalina.connector.ClientAbortException: java.io.IOException: Connection reset by peer Caused by: java.io.IOException: Connection reset by peer 经检查程序上没有任何问题,重启tomcat也无法解决,发现是Tomcat前端套用的Nginx默认有关proxy buf…

2021-04-27 0条评论 160点热度 0人点赞 admin 阅读全文

nginx是现在最流行的web服务器之一,tomcat是Java界最流行的应用服务器之一,本文将介绍两个如何结合配置一起使用,也可以实现高级的负载均衡。 如果是CentOS等环境,可以使用yum命令安装 #安装epel-release yum install -y epel-release #安装nginx yum install -y nginx #启动nginx systemctl start nginx #开机自动启动nginx systemctl enable nginx 如果是Ubuntu等,可以使用ap…

2021-02-13 0条评论 182点热度 1人点赞 admin 阅读全文

Tomcat从官网下载后,是个压缩包,解压后如果没有特别的设置,启动和重启Tomcat的时候需要到Tomcat目录下的bin下启动,也不方便弄成开机启动,安装成服务后,就都可以实现了。 安装OracleJDK 或者OpenJDK # download rpm from: https://www.oracle.com/java/technologies/javase-downloads.html rpm -ivh jdk-11.0.9_linux-x64_bin.rpm #check java version jav…

2020-12-27 0条评论 333点热度 0人点赞 admin 阅读全文