Silverstripe 静态发布和HTTPS

Silverstripe 静态发布和HTTPS,silverstripe,Silverstripe,就这个问题: 我们已经从这个fork()实现了这个模块,它在本地运行得非常好。我们已经做了一些修改来实现我们自己的分类页面,但没有什么特别之处 现在唯一的问题是,当我们在本地使用https而不是http的服务器上进行测试时,一切都不起作用了。我一直在尝试将FileSystemPublisher.php文件中的一些内容更改为使用https而不是http,但它没有做任何事情 另一件事,它可能是链接的,当我进入我们子网站的管理后端时,编辑页面中的所有页面链接都是“http”,显然服务器上有https重

就这个问题:

我们已经从这个fork()实现了这个模块,它在本地运行得非常好。我们已经做了一些修改来实现我们自己的分类页面,但没有什么特别之处

现在唯一的问题是,当我们在本地使用https而不是http的服务器上进行测试时,一切都不起作用了。我一直在尝试将FileSystemPublisher.php文件中的一些内容更改为使用https而不是http,但它没有做任何事情

另一件事,它可能是链接的,当我进入我们子网站的管理后端时,编辑页面中的所有页面链接都是“http”,显然服务器上有https重定向

所以我想我有两个问题:

  • 如何使用https使静态发布队列工作

  • 如何让silverstripe理解所有的网站页面都应该是https而不是http,所以它在管理后端显示了这种方式


提前感谢。

子网站有一个名为
absoluteBaseURL()
的方法,因此您可以在
页面\u Controller::init()
中尝试此方法:


当然,您需要配置子网站的域,包括https

我遇到了同样的问题。解决此问题的唯一方法是在
\u config.php
文件中添加以下行:
Director::setBaseURL('https://www.example.com/');是的,我也想过这样做,但它不能与子网站一起工作,对吗?很好。我还没有尝试过使用子网站模块的静态publisher。它实际上可能符合您的想法,但我现在遇到的问题是页面已正确缓存,但它仍然通过http链接到css和js,因此它无效,有什么想法吗?谢谢,它起作用了。现在我有了一个新问题,但https问题已经解决:)作为参考,它需要:$currentsubite=subite::currentsubite();if($currentsubite)Director::setBaseURL($currentsubite->absoluteBaseURL());否则,您将出现错误500或管理面板。
$currentSubsite = Subsite::currentSubsite();

Director::setBaseURL($currentSubsite->absoluteBaseURL());