hi-nginx-1.0.7 发布,基于 nginx 的多语言通用服务器

所以呢
 所以呢
发布于 2017年08月10日
收藏 22

hi-nginx-1.0.7 发布了。

此次更新:

  • 升级 nginx 至 1.13.4

  • 添加 nginx-upload-module

hi-nginx 是一款基于 nginx 写成的通用服务器。它既是 web server,也是 application server;它不仅继承了 nginx 的全部功能,完全兼容 nginx,而且支持多种语言混合开发 web 应用。它性能强劲,易于开发,部署方便。

目前,hi-nginx 支持混合使用 c++,python 以及 lua 同时进行 web 应用开发。用户应该根据应用场景的实际需要,细粒度地选择最为合适的开发语言,最大限度的发挥 hi-nginx 的潜能。

hi-nginx 致力于增强用户的工作,而不是改变用户的工作。当用户不满意它时,用户可以安全地“回滚”至之前的工作状态,而不会产生任何损失。

主项目地址:https://github.com/webcpp/hi-nginx

文档地址:https://github.com/webcpp/hi-nginx-doc

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:hi-nginx-1.0.7 发布,基于 nginx 的多语言通用服务器
加载中

最新评论(15

zzeric
zzeric

引用来自“zzeric”的评论

/a.txt已经生成了,不是权限的问题
我觉得加一个类似lua-nginx-module的content_by_lua_file的hi_python_file指令会比较好
hi_python_script还得直接暴露python文件名

引用来自“webcpp”的评论

hi_python_file这个可以有.
不过用rewrite就可以很好的解决暴露python文件名的问题。
比如:
location ~ \.do$ {
rewrite ^/(.*)\.do$ /$1.py break;
hi_need_cache off;
hi_need_headers on;
hi_need_cookies on;
hi_python_script python;
}
是的,rewrite可以隐藏
所以呢
所以呢

引用来自“zzeric”的评论

/a.txt已经生成了,不是权限的问题
我觉得加一个类似lua-nginx-module的content_by_lua_file的hi_python_file指令会比较好
hi_python_script还得直接暴露python文件名
hi_python_file这个可以有.
不过用rewrite就可以很好的解决暴露python文件名的问题。
比如:
location ~ \.do$ {
rewrite ^/(.*)\.do$ /$1.py break;
hi_need_cache off;
hi_need_headers on;
hi_need_cookies on;
hi_python_script python;
}
zzeric
zzeric
/a.txt已经生成了,不是权限的问题
我觉得加一个类似lua-nginx-module的content_by_lua_file的hi_python_file指令会比较好
hi_python_script还得直接暴露python文件名
所以呢
所以呢

引用来自“zzeric”的评论

我在test.py里加入
import os
os.system('echo 123 > /a.txt')
并在hi_python_script后面用绝对路径的话,可以调用得到,生成/a.txt,但是nginx worker会抛异常,页面不能显示。
/a.txt,注意创建文件的权限。你把/a.txt 改成python/a.txt试试。
所以呢
所以呢

引用来自“zzeric”的评论

按demo的conf配置
location ~ \.py$ {
hi_need_cache off;
hi_need_headers on;
hi_need_session on;
hi_session_expires 30s;
hi_python_script python;
}

并在python目录里增加test.py, 内容就以下两句
hi_res.status(200)
hi_res.content('hello,world')

但是http://localhost/test.py不能正常显示hello world,没有error_log, 应该是没有成功调用到python目录里的test.py
不好意思。我这边测试了你的情况,没有出现你所说的问题。
zzeric
zzeric
我在test.py里加入
import os
os.system('echo 123 > /a.txt')
并在hi_python_script后面用绝对路径的话,可以调用得到,生成/a.txt,但是nginx worker会抛异常,页面不能显示。
zzeric
zzeric
pyecho是可以的,编译也没有问题,就是hi_python_script 不起作用
location ~ \.py$ {
hi_python_content "hi_res.status(200)\nhi_res.content('hello,world')" ;
}
这样也是可以的,说明nginx配置也没问题
zzeric
zzeric
按demo的conf配置
location ~ \.py$ {
hi_need_cache off;
hi_need_headers on;
hi_need_session on;
hi_session_expires 30s;
hi_python_script python;
}

并在python目录里增加test.py, 内容就以下两句
hi_res.status(200)
hi_res.content('hello,world')

但是http://localhost/test.py不能正常显示hello world,没有error_log, 应该是没有成功调用到python目录里的test.py
所以呢
所以呢

引用来自“1363435084”的评论

抱歉 不熟java
下一版愿景:支持java
久永
久永

引用来自“久永”的评论

支持 mono 或者 mvc core 吗?

引用来自“webcpp”的评论

抱歉,不熟c#
回复@webcpp : 新加一个语言支持的话,大概要做那些工作?比如,如果我只会.net,该如何配合你才能支持?
返回顶部
顶部