繁体   English   中英

如何使用nginx提供Clojure页面

[英]How to serve Clojure pages with nginx

我用ubuntu和ngingx设置了一个家庭服务器,我可以提供静态文件。 现在我想测试一些clojure文件,但我不清楚如何做到这一点。 对于php来说这似乎很容易,例如在本教程中他为php文件添加了一个位置。 这就是我需要做的,只需指出Clojure文件在配置文件中的位置?

我有Dmitry Sotnikov 与Clojure进行的Web开发,他谈到了部署,但没有具体谈到nginx。

你能指出我正确的方向,我可以找到有关这方面的文件吗?

请尝试Nginx-Clojure模块。 您可以在没有任何Java Web服务器的情况下使用Nginx运行clojure Ring处理程序,例如。 码头。 它还要快得多。 基准测试可以在这里找到。

在此输入图像描述

考虑下一个设置:

nginx -> ring server (jetty)

您需要在某个端口(例如8080)启动lein ring server (使用lein-ring插件)。 Nginx将侦听80端口并将请求转发到8080.这是一个示例nginx配置:

upstream ring {
  server 127.0.0.1:8080 fail_timeout=0;
}

server {
    root <path-to-public-dir>;

    # Make site accessible from http://localhost/
    server_name localhost;

    location / {
        # First attempt to serve request as file
        try_files $uri $uri/ @ring;
    }

    location @ring {
        proxy_redirect off;
        proxy_buffering off;
        proxy_set_header Host $http_host;
        proxy_pass http://ring;
    }

    location ~ ^/(assets|images|javascripts|stylesheets|swfs|system)/ {
        expires     max;
        add_header  Cache-Control public;
    }
}

path-to-public-dir更改静态文件所在的目录( resources / public )。 Nginx将服务器静态文件(如果找到文件)并将其他请求转发给响铃服务器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM