如何在本地网络上托管 jekyll,以便多人可以访问它?

时间:2021-05-03 09:38:42

标签: localhost jekyll local-network jekyll-theme

我正在使用 Jekyll 为我自己的博客制作一个静态网站,该网站完全用 Android 手机编码。使用 Termux,我可以从我的 Android 设备设置和提供 jekyll。

但是在本地为站点提供服务时,它是从本地主机 IP (http://127.0.0.1:3000) 提供服务的!我想在我的本地网络 IP (http://192.168.x.x:3000) 上为网站提供服务。我通过 $ ifconfig 命令获取我的 IP 地址。

但是我怎么能在本地网络 IP 中为站点提供服务。这样,我和我本地网络中的其他设备也可以通过链接访问该站点。

1 个答案:

答案 0 :(得分:0)

说明:

在启动 Jekyll Server 时,我们还可以设置一些选项来配置开发环境下站点的 IP 地址和端口号,以便在本地网络中托管网站。因此,如果我们想将 IP 从 http://127.0.0.1:4000 更改为 http://192.168.x.x:4000(x= 0 到 255 任意一个数字),我们可以在 Jekyll 服务器命令中进行设置!但是为此,我们需要在当前网络中找出我们当前的 IP 地址,这将有助于我们在本地网络中为网站提供服务。

所以第一步:

我们将在 PC 上打开终端。对于安卓用户,我们需要打开 Termux 应用程序。然后只需键入 ifconfig 即可获取我们设备在当前网络中的 IP 地址。我们将得到这样的输出(这里我使用 Android 设备进行开发。因此输出可能与您 PC 终端上的输出有所不同,但过程相同):

$ ifconfig
Warning: cannot open /proc/net/dev (Permission denied). Limited output.
lo: flags=XX<UP,LOOPBACK,RUNNING>  mtu XXXXX
    inet 127.0.0.1  netmask 255.XXX.XXX.XXX
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen XXXX  (UNSPEC)
wlan0: flags=XXXX<UP,BROADCAST,RUNNING,MULTICAST>  mtu XXXX
    inet 192.168.1.103  netmask 255.XXX.XXX.XXX  broadcast 192.168.1.255
    unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen XXXX  (UNSPEC)

X= some numbers with our device credentials which is dummied with this variable

如果您使用的是 WiFi 路由器,那么我们将需要 wlan0 部分来获取我们的设备 IP。在 wlan0 部分下有一个 inet 子部分显示我们当前的 IP! 是的,我们需要那个IP地址192.168.1.103!这可能因您的设备和网络而异。这是这次任务的关键!现在我们将进入第二个重要步骤。

所以第二步是:

需要输入命令来配置 IP 地址。

jekyll s -H 192.168.1.103 -P 8080

这里:

  1. jekyll s 用于 jekyll 服务器
  2. -H 192.168.1.103 用于出价 IP 地址以根据默认 IP http://127.0.0.1(即我们的本地主机地址)进行自定义。
  3. -P 8080 用于端口设置。 这部分是可选的。默认端口为 4000

这是将 localhost IP (http://127.0.0.1) 更改为本地网络 IP 的过程,该 IP 可供同一网络用户的其他设备使用。

现在我们的 Jekyll 可以在我们的本地网络中使用了!同一网络中的其他用户也可以在服务器命令运行时访问该网站。如果您还配置了端口号,链接将是 http://192.168.1.103:8080。否则,如果您在没有配置端口的情况下使用了命令 jekyll s -H 192.168.1.103,则链接将是:http://192.168.1.103:4000

再次重申: 192.168.1.103 是针对我的情况,您的设备的 IP 地址会有所不同。这将需要用于您的服务器和链接地址。

相关问题