![Lighttpd + Node.JS (通过 ModProxy) - 500 内部服务器错误](https://linux22.com/image/799717/Lighttpd%20%2B%20Node.JS%20(%E9%80%9A%E8%BF%87%20ModProxy)%20-%20500%20%E5%86%85%E9%83%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%94%99%E8%AF%AF.png)
在我的 lighttpd.conf 文件顶部,我有以下内容
server.modules = (
"mod_access",
"mod_alias",
"mod_compress",
"mod_redirect",
# "mod_rewrite",
"mod_proxy"
)
在底部我添加了
proxy.server = (".js" => (
( "host" => "127.0.0.1", "port" => 3000 )
))
如果我打开我的 JS 文件(包含console.log('test');
),我会收到内部服务器错误
我尝试将其置于 $HTTP["host"] 条件中,并删除 .js,但都不起作用
Node 很好,如果我node test.js
从命令行运行,它就可以工作
答案1
那么端口 3000 上运行着什么服务?直接尝试针对该端口发出请求(例如curl http://localhost:3000/somename.js
)。
但是我认为你不知何故误以为nodejs就像php,你可以用nodejs运行任何.js文件,就像用php运行.php一样——事实并非如此。nodejs本身不是一个“CGI”解释器(尽管你可能可以用nodejs编写一个运行其他js文件的解释器)。