我有一个nginx.conf
,看起来像这样
server {
listen 3000;
server_name ~^(?<sub>.+)\.localhost$;
root www/$sub;
}
www/hello/index.html
仅包含hello world
文本。
想法是http://hello.localhost
将从www/hello
目录中提供。使用系统范围的nginx可以正常工作,但是,当我在nix-shell中运行nginx时,出现500条错误,而没有任何其他错误消息。
nix-shell -p "nginx" --run "nginx -p . -c nginx.conf"
% curl hello.localhost:3000
<html>
<head><title>500 Internal Server Error</title></head>
<body>
<center><h1>500 Internal Server Error</h1></center>
<hr><center>nginx/1.16.0</center>
</body>
</html>
sudo nginx -p . -c nginx.conf
% curl hello.localhost:3000
hello world