首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在外部网络上主办世博会应用?

在外部网络上主办世博会应用?
EN

Stack Overflow用户
提问于 2018-03-06 07:42:37
回答 1查看 5.9K关注 0票数 4

我正在用create-react-native-app为一家公司编写一个应用程序。最终,它可能会投入生产,但出于研究原因,我需要一个可以轻松部署到同事手机(安卓和iOS)上的工作原型。

由于知识产权,我不允许发表在任何外部托管平台(谷歌游戏,应用商店,世博主办,等等)。不过,我确实可以访问可以在公司内部网之外进行通信的内部服务器。

有鉴于此,我想知道是否有可能运行由npm start生成的本地博览服务器,使其能够接受外部连接(即通过端口转发、代理或虚拟专用网)。

密码安全将是理想的,但只要保密,如果这是唯一的选择。Ofc将属于网络安全的各自的答案。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-07 15:27:19

以这种方式运行开发服务器是可能的。您可能希望使用世博会CLI启动服务器,因为它允许调整更多选项(无论如何,它与CRNA启动相同的XDL服务器)。

对于内部测试,您可以使用exp start --no-dev --minify --offline --non-interactive启动服务器。

  • --no-dev--minify告诉服务器提供一个小型化的生产包,而不是开发包。
  • --offline允许服务器运行,而无需登录博览帐户(如果您在服务器上运行此帐户,则非常有用)
  • 如果需要输入,--non-interactive会使命令失败。

您需要在服务器上有两个可公开访问的端口:一个用于XDL服务器,另一个用于Metro bundler。可以通过在项目目录中创建具有以下内容的.exprc文件来设置XDL端口:

代码语言:javascript
运行
复制
{ "manifestPort": <XDL server port> }

您可以通过在app.json文件中添加以下内容来设置Metro端口:

代码语言:javascript
运行
复制
{"expo": {"packagerOpts": { "port": <Metro port> }}}

使用代理

如果您想在服务器前面运行代理(如NGINX)来控制对它的访问或启用HTTPS,您可以使用这些环境变量告诉exp有关您的代理的可公开访问的URL:

代码语言:javascript
运行
复制
export EXPO_MANIFEST_PROXY_URL="https://your-public-url-for-xdl.example.com"
export EXPO_PACKAGER_PROXY_URL="https://your-public-url-for-metro.example.com"

然后,世博会客户端可以从exp://your-public-url-for-xdl.example.com:443上打开应用程序。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49125697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档