Day10 - 如何用手机连 Ruby on Rails Local 开发中的专案

前言

在开发时,除了用 Chrome 开发者工具切成不同尺寸确认外,若想在手机上操作的话...

说明

1. 首先,电脑和手机都要在同区域网路 LAN (白话意思就是连同个 Wi-Fi)

2. 电脑的 rails server 要启动着,输入以下

# 若想用别的 port 则把 4000 改掉

rails s -p 4000 -b 0.0.0.0

3. 查询电脑的区域网路的 IP 位址

Mac 查询方式

方法1

在终端机输入 ipconfig getifaddr en0,便会回传 IP 位址

方法2

Windows 查询方式

方法1

在「命令提示字元」(cmd) 中,输入 ipconfig /all ,找到「IPv4 位址」

方法2

4. 手机输入网址

# 假设电脑的区域网路 IP 是 192.168.1.52

http://192.168.1.52:4000/

以上便大功告成,可以用手机连 Local 专案了


若 routes 有设定特定 (constraints) 的 subdomain 才能连线的话,可以透过 nip.io 或 xip.io ...等 DNS services 处理,网址改输入以下

# 无指定 subdomain
http://192.168.1.52.nip.io:4000/

# 指定 subdomain
http://river.192.168.1.52.nip.io:4000/

---

# 都是指向 192.168.1.52
        192.168.1.52.nip.io   resolves to   192.168.1.52
    www.192.168.1.52.nip.io   resolves to   192.168.1.52
 mysite.192.168.1.52.nip.io   resolves to   192.168.1.52
foo.bar.192.168.1.52.nip.io   resolves to   192.168.1.52
        192.168.1.52.nip.io   resolves to   192.168.1.52

小结

在 Rails 6 以上,若遇到 Blocked host ,照着错误讯息提示跟着做便可解决,若都不验证的话,直接加 config.hosts.clear 即可。

也可以使用 ngrok 来实现同样的目的

# config/environments/development.rb

Rails.application.configure do
  # 增加特定白名单
  config.hosts << "river.192.168.1.52.nip.io"

  # 都不挡 
  config.hosts.clear
end

# 改完 config 的档案,railse server 要重启


参考资料

  1. How to connect to a localhost Rails site via mobile device locally?
  2. 第十七天:怎麽让别人连到我作好的网站?
  3. XIP.IO: a magic domain name that provides wildcard DNS for any IP address

铁人赛文章连结:https://ithelp.ithome.com.tw/articles/10264598
medium 文章连结:https://link.medium.com/wiiTrho2Mjb
本文同步发布於 小菜的 Blog https://riverye.com/

备注:之後文章修改更新,以个人部落格为主


<<:  Day 11. Money money Vue的$$哪里来-数据和方法

>>:  Day 11 我知道我甚麽都不知道

Day 0xF - Web ATM 内容?,测试模拟交易回传资讯

0x1 前言 昨天订单回覆有个 Web ATM URL 好吸引我,想去瞧一下里面长什麽样, 今天也把...

Day-03 Regression & Gradient Descent 介绍

我们昨天聊过了到底如何做机器学习,且也知道机器学习的核心概念是取得所谓的最佳 function,回...

[Day 27] - 『转职工作的Lessons learned』 - Cube.js(III)

今天要说在後端的Cube.js Server连线DB後,对DB的请求需要做什麽样的设置,也就是如何建...

[Android Studio 30天自我挑战] SeekBar元件介绍

这次介绍的SeekBar类似前面介绍的Progress Bar,但SeekBar有多一个拖曳的滑动杆...

24.unity对话处理(List与class)

今天要做的事情就是让系统可以分辨 哪段文字=角色,哪段文字=心情,哪段文字=对话内容! 进行文字标记...