在Contao 3.5.9中
我已经上传到新服务器并使用原始安装中的其他域.我也在使用https://
所有需要的资源都没有被加载,因为系统的基本URL设置为http://它使用基本URL中的正确域名,但协议错误.
我无法登录管理员.
我搜索了谷歌(没有太多关于Contao的信息),发现了这个:http://blog.qzminski.com/article/move-the-contao-to-another-server.html
阅读它,似乎基本URL是在管理员中设置的,这意味着它可以在数据库的某个地方找到.
我搜索了数据库转储但找不到它.
如何更改基本URL的协议?
Contao使用以下内容来确定当前请求是否通过SSL完成» \Environment::get('ssl'):
/**
* Return true if the current page was requested via an SSL connection
*
* @return boolean True if SSL is enabled
*/
protected static function ssl()
{
return ($_SERVER['SSL_SESSION_ID'] || $_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1);
}
Run Code Online (Sandbox Code Playgroud)
您的服务器环境可能未设置这些$_SERVER全局变量.例如,如果您使用SSL代理,则可能出现这种情况.
如果是这种情况,那么您可以通过插入来扩展SSL检测
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && 'https' === $_SERVER['HTTP_X_FORWARDED_PROTO'])
{
$_SERVER['HTTPS'] = 1;
}
Run Code Online (Sandbox Code Playgroud)
进入你的/system/config/initconfig.php.例如,请参阅https://github.com/contao/core/issues/7542 (仅限德语).
| 归档时间: |
|
| 查看次数: |
1835 次 |
| 最近记录: |