今天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条评论 1521点热度 0人点赞 admin 阅读全文

用nginx做站的时候,经常遇到一些跳转需求,比如 根据子域名不同跳转至其他网站 如果用户打了IP或者example.com要跳转至www.example.com 启用了https以后,需要将原来整站http跳转至https 网站临时维护,需要暂时把网站跳转到临时维护页面,详情看我之前的博客:https://blog.terrynow.com/2021/01/01/nginx-setup-maintain-page/ server { listen 80; server_name mail.example.com;…

2021-03-27 1条评论 950点热度 0人点赞 admin 阅读全文

如果你的Web服务器有流量限制,或者流量是要收费的,那么可能要需要加一层简单的DDOS防护,如果专门购买DDOS防护产品,那么成本也是挺高的。nginx下只要稍加配置,就可以初步实现了。 如果要设置每日、每月流量上线,请查看 https://blog.terrynow.com/2021/06/06/linux-server-iptables-set-daily-or-monthly-qutoa/ Nginx可以通过、、来实现 limit_req 限制每秒请求数 配置举例: limit_req可以放在server下,…

2021-03-19 1条评论 1123点热度 1人点赞 admin 阅读全文

有时候,我们用Nginx搭建的网站,不想让所有用户访问,就可以设置访问密码验证,只要输入正确用户名和密码才能访问,如图: nginx是通过这个模块来实现用户名密码保护(basic_auth)的,一般来说安装好的nginx都自带这个模块的。 首先,我们需要生成可以访问的用户名和密码,并保存到文件中。Linux下用到的是 如果你的服务器上没有,请先安装htpasswd(可以使用which htpasswd看是否安装过) CentOS等服务器,请用 yum  -y install httpd-tools Ubuntu等服…

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

之前web应用程序代码里用到HttpServletRequest.getScheme()得到的是http,但是启用了nginx的SSL后,确得到的不是https 如何配置Nginx和Tomcat整合,请看:https://blog.terrynow.com/2021/02/13/linux-nginx-tomcat-config-load-balance/ 如何在nginx启用SSL,请看:https://blog.terrynow.com/2021/02/15/nginx-https-ssl-config/ 下面…

2021-02-21 0条评论 675点热度 0人点赞 admin 阅读全文

Nginx默认不不显示文件、文件夹的目录列表的,有时候,我们需要对某个文件夹显示目录列表,只需要进行如下配置,就可以轻松实现了。 比如我们要对服务器的/opt/soft开启文件目录浏览列表,如图所示: 配置如下(在server下面修改) # 访问路径为 https://www.example.com/soft # 如果要全站启用,就在location / {}下面加autoindex on; location ^~ /soft { # 这样就会显示/opt/soft下的文件目录 root /opt; # 最主要的是…

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

现在的大部分网站都启用了SSL加密(https),不加密的网站甚至被浏览器标记为『不安全』,所以有必要为我们的网站启用https加密,申请SSL证书的成本也很低(Let's Encrypt是免费的) 如何申请免费Let's Encrypt证书,详见我的另一篇博客:https://blog.terrynow.com/2021/02/14/acme-retrive-letsencrpt-https-ssl-cert-and-auto-renew/ 如何安装Nginx,详见我的另一篇博客:https://blog.ter…

2021-02-15 1条评论 1193点热度 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条评论 1086点热度 1人点赞 admin 阅读全文

我们可以通过设定iptables防火墙来做到让特定的IP访问网站,但是有时候需要网站可以全部访问,但是只针对某个页面(比如管理页面)只运行特定IP访问,这个时候可以用nginx来设置 假设需要让/admin只允许202.202.xxx.0-255来访问,而且如果不允许的IP访问,会显示404,以为是网页不存在,nginx如下设定即可 server { #省略部分配置 #这样做,让403 forbiden 也显示成404,外面访问的人以为 page 不存在 error_page 403 404 /404.html; …

2021-01-08 0条评论 813点热度 0人点赞 admin 阅读全文

有时候网站维护可能需要一段时间,为了给用户看到一个比较友好的提示,可以在nginx上配置公告页面,用户访问的所有页面都定向到这个页面。 server { listen 80 default_server; listen [::]:80 default_server; server_name _; root /usr/share/nginx/html; #以下放到nginx的config中,然后注释掉原来location中的/的部分, #维护好了以后,maintain.html redirect到/ #rewrite…

2021-01-01 1条评论 1383点热度 1人点赞 admin 阅读全文