【问题标题】:How to run java jars on nginx server locally? [closed]如何在本地 nginx 服务器上运行 java jars? [关闭]
【发布时间】:2020-05-22 13:55:21
【问题描述】:

我对 Nginx 很陌生,我想在本地机器上的 Nginx 服务器上运行一些 java jar。我怎样才能做到这一点?

我已经从http://nginx.org/en/download.html下载了适用于windows的nginx 我的 Nginx 版本:1.16.1 我的 java jar 在文件夹中 - E:\myapp 如何在我的 Nginx 服务器配置中指向我的 java jars 位置?

我的 Nginx 服务器配置如下(nginx.conf)

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       3000;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            alias E:\myapp
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

}

【问题讨论】:

  • Nginx 是一个 HTTP 服务器。它不能运行 Jar 文件(或任何 Java 代码)。
  • @Kayaman,我有一个 maven 项目,在构建项目时会生成多个 jar,我需要在 Nginx 服务器上运行这些 jar。我在我的项目的 docker 文件夹中看到了一些 nginx.conf 文件,但我不知道我需要在该 nginx.config 文件中更改什么配置才能在我的本地机器上运行它

标签: java nginx jar nginx-config


【解决方案1】:

您不能在 NGINX 上部署 jarwar。因为 NGINX 是一个 Web 服务器,而不是一个 servlet 容器。 但是,您可以将应用程序部署在 NGINX 网络服务器后面(在 Jettytomcat 上)

打开/etc/ngnix/sites-available/default并提供路由配置。

location /order-service {
  proxy_pass http://localhost:8080;
}
location /payment-service {
  proxy_pass http://localhost:9000;
}

这里,http://localhost/order-service/ 将被定向到 http://localhost:8080/,而到达 http://localhost/payment-service/ 的请求将被定向到 http://localhost:9000/

NGINX 作为负载均衡器

NGINX 也可用于负载平衡运行实例。 步骤如下:

打开/etc/ngnix/sites-available/default

// instances of order-service
upstream order_services {
  server localhost:8080;
  server localhost:8081;
  server localhost:8082;
}

location /order-service {
    proxy_pass http://order_services;
}

【讨论】:

    猜你喜欢
    • 2019-08-06
    • 2015-07-10
    • 1970-01-01
    • 1970-01-01
    • 2012-01-22
    • 2012-03-13
    • 1970-01-01
    • 2021-07-06
    • 2022-01-10
    相关资源
    最近更新 更多