如何将 aws Lightsail 用于我的 React 构建
How to use aws Lightsail for my react build
我正在尝试使用 lightsail 托管网站。
它几乎可以正常工作,但我必须写 example.com:5000 但我不知道如何删除它:5000。
我使用 npm 运行 build 来创建一个文件,我使用 pm2 在此端口上自动提供它。
由于您使用 PM2 为 React 应用程序提供服务,您可以通过执行以下操作直接在端口 80 中提供服务:
- 连接到您的服务器(注意:只有 root 可以绑定小于 1024 的端口,所以我们将使用 authbind,它允许非 root 用户绑定此端口)
- 通过执行以下命令使用
authbind
绑定80端口:
sudo apt-get install authbind
安装 authbind 包
sudo touch /etc/authbind/byport/80
创建一个"binding file"绑定80端口
sudo chown YOUR-USER /etc/authbind/byport/80
让您的用户成为该文件的所有者(确保将 YOUR-USER 替换为您的用户名)
chmod 755 /etc/authbind/byport/80
设置该文件的访问权限
- 使用
authbind --deep pm2
启动应用程序
您可以通过官方 PM2 文档查看有关这些步骤的更多信息:https://pm2.keymetrics.io/docs/usage/specifics/
此外,如果您只是为 React 应用程序提供服务,则可以使用 S3 来托管它,因为它非常便宜,并且可以为您提供诸如 CDN 和其他功能之类的优势。如果您这样做,只需确保在您的 S3 存储桶中启用 CORS。
我正在尝试使用 lightsail 托管网站。 它几乎可以正常工作,但我必须写 example.com:5000 但我不知道如何删除它:5000。 我使用 npm 运行 build 来创建一个文件,我使用 pm2 在此端口上自动提供它。
由于您使用 PM2 为 React 应用程序提供服务,您可以通过执行以下操作直接在端口 80 中提供服务:
- 连接到您的服务器(注意:只有 root 可以绑定小于 1024 的端口,所以我们将使用 authbind,它允许非 root 用户绑定此端口)
- 通过执行以下命令使用
authbind
绑定80端口:
sudo apt-get install authbind
安装 authbind 包
sudo touch /etc/authbind/byport/80
创建一个"binding file"绑定80端口
sudo chown YOUR-USER /etc/authbind/byport/80
让您的用户成为该文件的所有者(确保将 YOUR-USER 替换为您的用户名)
chmod 755 /etc/authbind/byport/80
设置该文件的访问权限
- 使用
authbind --deep pm2
启动应用程序
您可以通过官方 PM2 文档查看有关这些步骤的更多信息:https://pm2.keymetrics.io/docs/usage/specifics/
此外,如果您只是为 React 应用程序提供服务,则可以使用 S3 来托管它,因为它非常便宜,并且可以为您提供诸如 CDN 和其他功能之类的优势。如果您这样做,只需确保在您的 S3 存储桶中启用 CORS。