nginx lua-resty-http no route to host error
2017-10-14 14:9:6
收藏:0
阅读:357
评论:2
我正在尝试使用lua-resty-http进行http请求。 我在[https://requestb.in](https://requestb.in)上创建了一个简单的get api
我可以使用地址进行请求:[https://requestb.in/snf2ltsn](https://requestb.in/snf2ltsn)
但是,当我在nginx中尝试做这个时,我正在收到无法到达主机的错误
我的nginx.conf文件是:
worker_processes 1;
error_log logs/error.log;
events {
worker_connections 1024;
}
http {
lua_package_path"$prefix/lua/?.lua;;";
server {
listen 8080;
location / {
resolver 8.8.8.8;
default_type text/html;
lua_code_cache off; #用于开发启用实时重新加载
content_by_lua_file ./lua/test.lua;
}
}
}
我的Lua代码是
local http=require"resty.http"
local httpc=http.new()
- -local res,err=httpc:request_uri("https://requestb.in/snf2ltsn",{ssl_verify=false,method="GET"})
local res,err=httpc:request_uri("https://requestb.in/snf2ltsn",{
method="GET",
headers={
["Content-Type"]="application/x-www-form-urlencoded",
}
})
我该怎么解决这个问题? 或者有没有建议在nginx中进行http请求? 有什么线索吗?
PS:在我的Lua代码中有一个注释的部分。 我也试图使用该代码进行请求,但什么都没有发生。
点赞
用户4327598
将 package_path 更改为:
lua_package_path "$prefix/resty_modules/lualib/?.lua;;";
lua_package_cpath "$prefix/resty_modules/lualib/?.so;;";
2018-01-16 05:05:00
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

默认情况下,nginx解析器返回给定域的IPv4和IPv6地址。
resty.http模块使用cosocket API。
调用带有域名的cosocket的连接方法会选择一个随机的IP地址,你不幸选中了IPv6地址。你可以通过查看nginx error.log来检查它。
很可能你的电脑上IPv6不起作用。
要禁用nginx解析器的IPv6,请在你的位置(location)中使用以下指令:
resolver 8.8.8.8 ipv6=off;