启动 Rails 应用程序,从本地网络外部向应用程序发出请求

2024-04-05

我确信这是一个非常基本的问题,但我找不到答案。我已经看过了这个问题 https://stackoverflow.com/questions/13853936/cannot-assign-requested-address-bind2-errnoeaddrnotavail, 这个问题 https://stackoverflow.com/questions/14471885/bind-cannot-assign-requested-address, 这个问题 https://stackoverflow.com/questions/21768101/how-do-i-make-my-ruby-on-rails-app-respond-to-external-requests-visible-to-the, 这个问题 https://stackoverflow.com/questions/9282689/allow-public-connections-to-local-ruby-on-rails-development-server, and 这个问题 https://stackoverflow.com/questions/7640619/cannot-assign-requested-address-possible-causes但他们都没有帮助我找到答案。

我正在使用 Rails4.2。我创建了一个非常简单的应用程序来测试我是否可以执行以下操作:

我想看看是否可以在我的计算机上启动我的 Rails 应用程序,然后从outside我的本地网络。例如:我想从我的手机(未连接到本地网络)发出请求并成功获得响应。

我假设我首先需要获取我的外部/可路由 IP 地址。我意识到我的 ISP 为我的路由器提供的 IP 地址不是静态的,但仅出于演示目的,我想看看是否可以成功发出单个请求。

我去谷歌并输入“我的IP是什么”,它返回了我的外部IP地址(让我们假设我的外部IP地址是:11.111.111.111).

在我的 Rails 应用程序中:然后我执行了以下命令:

rvmsudo rails s -p 80 -b 11.111.111.111 

我想绑定到外部IP地址,并且我想监听端口80。我执行rvmsudo是因为据我了解,所有低于1000的端口都需要更高的权限。

它出错并显示以下内容:

无法分配请求的地址 - 绑定(2)

我试图理解为什么会出错。我不明白什么?我是不是少了一步?难道不能这样做吗?我的 ISP 是否让我无法绑定到该外部 IP?我需要在路由器上进行额外配置吗?

我意识到我可以使用heroku。这更多的是一个实验,看看这是否可能。提前致谢!


您无法将套接字绑定到您的外部 IP。该 IP 由您的 ISP 分配给您的调制解调器(或您用来连接互联网的任何设备)。您只能绑定到您计算机的接口。

有多种解决方案:

  • 绑定到 0.0.0.0:3000(或您的计算机 IP,而不是本地主机),并确保您的网络将您的公共 IP 转发到该端口上的计算机。
  • 使用类似的东西https://ngrok.com/ https://ngrok.com/简单易行
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

启动 Rails 应用程序,从本地网络外部向应用程序发出请求 的相关文章

  • Twitter Bootstrap 中下拉链接的模态

    我正在尝试从下拉菜单中的链接进行模式启动 该模式似乎已启动 网站变为灰色 但看不到 来自不在下拉列表中的常规链接的模态工作得很好 我对 jquery 进行了愚弄 但由于我是 jquery 的新手 所以没有任何结果 这是我的网站代码
  • 数据库分片和 Rails

    在 Rails 中处理分片数据库的最佳方法是什么 分片应该在应用层 活动记录层 数据库驱动层 代理层还是其他层处理 各自的优点和缺点是什么 FiveRuns 有一个名为的 gem数据结构 https github com bpot data
  • kaminari ajax 分页不更新分页

    我正在使用 kaminari gem 在 Rails3 中实现分页 我一直在关注github上的这段代码https github com amatsuda kaminari example commits ajax https github
  • save_and_open_page 已停止提供我的 CSS

    我的测试设置工作得很好 每当我打电话时 都能提供正确格式的 css 页面save and open page从测试中 然后 我设置了一些 javascript 测试 并对我的设置进行了一些更改 抱歉 我无法详细说明所有内容 我没有足够详细地
  • 如何从rails控制台将数据添加到数据库

    我有一个User model gt gt u User new gt
  • 如何在 gem 的示例脚本中使用 pry-byebug ?

    我正在制作我的第一个 gem 它不是 Rails 应用程序 而是一个带有一些 AI 的 tic tac toe 库 这样我就可以与一个永远不会输的计算机对手比赛 并在可能的情况下强行获胜 现在我正在尝试调试人工智能中的攻击策略 但我似乎无法
  • 使用复选框过滤列表

    我有一个电影列表及其评级 在我的页面顶部 我有一个表单 其中提供了一个复选框列表 其中显示了每个可用的评级 G PG 13 等 一旦用户单击复选框并点击提交 我只想显示所选的电影 在我的索引方法中 我有一个名为的实例变量 filtered
  • RSpec 请求规范发布一个空数组

    我目前正在 Rails 中开发 API 端点 如果我需要的数据无效 我想确保端点响应具有正确的错误状态 我需要一个 id 数组 无效值之一是空数组 Valid vendor district ids 2 4 5 6 Invalid vend
  • Rails Capistrano 3 - 如何将 production.log 文件共享到 Capistrano 的共享文件夹中?

    我正在使用 Capistrano 3 与我的 Rails 应用程序一起部署 问题是 每次我将应用程序部署到服务器时 log development log 文件都会重置 我听说可以将 production log 文件放入共享文件夹中并在每
  • 回形针不支持 .doc 文件

    在 Rails 4 0 2 中 我使用回形针 gem 上传文件 但它不支持 doc 文件 在文件上传字段下方 显示一条错误消息 扩展名与其内容不匹配 在模型中 检查内容类型的验证如下 validates attachment content
  • 在 Web 应用程序中显示最新的提交值?

    我有一些 Rails 应用程序 我使用 Git 作为版本控制系统 我使用 GitHub 或 Beanstalk 作为存储库主机 从理论上讲 我想要做的事情非常简单 以某种方式在 Web 应用程序的页脚中显示最新的提交 ID 号 哈希值 这样
  • 自定义通用 Rails 错误消息

    我们的 Rails 应用程序被设计为链接到多个客户端数据库的单个代码库 根据子域 应用程序确定要连接到哪个数据库 我们使用液体模板为每个客户定制演示文稿 我们无法为每个客户定制通用的 我们很抱歉 出了点问题 消息 谁能推荐一种方法让我们能够
  • 如何在服务调用后检查 rspec 中的数组更改?

    目标很简单 例如我们有一个数组 name ghost state rejected name donkey state rejected 运行服务调用后UpdateAllUsers 这会将所有用户更改为 accepted name ghos
  • 有时您可能需要重新启动 Webrick 才能看到所做的更改,这是否正确?

    我听 Kevin Skoglund lynda com 说 养成在开发过程中频繁重新启动 Webrick 的习惯是一个很好的习惯 虽然通常您不需要重新启动 Webrick 来查看更改 但他暗示在某些特殊情况下可能需要这样做 有谁知道这些情况
  • Rails 3.1 和图像资源

    我已将管理主题的所有图像放入名为 admin 的文件夹内的资产文件夹中 然后我像平常一样链接到它 Ruby image tag admin file jpg CSS logo background url assets images adm
  • 有没有办法使用 Rspec/Capybara/Selenium 将 javascript console.errors 打印到终端?

    当我运行 rspec 时 是否可以让 capybara selenium 向 rspec 报告任何 javascript console errors 和其他异常 我有一大堆测试失败 但当我手动测试它时 我的应用程序正在运行 如果不知道仅在
  • Python 的“zip”内置函数的 Ruby 等价物是什么?

    Ruby 是否有与 Python 内置函数等效的东西zip功能 如果不是 做同样事情的简洁方法是什么 一些背景信息 当我试图找到一种干净的方法来进行涉及两个数组的检查时 出现了这个问题 如果我有zip 我可以写这样的东西 zip a b a
  • 将 Rack::Deflater 插入机架中的哪个位置?

    我目前有以下内容 use Rack Rewrite use Rack Cache verbose gt true metastore gt memcached localhost 11211 rack cache meta entityst
  • 用于验证目的的动态查找方法

    我正在使用 Ruby on Rails 3 0 7 我想在运行时查找一些记录以进行验证 但为该查找方法传递 设置一个值 也就是说 在我的班级中 我有以下内容 class Group lt lt ActiveRecord Base valid
  • rspec 中的模拟方法链

    有一系列方法可以获得user目的 我试图模拟以下内容以返回user in my Factory Girl current user AuthorizeApiRequest call request headers result 我可以模拟该

随机推荐

  • 百分号 (%) 在 Objective C 中的数学作用是什么?

    我非常困惑百分号在 Objective C 中的作用 有人能用像我这样的普通白痴能理解的语言向我解释吗 谢谢 是模运算符 因此例如 10 3 将得到 1 如果你有一些数字a and b a b只给你剩下的a除以b 所以在例子中10 3 10
  • 如何判断当前TD是否是TR中最后一个TD

    我有单行和多行 td 就在里面 在我的一个职能中 我遇到了一种情况 我必须找出我的currentSelectedTD是最后一个 td 放在行中 以便我可以以不同的方式对待它 I tried currentSelectedTD is last
  • Html 文本悬停在每个单词上进行翻译

    您好 我有一个 HTML 页面 其中包含文本正文 我希望能够将鼠标悬停在文本中的单词上 然后一小朵云显示文本中该单词的翻译 知道我该怎么做吗 我将提供我需要知道哪种是在悬停时将每个单词从文本中分离出来的最佳方法 并使用单词或翻译列表进行检查
  • 如何在 ConstraintLayout 中显示 GoogleMap?

    我创建了一个新项目 MapsActivity 我从 Google 获取了 API 密钥 并将 API 密钥放置在 YOUR KEY HERE 区域内的 google maps API xml debug 中 我在 AndroidManife
  • 泛型方法的可重用非泛型方法

    我有以下基本界面 public interface IHandler void Handle IMessage message 以及继承基接口的通用接口 public interface IHandler
  • 基于 OpenID 的 SSO 和 WSO2 身份服务器

    无法使用 WSO2 身份服务器获得基于 OpenID 的 SSO 我关注了 Suresh Aththanayaka 给出的博客文章 但是进入后https localhost 9443 openid admin作为您的 OpenID 标识符
  • PHP 类中的错误处理

    嘿 这里有个问题要问你们 我有很多次为 PHP 中的类选择错误处理 例如 在 Ajax PHP 处理类中 我这样做 public function setError msg this gt errors msg public functio
  • ASP.net 必需字段验证器 VisualStudio 2012

    我正在使用 ASP net c 开发一个项目 我希望RequiredFieldValidator 检查我的文本框 我正在添加验证器 它在 Visual Studio 2010 中工作得很好 但是一旦我做了同样的事情 完全相同的事情 它就无法
  • 整数比较值的输出错误

    我有以下代码 public static void doIntCompareProcess int a 100 int b 100 Integer c 200 Integer d 200 int f 20000 int e 20000 Sy
  • 如何创建波浪形状 CSS?

    请参阅下图了解我正在尝试创建的内容 到目前为止 我有以下内容 但它需要更加 频繁 例如增加正弦波或余弦波的频率 wave position relative height 70px width 600px background e0efe3
  • SwiftUI 可从 NavigationView 向下搜索多个视图?

    我遇到了相关问题 searchable我想知道它是否与我的应用程序的视图层次结构有关 我可以找到的使用 Searchable 的示例说直接在 NavigationView 上使用它 并像这样显示它 var body some View Na
  • 如何对 React 组件的 shouldComponentUpdate 方法进行单元测试

    我有一个 React 组件 它实现了应该组件更新 https facebook github io react docs react component html shouldcomponentupdate方法 我想对其进行单元测试 理想情
  • Vapor 3 - 如何在保存对象之前检查类似的电子邮件

    我想创建一条路线来让用户更新他们的数据 例如更改他们的电子邮件或用户名 为了确保用户不能使用与其他用户相同的用户名 我想检查数据库中是否已存在具有相同用户名的用户 我已经使用户名在迁移中唯一 我有一个如下所示的用户模型 struct Use
  • Three.jsmaterialLoader不加载嵌入的纹理图像

    我使用 Material toJSON 提供的方法导出 Three js 材质 结果如下 metadata version 4 5 type Material generator Material toJSON uuid 8E6F9A32
  • Task.ContinueWith 没有按照我的预期工作

    考虑以下代码 我从一个不执行任何操作的任务开始 然后使用ContinueWith 启动对递增计数器的方法的10 次调用 当我运行这个程序时 它打印 0 表明increment 方法根本没有被调用 我预计它会被调用 10 次 因为这就是我调用
  • 从 Excel 粘贴到 WPF DataGrid

    我有一个 DataGrid 称为 TheGrid 我想在其上实现复制和粘贴功能 复制功能很好用 但我不知道如何实现粘贴 我只需要从剪贴板获取数据并自己解析吗 命令绑定
  • 奇怪的 Firefox 溢出/浮动行为

    我有一个简单的布局 http 195 228 155 116 szilk public templates globallog bemutatkozas html它在 Chrome Safari 甚至 Opera OS X 中运行良好 让我
  • Terraform 无法使用 Amazon EC2 导入密钥对

    使用 Terraform 0 7 7 我有一个简单的 Terraform 文件 其中包含以下内容 provider aws access key var access key secret key var secret key region
  • 当我在本地运行 CoreNLP 时,为什么“corenlp.run”会产生不同的结果?

    网站corenlp run http corenlp run它应该是 CoreNLP 演示站点 显示的结果与我在本地计算机上运行 CoreNLP 管道时的结果截然不同 网站上确实显示了正确的结果 而本地机版本却没有 我想知道是否有任何接近
  • 启动 Rails 应用程序,从本地网络外部向应用程序发出请求

    我确信这是一个非常基本的问题 但我找不到答案 我已经看过了这个问题 https stackoverflow com questions 13853936 cannot assign requested address bind2 errno