MeowMeow
1.0.0
这是用普通Erlang编写的简单Web服务器。
运行此服务器需要Erlang/OTP 23 。 Erlang/OTP 24被推荐。
调试程序的最佳方法就是要做以下操作:
$ cd src/
$ erlc *.erl && erl; rm -rf ./*.beam # This will rebuild everything from scratch, so there would be no problems with cached files
...
Eshell V11.2 (abort with ^G)
1> server:start().
在使用此方法之前,不要忘记创建配置文件:
$ cp -r configs/ /etc/MeowMeow/ # Porbably you will need root(i.e. sudo)
使用rebar3编译:
$ rebar3 as prod release
然后,您需要在/etc/MeowMeow/中创建配置。此后,您可以运行服务器:
$ ./_build/prod/rel/MeowMeow/bin/MeowMeow <desired mode of running>
如果您在运行模式上需要执行脚本的帮助,而没有参数可以获得帮助。
将您的文件放入/var/www/ Directory中,它们将在静态上提供。当前可用于服务文件的FASTCGI支持不是静态的。
重要注意:在当前版本中,未检查配置中的语法错误,因此错误配置可能会导致致命错误。
服务器配置存储在/etc/MeowMeow/meow.conf中。语法如下:
Directive1 Args
Directive2 Args
当前版本支持以下指令:
LogLevel <<LEVEL>>设置日志记录级别从0到4(0- log nothing,4- log avethert)KeepAlive <<MS>>默认连接持续时间在毫秒中ListenPort <<PORT>>端口在哪里聆听连接ListenHost <<HOSTNAME/IP>>主机名聆听DocDir <<DIRECTORY>>目录的目录,文件可服务要配置路由,您需要编辑/etc/MeowMeow/routes.conf 。语法如下:
Route <wildcard pattern>
Directive1 Args
Directive2 Args
Host <wildcard pattern>
Directive3 Args
End
End
Route定义了要应用指令的请求路径模式。另外,指令可以由Host标头应用(如上所述)。指令是按照配置文件中添加的顺序应用的。服务器当前支持的指令:
Abort <<CODE>> - 停止处理请求并将http/1.1状态代码发送给客户<<CODE>>No-Content - 发送HTTP/1.1 204 No ContentDisallow - 向客户发送HTTP/1.1 403 ForbiddenSet-Header <<HEADER>> <<VALUE>> - 设置响应标头<<HEADER>> to <<VALUE>>ExecFCGI <<FILE>> <<FCGI_HOST>> <<FCGI_PORT>> <<FCGI_TIMEOUT>> - 问<<FCGI_HOST>>:<<FCGI_PORT>> << fcgi_port <<FILE>>以<< fcgi_timeout >> << <<FCGI_TIMEOUT>>Set-Code <<CODE>>设置响应的状态代码。Send-File <<PATH>>将文件作为响应发送。您可以在此处查看路由规则配置的示例
src/erl_fastcgi.erl ):src/ Directory中某些文件中定义的代码版权不是法律建议,而是仅供内部使用。除信用部分中提到的所有代码外,所有代码均为MIT许可证(请参阅许可证,有关更多信息)