Как запустить шут на сервере Apache
Я хочу использовать шута в производственном сервере.
Однако шут может работать только в Terminal.app с синхронизированной работой.
Я хочу знать, как запустить асинхронный шут, как php-pfm.
Я написал этот код:
import jester, asyncdispatch, json
routes:
get "/":
resp "Hello World!"
get "/users/@id":
var data = %*{"id": @"id"}
resp $data, "application/json"
runForever()
И теперь я запускаю этот код:
nim c -r cgi.nim
Как я могу запустить это за сервером Apache?
1 ответ
После того, как вы скомпилировали (с nim c -r cgi.nim
) у вас должен быть исполняемый файл cgi
, Вы должны запустить это на заднем плане, возможно, используя что-то вроде супервизора.
Затем вы настраиваете Apache для ReverseProxy по отношению к вашему cgi
программа nim, которая по умолчанию прослушивает http://127.0.0.1:5000/.
Здесь у вас есть полное руководство с использованием systemd+watchdog вместо supervisor и nginx вместо Apache: https://github.com/nim-lang/Nim/wiki/Tutorial:-Creating-a-(micro)-service