使用调试扩展 /开发人员模式足够的保护
-
16-10-2019 - |
题
对于Magento开发人员来说,您通常不想在实时系统上拥有一些不错的扩展。
您如何将它们保存在项目存储库中,但要避免将它们暴露在现场店里?
其他提示
通常可以使用配置标志方便地禁用这些功能,因此它们在技术上是活跃的,但没有做任何事情。如果将此标志设置为false app/etc/local.xml
在您的现场系统中,您应该没事的。
看 Magetrashapp 这是最近在柏林的Magento Hackathon创建的。允许您通过管理面板去激活模块。
一种简单的方法是,在 /etc /eetc /模块中禁用模块,推动它,忽略本地文件并再次启用文件。
我认为处理此问题的最佳方法是将所有这些模块保留在本地Codepool中,并禁用您local.xml中的所有本地模块:xml:xml:
<disable_local_modules>true</disable_local_modules>
或者,您可以在实时环境中的后端进行“禁用模块输出”。 (系统 - >配置 - >高级)。但是,这并不能完全禁用模块。但是也许您想隐藏它已经足够了。
我唯一能想到的是编写一些可以实现这一目标的代码。只需检查是否处于开发人员模式(Mage::getIsDeveloperMode()
)然后禁用模块。我在此处找到了有关实现这一目标的更多细节: https://stackoverflow.com/questions/6520634/magento-how-to-disable-module-programathication
我通常只是将它们放入我的测试环境中,但不要将它们检查到版本控制系统中,例如使用 .gitignore
申请将其排除在被考虑的情况下。
埃里克·汉森(Erik Hansen)在2011年会议上有一个幻灯片。他在幻灯片中陈述了一个代码,如下(对于开发人员模式)
# File : index.php
if(preg_match('/^stage\.|\.dev$/', $_SERVER['HTTP_HOST'])) {
$_SERVER['MAGE_IS_DEVELOPER_MODE'] = true;
}
这是,Erik启用了基于子域的设置,您可以自己自定义它。