温馨提示×

debian swagger怎么访问

小樊
52
2026-09-16 21:13:17
栏目: 智能运维

在 Debian 上“访问 Swagger”通常分两种场景:Swagger UI 已经部署好了,你只是不知道怎么打开;或者你在 Debian 上开发/部署了一个带 Swagger 的服务,需要配置可被访问。下面按常见情况说明。


一、已经部署了 Swagger UI(最常见)

1. 本地访问(Debian 本机)

如果是本机运行:

curl http://localhost:8080/swagger-ui.html

或浏览器访问:

http://localhost:8080/swagger-ui.html

(端口和路径取决于你的项目,常见还有 /swagger-ui/index.html)

2. 从其他机器访问 Debian 上的 Swagger

确保:

  • 服务监听 0.0.0.0 而不是 127.0.0.1
  • Debian 防火墙放行端口

查看监听:

ss -tunlp | grep 8080

防火墙(若使用 ufw):

sudo ufw allow 8080

远程浏览器访问:

http://<debian_ip>:8080/swagger-ui.html

二、Spring Boot 项目(Java,最常见)

依赖

<dependency>
  <groupId>org.springdoc</groupId>
  <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
  <version>2.x.x</version>
</dependency>

访问地址

  • 老版本:/swagger-ui.html
  • 新版本(springdoc):/swagger-ui/index.html
  • OpenAPI JSON:/v3/api-docs

示例:

http://localhost:8080/swagger-ui/index.html

三、通过 Nginx 反向代理访问(生产常见)

location /swagger-ui/ {
    proxy_pass http://127.0.0.1:8080/swagger-ui/;
}

location /v3/api-docs/ {
    proxy_pass http://127.0.0.1:8080/v3/api-docs/;
}

然后访问:

http://your-domain.com/swagger-ui/index.html

四、常见问题排查

1. 页面打不开

  • 服务没启动
  • 端口不对
  • 只监听 localhost

2. 返回 404

  • 路径错误(不同版本不同)
  • 被 Spring Security 拦截

Spring Security 放行示例:

http.authorizeHttpRequests()
    .requestMatchers("/swagger-ui/**", "/v3/api-docs/**").permitAll();

五、如果你说的是“Debian 上安装 Swagger 工具”

Swagger 不是系统包,一般:

  • 前端:npm install -g swagger-ui
  • 后端:集成到代码里

如果你能补充:

  • 用的什么语言(Java / Python / Node)
  • 服务端口
  • 是否用 Docker / Nginx

我可以给你精确的一步一步访问方式。

0 踩