Tôi có cảm giác mình đã bỏ lỡ điều gì đó hiển nhiên ở đây, nhưng tôi không biết bắt đầu từ đâu.404s khi triển khai một cuộc chiến tranh noir đến cầu tàu trên vắt
Tôi có một ứng dụng noir tươi, tạo thusly:
$ lein noir new hiworld
tôi thêm một handler trang mới để src/hiworld/server.clj:
(ns hiworld.server
(:require [noir.server :as server]))
(server/load-views "src/hiworld/views/")
(def handler (server/gen-handler {:mode :dev
:ns 'hiworld}))
tôi đặt project.clj lên cho vòng:
(defproject hiworld "0.1.0-SNAPSHOT"
:description "FIXME: write this!"
:dependencies [[org.clojure/clojure "1.3.0"]
[noir "1.2.2-SNAPSHOT"]]
:dev-dependencies [[lein-ring "0.5.4"]]
:ring {:handler hiworld.server/handler}
:main hiworld.server)
Kiểm tra nó hoạt động tại địa phương:
$ lein deps
$ lein ring server-headless
# elsewhere
$ curl -I localhost:3000/welcome
HTTP/1.1 200 OK
Date: Mon, 20 Feb 2012 08:51:15 GMT
Set-Cookie: ring-session=ef00a7ad-2061-4026-9d94-3ed86ec8c46c;Path=/
Content-Type: text/html; charset=utf-8
Content-Length: 0
Server: Jetty(6.1.25)
tôi xây dựng một cuộc chiến tranh:
$ lein ring uberwar
# builds hiworld-0.1.0-SNAPSHOT-standalone.war
Tất cả tốt cho đến nay. Bây giờ, tôi triển khai nó đến cầu cảng:
$ sudo apt-get install jetty libjetty-extra
$ sudo cp hiworld-0.1.0-SNAPSHOT-standalone.war /usr/share/jetty/webapps/root.war
$ sudo chown jetty:adm /usr/share/jetty/webapps/root.war
$ sudo mv /usr/share/jetty/webapps/root /usr/share/jetty/webapps/root-orig
$ sudo /etc/init.d/jetty restart
Nhưng:
$ curl -I localhost:8080/welcome
HTTP/1.1 404 Not Found
Date: Mon, 20 Feb 2012 08:59:27 GMT
Set-Cookie: ring-session=c255da15-6cbd-4d2c-8e17-9d120918bde9;Path=/
Content-Type: text/html; charset=utf-8
Content-Length: 363
Server: Jetty(6.1.24)
tôi đã bỏ lỡ gì? Theo như tôi có thể nói, đó là tất cả những gì tôi cần làm để triển khai một ứng dụng web tầm thường đến cầu cảng, nhưng rõ ràng là tôi đã có một cái gì đó sai ở đây. Tôi không nhớ khởi động lại, vì vậy tôi không nghĩ rằng Tôi cần phải xác định bối cảnh của riêng mình - hay tôi?
CẬP NHẬT
Tôi đã theo this chuỗi các hướng dẫn để tạo ra một đơn giản "hello world" cuộc chiến không liên quan đến clojure ở tất cả, và nó hoạt động như mong đợi, vì vậy có thể thấy rằng có điều gì đó không Khá đúng với ngăn xếp clojure.
CẬP NHẬT LẠI
tôi tạo ra các ứng dụng vòng đơn giản nhất có thể là một cuộc chiến tranh độc lập và triển khai nó. Điều này làm việc, vì vậy nó trông giống như nó là một cái gì đó noir cụ thể.
CẬP NHẬT lần thứ ba
tôi tạo ra và triển khai một ứng dụng compojure hello-thế giới, mà làm việc như mong đợi.