【问题标题】:Local Silverstripe instance site pointing to live site for assets指向资产活动站点的本地 Silverstripe 实例站点
【发布时间】:2014-10-22 00:40:25
【问题描述】:

我有一个 Silverstripe 实例,我们从我们托管的网络服务器上复制了它。我们试图让它在本地运行,以便我们可以修改它,但是当我在本地运行它时,所有资产都指向实时站点。我也无法访问 CMS 的登录或管理页面。

当我尝试访问任何本地页面时,它会在页面内容中显示“服务器错误”

代码中是否有一个地方可以将资产的路径更改为本地,并且还可以访问管理区域?

【问题讨论】:

    标签: silverstripe


    【解决方案1】:

    假设您正在运行数据库的本地副本,并且对 File 的处理方式没有任何异常更改,SilverStripe 应该使用 BASE_PATH 和 BASE_URL 常量解析文件路径。

    为了登录,您需要在本地添加到 mysite/_config.php 的底部,例如:

        define('SS_ENVIRONMENT_TYPE', 'dev');
        SSViewer::set_source_file_comments(true);
        ini_set('display_errors', 0);
        error_reporting(E_ALL);
    
        Security::setDefaultAdmin('admin', 'admin');
        // Email::setAdminEmail('admin@example.org');
        define('SS_LOG_FILE',dirname(__FILE__).'/'.basename(dirname(dirname(__FILE__))).'.log');
        ini_set('error_log', SS_LOG_FILE);
    
        Director::set_environment_type('dev');
    

    这应该为您提供足够的调试信息来解决大多数问题。

    【讨论】:

    • 谢谢伙计,只是为了确认有问题的 _config.php 文件。这是 cms 文件夹中的那个吗?
    • 您需要将 sn-p 添加到 mysite/_config.php 文件的底部。我已经在答案中澄清了这一点。
    • 谢谢你顺便说一句,SS_LOG_FILE 后面有一个双逗号。我试图自己编辑它,但无法保存我的编辑
    • 谢谢伙计,我仍然遇到错误,但我现在可以在本地访问所有页面。干杯
    【解决方案2】:

    我会使用https://interconnectit.com/products/search-and-replace-for-wordpress-databases/(也适用于 Silverstripe)之类的东西来搜索和替换所有出现的旧域。

    这当然主要适用于内容字段内部的图像路径。否则,SS 应该自动转换路径,正如接受的答案所暗示的那样。

    【讨论】:

      猜你喜欢
      • 2015-08-06
      • 1970-01-01
      • 2017-09-13
      • 2017-09-03
      • 1970-01-01
      • 2016-03-07
      • 1970-01-01
      • 2017-02-22
      • 2017-10-17
      相关资源
      最近更新 更多