服务器配置部署后端服务后,请求接口显示连接重置curl: (35) Recv failure: Connection was reset
服务器配置部署后端服务后,由于域名无备案,请求接口显示连接重置,
最近整了一台腾讯云的轻量应用云服务器,想试着部署一个个人网站,用于学习网站部署配置及vue、java、redis、rabbitMQ、mysql技术
域名也是整了一个,在服务器【域名解析】中关联

ssl证书整了个免费的,记得下载证书保存起来,后面nginx配置会用到,可以点击更多,查看证书部署文档SSL 证书 如何选择 SSL 证书安装部署类型?_腾讯云

我这边是选择了OpenCloudOS 9系统,由于是腾讯云,就装了宝塔Linux面板9.5.0腾讯云专享版
在控制台中免密登录云服务器后,就可以在服务器终端中执行安装命令了:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装完成后,终端就会显示宝塔面板的登录地址、用户名和初始密码。
注意默认端口号为34049,需要在控制台服务器的防火墙中对该端口进行放行


添加完后就可以按照终端刚刚宝塔安装完的信息进行操作,登录、绑定好后,可以在应用商店中下载想要的环境,我这边是装了Nginx 1.24.0、MySQL 8.0.36、Redis 7.4.3、rabbitmq 3.12.4(按需下载即可)

mysql记得重置密码,可以按网上的操作来,也可以在宝塔在一键重置

我整的是java后端服务、vue前端,首先就需要准备环境(java接口服务可以自己找开源框架【我是用samrt_admin】整一套,保证自己电脑可以运行的情况下打成jar包,打包时记得!记得!!记得!!!配置环境!!!!,传到服务器上,存放路径自己定义,容易记住就行,记不住就写在备忘录里)

然后在宝塔面板里配置,首先得安装java环境,根据自己项目进行安装java版本

安装完后点击“添加JAVA项目”,项目路径选择刚刚存放的jar包目录,读取到jar包后会自动加载信息,可以先添加,添加完在点【设置】修改配置信息。
jar包启动占用的端口,记得放行
代理路由可以自己填写
,域名管理中绑定域名。SSL根据SSL 证书 如何选择 SSL 证书安装部署类型?_腾讯云文档进行配置,配置完成后运行服务,可以在【日志管理-项目日志-实时日志】中看到服务启动信息
这边我启动服务成功之后就发现了一个问题:怎么测试请求接口都提示连接重置【curl: (35) Recv failure: Connection was reset】
cmd 中输入 【curl -v 接口地址】返回
但通过finshell远程服务器后测试接口,在命令窗口中输入 【curl -v 接口地址】,会显示接口正常请求
在根据网上百度、Bing搜索,AI询问所得到的处理办法,nginx 日志无报错,java服务日志也没有报错内容。怀疑是nginx配置问题,照着修改配置,请求接口依然是显示连接重置。
浏览器得反复刷新十多次,才能请求到内容。
SSL证书配置检查正常,怀疑是域名没有备案导致的,在【设置-配置文件-nginx配置文件】中修改server_name为自己服务器的ipv4地址,保存重启刷新nginx、java服务。
就发现可以正常请求接口了。
也是太心急了,第一时间拿到服务器,就想着部署网站服务了,由于域名实名后。需要三天后才能进行备案,故等等三天后去备案通过了再试试。
2025/12/29更新tip:
在网站的nginx中配置是没有用的
需要在首页的nginx中配置,方可有效
server {
listen 80;
server_name 对应域名;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name 对应域名;
ssl_certificate ssl文件crt;
ssl_certificate_key ssl文件key;
root /www/home;
index index.html;
location / {
try_files $uri $uri/ =404;
}
# 先匹配 /webui(无尾斜杠),301 重定向到 /webui/
#后台页面
location = /webui {
return 301 /webui/;
}
location /webui/ {
alias /www/smart_admin/vue/dist/;
index index.html;
try_files $uri $uri/ /webui/index.html;
}
# 先匹配 /app(无尾斜杠),301 重定向到 /app/
#H5页面
location = /app {
return 301 /app/;
}
location /app/ {
alias /www/smart_admin/app/h5/;
index index.html;
try_files $uri $uri/ /app/index.html;
}
# API 代理到后端 Java 服务
#接口地址
location /api/ {
proxy_pass http://127.0.0.1:端口号/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Scheme $scheme;
# === 新增:强制添加 CORS 头 ===
add_header 'Access-Control-Allow-Origin' '域名' always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always;
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always;
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range,Authorization';
# 处理预检请求(OPTIONS)
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
rewrite ^/api/(.*)$ /$1 break;
}
}
在对应位置添加,如上我类似的nginx配置即可。


更多推荐




所有评论(0)