gpt4 book ai didi

nginx - Spring Boot 和 Nginx 集成

转载 作者:IT老高 更新时间:2023-10-28 21:43:38 26 4
gpt4 key购买 nike

在我的项目中,Web 应用程序是使用带有默认 tomcat 服务器的 Spring boot 开发的。我使用 NGINX 作为负载平衡器,并在 NGINX 配置中配置了我的 spring-boot-web-app,如下所示:

location /spring-boot-web-app {
proxy_pass http://spring-boot-web-app/
}

http {
upstream /spring-boot-web-app {
server <IP_of_spring_boot_app>:<Port_of_spring_boot_app>
}
}

现在让我们将 NGINX IP 和端口分别称为 nginx_ipnginx_port。我的网络应用程序的工作 URL 也为: http://web_app_ip:web_app_port/rest/echo/hi

上面的 URL 工作正常。但是当我尝试通过 NGINX 访问相同的 URI 时,它会抛出 404。通过 NGINX 使用的 URL 为: http://nginx_ip:nginx_port/spring-boot-web-app/rest/echo/hi

我有什么遗漏吗?

最佳答案

这对我有用。你可以试试这个吗?

  1. 运行tomcat

    docker run -d -p 8080:8080 --name=tomcat tomcat:8 
  2. 运行 nginx

    docker run -d -p 80:80 --link tomcat:tomcat --name=nginx nginx
  3. 进入 nginx 容器并更新配置文件

    docker exec -it nginx bash

    /etc/nginx/nginx.conf:

    server {
    listen 80 default_server;
    server_name subdomain.domain.com;
    location / {
    proxy_pass http://tomcat:8080;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    }
    }
  4. 重启nginx服务

    nginx -s reload
  5. 从主机浏览器通过 nginx 访问 tomcat。您可能需要向/etc/hosts 添加条目

    http://subdomain.domain.com

完成 nginx 配置:nginx.conf

关于nginx - Spring Boot 和 Nginx 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37057772/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com