本地开发,通过网页展示给客户端

本地开发,通过网页展示给客户端

我正在尝试找出向客户展示我为他们所做的工作的最佳方式,而无需在生产服务器上设置其他环境等。

⠀ 有没有好的方法可以将我的本地开发环境公开到网络上供他们查看?
⠀ 还有其他“最佳实践”吗?

答案1

我首先假设以下情况:

  • 您有一个在开发系统上运行的 Web 服务器(而不仅仅是本地文件系统上的静态 HTML)。
    • 该 Web 服务器正在监听外部接口(相对于仅有环回)。
  • 有一个面向公众的 Apache Web 服务器可供您配置。
    • 面向公众的 Web 服务器能够与您的开发系统建立 TCP 连接。

如果以上所有情况均为真(或者您可以使它们为真),那么您应该能够使用反向代理。

为了避免 URL 重写,我通常会设置一个指向具有唯一名称 (dev.example.com) 的公共 Web 服务器的 DNS 记录,然后设置虚拟托管反向代理。以下是指向 IP 地址为 10.0.0.42 的内部开发系统的 dev.example.com 的最小 Apache 配置:

<VirtualHost *:80>
    ServerAdmin [email protected]

    ServerName dev.example.com
    ServerAlias dev

    DefaultType none

    ProxyPass / http://10.0.0.42/
    ProxyPassReverse / http://10.0.0.42/
</VirtualHost>

您需要确保 mod_proxy 已启用。请参阅 Apache 的mod_proxy文档以了解更多详细信息。

答案2

最简单的方法是将系统置于防火墙和代理后面,最好将其置于虚拟机中。然后仅转发服务器正在监听的端口。

答案3

您还需要(除了本地 http 服务器之外)一个静态 IP 或动态 IP,以及一个服务,以便在您的 IP 发生变化时更新 NSF。并且您需要一个指向您 IP 的域名。因此,您需要一对名称服务器,或者租用一个名称服务器。您问的其实是一个相当复杂的问题,特别是如果您开始考虑 https 或类似的东西。我认为租用主机并设置好服务要容易得多。

答案4

我转而使用 Local by Flywheel 进行开发。它非常适合我当前的流程。

相关内容