【发布时间】:2013-04-21 13:54:54
【问题描述】:
这是我的第一个问题。 如果我犯了错误,请指出,下次我会改进。 我是一名 Java 开发人员和 Linux 新手。 我将我的 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。
- 在这种情况下我是否需要为 Tomcat 安装 APR 库(nginx + tomcat http 连接器)以加快我的服务器速度?
- 使用代理缓存 img、css 对我有好处吗...
- 谁使用此配置处理静态文件?如果是 tomcat,我们需要安装 APR,对吗?
- 有没有办法在使用代理时只保护某些请求模式(如登录页面)?
我的 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;
}
【问题讨论】:
-
从github.com/spring-projects/spring-boot/issues/7376看来,APR 对 SSL 最有利,在其他情况下可能不值得增加设置复杂性。
标签: tomcat nginx reverse-proxy apr