【问题标题】:Apache Tomcat 7 + Nginx - IsTomcat Native needed?Apache Tomcat 7 + Nginx - IsTomcat Native 需要吗?
【发布时间】:2013-04-21 13:54:54
【问题描述】:

这是我的第一个问题。 如果我犯了错误,请指出,下次我会改进。 我是一名 Java 开发人员和 L​​inux 新手。 我将我的 Spring MVC 应用程序部署在带有 Tomcat 7 的 VPS 上,并使用 nginx 作为代理服务器。 在互联网上冲浪了几天后,我发现它可能是一个很好的组合,而不是使用 apache 的 tomcat。 我将进一步了解 nginx 可以做什么。 目前,nginx 处理来自客户端的 SSL,Tomcat 位于同一台机器上并作为具有 HTTP 连接器的后端服务器(Tomcat 和 Nginx 之间没有 SSL)。我还使用 limit_req 模块作为基本的 HTTP 洪水保护。 我也知道 APR - 使用 Tomcat 作为 Web 服务器时的 Tomcat 本机库。每当我启动我的tomcat时,它说我的APIs not found。

  1. 在这种情况下我是否需要为 Tomcat 安装 APR 库(nginx + tomcat http 连接器)以加快我的服务器速度?
  2. 使用代理缓存 img、css 对我有好处吗...
  3. 谁使用此配置处理静态文件?如果是 tomcat,我们需要安装 APR,对吗?
  4. 有没有办法在使用代理时只保护某些请求模式(如登录页面)?

我的 nginx 配置文件:

server {
    listen  443 ssl;    
        server_name  domain;
    ssl on;
    ssl_certificate /etc/nginx/ssl/domain.crt;
    ssl_certificate_key /etc/nginx/ssl/domain.key;

    location / {
                proxy_pass http://localhost:8080;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto https;
        proxy_set_header X-Forwarfed-For $proxy_add_x_forwarded_for;    
    }
}

server {
        listen      80;
        server_name domain;
        return 301 https://$server_name$request_uri;
}

【问题讨论】:

标签: tomcat nginx reverse-proxy apr


【解决方案1】:

我会尽力回答你的问题:

  1. libtcnative 使 tomcat 能够使用本机操作系统接口 可以加快操作系统相关的任务,所以你不需要 它,但我会推荐它!这是tomcat的一个很好的示例配置 nginx背后: http://wiki.razuna.com/display/ecp/Razuna+with+Nginx+as+a+front+end+server
  2. 据我了解,您必须为 nginx 提供一个根目录,以便它可以提供和缓存静态文件并将 ajax 调用传递给 tomcat
  3. 应该回答 1. 和 2.
  4. 我不太明白这个问题..

【讨论】:

    【解决方案2】:

    不,您不需要tomcat native。您只需配置 nginx 以将请求代理到 tomcat 服务器。使用 nginx,您可以配置 tomcat 服务器集群以实现负载平衡和故障转移。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-01
      • 2018-06-06
      • 1970-01-01
      • 2013-01-23
      • 2016-12-07
      • 2012-08-18
      • 2016-04-29
      • 2015-12-10
      相关资源
      最近更新 更多