本教程将指导你如何配置坦克 PWA3 虚拟机配置文件,以便通过 HTTP 代理将用户请求转发到后端的 Gogs 应用。我们将重点配置四个关键参数:域名、端口、瞄准路径和后端地址。
首先,进入坦克 PWA3 安装目录,例如 tank-pwa3\虚拟机\
复制现有的 虚拟机样本.tconf
文件,并将其重命名为适合你的网站的名字,例如 gogs.shos.tconf
。
cd ./tank-pwa3/虚拟机/
cp 虚拟机样本.tconf gogs.shos.tconf
# 如果在 Windows 系统,直接按 Ctrl + C ,再按 Ctrl + V 复制。然后重命名 gogs.shos.tconf
打开 gogs.shos.tconf
文件,按照以下步骤进行修改:
gogs.shos
作为域名。域名=「gogs.shos」
端口=80
/
,表示所有请求都会被代理到后端服务器。瞄准路径=/
127.0.0.1:3000
。后端地址=http://127.0.0.1:3000
gogs.shos.tconf
),,=《{》}#“"”"
# Gogs 代理配置文件
域名=「gogs.shos」
端口=80
!访问控制=访问控制一
# 默认页面,直接输入域名而没有指定文件名的时候,会显示默认页面
!默认页=「index.html」
# 如果虚拟机需要指定程序目录,则删除注释。
!程序目录=/home/用户名/applications/test.shos
# 如果你使用http访问这个域名,会跳转到https安全协议。如果你需要这个功能,在下面这行文字删除!号。
!重定向到HTTPS
# 坦克AW 开启 https 访问需要把前面的 ! 删除。删除后就可以通过 https 服务虚拟机。证书保存在《生产环境.tconf》配置文件的 虚拟机《HTTPS证书目录》指定的目录里面。如果你不需要这个 https 功能,可以在下面这行添加一个!号注释它。
# 即使删除!号,只表示这个虚拟机支持 https 协议,但它还没有证书。如果需要证书,还需要签发证书,签发证书证书有两种方式:第一种是 自己签发证书 ; 第二种是: 自动签发证书。
!HTTPS证书《
# 支持自己签发HTTPS证书,这个证书的CA根证书也是软件自己签发,如果你的项目必须使用https访问,但是又没有https证书,可以使用自己签发的https证书作为临时解决方案。自己签发的https证书由于没有得到第三方认同,它是有局限性的,并不能满足所有功能,但其可以提高一定程度的安全性。如果需要使用这个功能,把下面这行文字的!号删除。自签证书保存在《生产环境.tconf》配置文件的 虚拟机《HTTPS证书目录》指定的目录。
# 自己签发的证书,不受浏览器承认,浏览器会提示证书不信任。
!自己签发证书
# 注册邮箱用于接收 HTTPS证书 相关通知,比如:过期通知、更新通知等。
自动签发证书注册邮箱=xxx@xxx.xx
# 自动签发证书使用 ACME 协议自动获取证书,获取证书的方式有:
# 1. DNS 认证方式
# 1.1 DNS供应商 AWS Route53
!自动签发证书《
区域="xxx"
访问ID="xxx"
访问密钥="xxx"
》
# 证书目录默认等于《生产环境.tconf》配置文件的 虚拟机《HTTPS证书目录》。如果需要自己设置,可以删除前面的!号,然后配置自己HTTPS证书路径。注意:如果你使用自签功能,则自签证书保存在《生产环境.tconf》配置文件的 虚拟机《HTTPS证书目录》指定的目录。
# 如果你使用第三方CA机构的https证书,一种推荐的做法是把自签功能关闭,先在《生产环境.tconf》配置文件的 虚拟机《HTTPS证书目录》里面创建一个与域名一样的文件夹,然后把你的https证书复制到域名文件夹里面。然后在下面配置。
!证书=虚拟机/HTTPS证书/你的证书目录/你的证书
!私钥=虚拟机/HTTPS证书/你的证书目录/你的证书key
》
后端服务器代理《
瞄准路径=/
# 后端地址支持两种类型
# fcgi:// 表示后端是FastCGI接口后端,比如 PHP 程序。
# http:// 表示是http协议后端,比如普通 web 程序。
后端地址=http://127.0.0.1:3000
# 代理文件扩展名,不用加点。* (星号表示所有类型的文件)目前支持:
# php
!只代理文件类型=「php」
》
确保后端服务器代理
前面没有叹号后,可以保存配置文件。
确保所有的更改都保存好之后,重启你的服务器以应用新的配置。
# Windows 系统直接关闭坦克 PWA3,然后重启。
# 对于 Linux 系统
# sudo systemctl restart tank-pwa3.service
打开浏览器,访问你配置的域名(例如 http://gogs.shos),检查是否正确代理到了 Gogs 应用。如果一切正常,你应该能够看到 Gogs 的登录界面或其他初始页面。
通过以上步骤,你已经成功地配置了一个简单的 HTTP 代理,将用户请求从指定域名转发到后端的 Gogs 应用。这个配置只需要关注域名、端口、瞄准路径和后端地址这四个核心参数,适用于大多数需要简单代理的情况。