启动 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 应用程序,从本地网络外部向应用程序发出请求 的相关文章

  • 多重要求和允许强参数rails 4

    在下面的情况下 我尝试使用强参数 我想要求email address password并允许remember me fields 但像下面这样使用它只允许最后一行在方法示例中 在下面的情况下 它只需要params permit rememb
  • Ruby on Rails:如何使用 TCP 套接字连接 GPS 设备

    ruby 2 3 0p0 2015 12 25 修订版 53290 x86 64 linux 轨道 4 2 4 我正在使用 cloud9 IDE 和 webrick 服务器 我的项目是实时跟踪GPS 我想使用TCP连接与GPS跟踪设备进行通
  • 使用 attr_accessor 动态创建类属性

    在Ruby中 有没有办法动态地将实例变量添加到类中 例如 class MyClass def initialize create attribute name end def create attribute name attr acces
  • Rails:named_scope、lambda 和块

    我认为以下两个是等效的 named scope admin lambda company id conditions gt company id company id named scope admin lambda do company
  • Nokogiri 保持 HTML 实体不变

    我希望 Nokogiri 保持 HTML 实体不变 但它似乎正在将实体转换为实际的符号 例如 Nokogiri HTML fragment p reg p to s 结果是 p p 似乎没有什么可以将原始 HTML 返回给我 inner h
  • 即使在急切加载之后,belongs_to 关联也会单独加载

    我有以下关联 class Picture lt ActiveRecord Base belongs to user end class User lt ActiveRecord Base has many pictures end 在我的
  • 通过 Telnet 运行应用程序

    我需要创建一个 BAT 文件来通过 telnet 运行应用程序 但据我所知 在 DOS 上无法执行此操作 Telnet 不允许在连接的瞬间向远程计算机发送任何命令 并且 BAT 文件中的每个后续命令只有在 telnet 停止后才会执行 这段
  • 互联网 RFC 数据包图中预期的位(不是字节)顺序是哪个

    我正在我的家庭有线网络上解析 ICMPv6 数据报 但在特定 RFC 中找不到对位排序约定的明确提及 多字节字段是网络顺序的 但是字节内的位又如何呢 机器是按字节寻址的 但网络硬件对位进行序列化 在图表中 8 位字段 左侧 的一位最终位于无
  • 获取嵌套参数

    我有一个带有嵌套参数的表单 在下面的示例中 如何获取控制器中的 amount whole 值 Parameters utf8 gt authenticity token gt KCmBI6RLh0LdUsM2r5H1vhNykS1IXecF
  • Rails 4 应用程序...在开发环境中,除非刷新页面,否则 javascript 不会触发

    所以我的第一个rails4应用程序遇到了一个奇怪的问题 除非我重新加载页面 否则我的页面javascript不会触发 对于我的 asset pipeline JS 和 content for JS 来说都是如此 在我的 assets jav
  • 使用 rspec 测试嵌套路由

    我正在尝试使用 rspec 测试路由 以下给出了 预期块返回真值 的错误 我不确定我错过了什么 通过浏览器我可以发布到这个网址并且成功 有任何想法吗 谢谢 Routes resources forum topics do resources
  • Windows 7 x64 上的 Ruby on Rails SQLite 问题

    当我尝试做的时候db create使用 Windows 7 x64 在具有此数据库配置的 sqlite 数据库上 development adapter sqlite3 database db development sqlite3 tim
  • 用户未定义的方法 attr_accessible 错误

    我正在尝试创建某种登录 我创建了一个用户脚手架并将此代码放在我的 user rb 中 class User lt ActiveRecord Base attr accessible name password digest password
  • 我无法让 ruby​​ 开发工具包适用于 Windows XP

    所以 我一生都无法让它正常工作 我的最终目标是安装 dbd odbc gem 并使其正常工作 从我读过的多篇文章来看 我需要安装ODBC 绑定 http www ch werner de rubyodbc 对于 ruby 以及 dbd od
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 红宝石接球和效率

    catch在 Ruby 中意味着跳出深度嵌套的代码 在 Java 中 例如用Java也可以达到同样的效果try catch用于处理异常 但它被认为是糟糕的解决方案 而且效率非常低 在 Ruby 中 我们有处理异常的方法begin raise
  • 为什么 h_addr_list (在 hostent 结构中)类型为 char** 而不是 void*?

    我试图找出一段构建 hostent 对象的代码 更具体地说 它的工作部分是填充 h addr list 数组 我对分配到数组中的值被强制转换为这一事实感到困惑char 据我所知 这个数组与字符串无关 我注意到h addr list数组实际上
  • 让 Rails 生产在端口 80 上运行

    我正在尝试让我的 Rails 应用程序在生产模式下运行 但遇到了一些困难 我正在使用 Passenger 和 apache 并运行 Ubuntu 12 04 我已经配置和创建了生产数据库 并设置了乘客 状态如下 rvmsudo passen
  • Ruby 中的 url_encode

    I read 的文档url encode http rdoc info stdlib erb 1 9 3 ERB Util 3Aurl encode 是否有一个表可以准确地告诉我哪个字符被编码为什么 使用url encode ERB s u

随机推荐

  • 百分号 (%) 在 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