在nginx后面运行Spring引导应用程序

在nginx后面运行Spring引导应用程序,nginx,spring-boot,Nginx,Spring Boot,我有一个Spring Boot+MVC应用程序,正在我的服务器上运行,它一定会http://localhost:8000 有一个nginx代理(或者是反向代理,不确定名称)在端口80和443上侦听外部世界。根(/)将正确解析,但其下的任何内容都无法解析,并导致404错误(/someControllerName/action、/images/、/css/) 我将此作为我的配置: upstream jetty { server localhost:8000; } server {

我有一个Spring Boot+MVC应用程序,正在我的服务器上运行,它一定会
http://localhost:8000

有一个nginx代理(或者是反向代理,不确定名称)在端口80和443上侦听外部世界。根(/)将正确解析,但其下的任何内容都无法解析,并导致404错误(/someControllerName/action、/images/、/css/)

我将此作为我的配置:

upstream jetty {
        server localhost:8000;
}

server {
        listen       80;
        server_name  domain.com;
        return       301 http://www.domain.com$request_uri;
}

server {
        listen       443;
        server_name  domain.com;
        ssl_certificate /etc/nginx/ssl/ssl.crt;
        ssl_certificate_key     /etc/nginx/ssl/ssl.key;
        return       301 https://www.domain.com$request_uri;
}

server {
        listen 80 default_server;
        listen 443 ssl;

        root /usr/share/nginx/html;
        index index.html index.htm;

        server_name www.domain.com localhost;

        #ssl    on;
        ssl_certificate /etc/nginx/ssl/ssl-unified.crt;
        ssl_certificate_key     /etc/nginx/ssl/ssl.key;

        location / {
                # First attempt to serve request as file, then
                # as directory, then fall back to displaying a 404.
                # Uncomment to enable naxsi on this location
                # include /etc/nginx/naxsi.rules
                proxy_pass              $scheme://jetty/$request_uri;
                proxy_redirect  off;
                proxy_set_header        X-Real-IP $remote_addr;
                proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header        Host $http_host;
                try_files $uri $uri/ =404;
        }
}

非常感谢您的帮助。

您不能以您尝试的方式将
代理通行证
试用文件
组合在一起。正如配置中的注释所述,
try\u files
指令使nginx查找与URI匹配的文件,然后查找与URI匹配的目录。如果两者都找不到,它将以404作为响应。您可以在中阅读有关
try\u文件的更多信息

您的问题不清楚您是否需要使用
try\u文件
,因此修复配置的最简单方法是删除
try\u文件