我有运行Debian 9的VPS,Keter为单个Web应用程序提供服务。

我已经使用Create certificate选项卡的Origin Certificates部分中的Crypto按钮生成了证书。

然后,我编辑了我的keter.yaml

stanzas:
  - type: webapp

    exec: ../dist/bin/dummy-name
    args: []
    hosts:
      - dummy-domain.info


    ssl:
      key: /opt/keter/etc/cert/dummy-domain.info.key
      certificate: /opt/keter/etc/cert/dummy-domain.info.pem


还有一句话:

    # Enable to force Keter to redirect to https
    # Can be added to any stanza
    # requires-secure: true


当我上传了新的捆绑软件后,看来事情无法正常进行。可以通过HTTP(按预期方式工作)和HTTPS来访问我的网站,但无法加载静态生成的CSS和JS文件(文档中插入的链接具有http方案)。

要使用安全的HTTPS连接使一切正常工作,我还应该怎么做?

keter有不清楚的选项:

  # for all stanzas
  requires-secure: true

  # stanza based
  host: ....
  secure: true



另外我也不知道我应该在CloudFlare上使用哪些选项

SSL type now set to Flexible
Always Use HTTPS is OFF

最佳答案

好的,最后我完成了以下操作:

应用程序的keter.yml

stanzas:
  - type: webapp
    exec: ../dist/bin/dummy-name
    args: []
    hosts:
      - dummy-domain.info
    requires-secure: true
    ssl:
      key: /opt/keter/etc/cert/dummy-domain.info.key
      certificate: /opt/keter/etc/cert/dummy-domain.info.pem


服务器keter-config.yaml上的Keter配置

root: ..
#
# # Keter can listen on multiple ports for incoming connections. These ports can
# # have HTTPS either enabled or disabled.
listeners:
    # HTTP
        - host: "*4" # Listen on all IPv4 hosts
          port: 80 # Could be used to modify port
    # HTTPS
        - host: "*4"
          port: 443
          key: cert/dummy-domain.info.key
          certificate: cert/dummy-domain.info.pem


CloudFlare配置:

SSL类型现在设置为Full
始终使用HTTPS为ON

我也重新启动了Keter服务
sudo service keter restart

现在一切都按预期进行。

07-27 22:41