使用 Environment Indicator 模块区分不同的 Drupal 环境
每个 Drupal 网站建设人员到了某个时期,都会有误将线上站点当做本地站点进行修改的经历。尤其是在浏览器中打开了几十个页面时,很容易忘记究竟哪个是哪个。
Environment Indicator 模块为会在网站上显示一个带文本的色块,通过这个色块指示器和其上的文字使用我们可以很容易的对不同的环境进行区分(如本地、测试还是正式环境)。使用者可根据模块所提供的配置项,自行设置指示器的颜色、位置及其中的文本
文本将向你介绍两种创建指示器的方法:一种是通过 Environment Indicator 模块提供的管理界面,另一种是使用 settings.php 配置文件 。
准备工作
在开始使用前,需要先下载并启用 Environment Indicator 及 CTools 模块,如果会使用 Drush,可以很方便地通过以下两条命令完成下载及启用的工作
$ drush dl environment_indicator ctools
$ drush en environment_indicator
使用管理后台创建环境指示器
首先我们来看如何通过管理界面进行指示器的创建,这也是最简单的方法。
1、打开 Enviroment Indicator 配置页面并点击添加(如果不添加,也可以修改默认提供的指示器)

2、填写指示器的名称。在本例中,我们输入 Local 表示本地环境。如果要为测试环境创建指示器,则可以命名为 “development”。
在主机(hostname)字段,填写这个环境对应的主机名。在这个例子中,输入 d7.localhost。如果你正在对线上某个站点进行设置,其主机名可能是 dev.example.com

3、使用调色盘设置指示器的颜色,以及设置指示器上显示的文本

4、再往下,设置权重。当在主机名设置使用正则表达式时,这个权重值将用来决定顺序
5、最后,通过修改“位置”选项来确定指示器的显示位置。不过请注意,如果当前网站使用了 Toolbar 模块或 Admin Menu 模块时,指示器的效果会显示在工具栏上,此处的位置选项则不会有效果。
当完成以上所有设置后,点击“保存”即可。
对于默认安装的 Drupal网站,头部工具栏将会被用作环境指示器。

此时,看看网站的Favicon图标,会发现它被加上了一个小小的L。

使用代码创建指示器
创建指示器的另一种办法,便是通过 settings.php中的代码来进行。因为每个Drupal环境都会有settings.php文件,所以我更倾向使用这种方法。
打开settings.php文件,并通过以下代码对指示器的名称及颜色进行设置。
$conf['environment_indicator_overwritten_name'] = 'Local';
$conf['environment_indicator_overwritten_color'] = '#42b96a';
Configure Environment Indicator 7.x-2.x 文档中包含了可在 settings.php 文档中使用的变量列表。
小结
如果需要同时在多个环境中进行作业,Environment Indicator 将会非常实用。尽管这个模块无法阻止你将正式网站当做测试网站进行修改,但因为指示器的作用,起码能够更好的对所在的网站进行识别。
FAQ
Q:已经修改了指示器的颜色设置,为何指示器没变化?
有时因为缓存的原因颜色设置并不会马上生效,清空缓存后再试试。
Q:我希望非管理用户也可以看到这个指示器应该怎么做?
进入权限管理页面,为匿名用户分配”see environment indicator”权限后,匿名用户即可看到指示器了。
原文标题:使用 Environment Indicator 模块区分不同的 Drupal 环境
原文地址:http://drupalct.org/drupal-site-building/using-environment-indicator-module.html
使用 Environment Indicator 模块区分不同的 Drupal 环境的更多相关文章
- 在package.json里面的script设置环境变量,区分开发及生产环境。注意mac与windows的设置方式不一样
在package.json里面的script设置环境变量,区分开发及生产环境. 注意mac与windows的设置方式不一样. "scripts": { "publish- ...
- 微信小程序开发——前端如何区分小程序运行环境
前言: 之前用vue做h5项目,对于接口请求,都是根据前端访问域名来判断运行环境,然后自动适配对应的服务器地址的.这样的好处就是在开发.测试及发布上线全程都不需要手动去改接口请求地址,只要提前配置好就 ...
- JPush Android 推送如何区分开发、生产环境
我们 Android 开发者在使用极光推送时可能会发现,在通过官方控制台进行推送时.只有 iOS 区分了开发和生产环境,而 Android 则没有.但实际开发中又确实经常需要针对开发和生产环境分别来推 ...
- maven(多个模块)项目 部署 开发环境 问题处理历程【异常Name jdbc is not bound in this Context 异常java.lang.NoSuchMethodE】
maven(多个模块)项目 部署 开发环境 问题处理历程[异常Name jdbc is not bound in this Context 异常java.lang.NoSuchMethodE] 201 ...
- 用boost模块加速你的drupal站
boost模块可以对 html, xml, ajax, css, javascript进行缓存,极大提升游客访问的速度,几乎可以和静态页面媲美.下载boost http://drupal.org/p ...
- 7.安装pycharm----导入Nmap模块----netcat反向shell----metasploitable靶机环境
安装pycharm www.jetbrains.com/pycharm/ tar -zxvf p补全 ls cd p补全 ls cd bin ls ./pycharm.sh 新建项目 pythonRo ...
- Python 模块chardet安装过程(windows环境)
最近需要一个txt文件的批量转码功能,在网上找到一段批量处理java源文件的py程序如下: #-*- coding: utf-8 -*- import codecs import os import ...
- vue-cli3区分开发和生产环境
vue-cli3出来很久了,之前一直使用vue-cli2的配置,并且区分了生产和开发环境,自己的理解,环境分两大类,开发环境 和生产环境,最近升级到了vue-cli4当然改动并不大. 升级的主要原因嘛 ...
- Drupal常用的模块
CCK (Content Construction Kit ) : 添加字段模块 Views:生成列表 Tinymce:(Wysiwyg Editor) 常用的编辑器之一 Ajax Form Buil ...
随机推荐
- WPF拖到、移动控件
只需2个事件和一个point变量即可: Point mouse_offset = , ); void TC_MouseLeftButtonDown(object sender, MouseButton ...
- 调用wcf 得不到HttpWebResponse.ContentLength的长度
HttpWebRequest wreq = (HttpWebRequest)WebRequest.Create(strUrl); wreq.Timeout = _httpTimeout * ; wre ...
- MySQL数据库MyISAM和InnoDB存储引擎的比较
MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种.这里介绍关于这两种引擎的一些基本概念(非深入介绍). MyISAM是MySQL的默认存储引擎,基于传统的ISAM类型,支持全文搜索 ...
- bzoj4702: 装箱游戏
Description Alice和Bob正在玩一个非常无聊的游戏以打发时间.游戏是这样的.初始的时候,有n个箱子和m个物品.箱子.物 品都是不同的.因此有nm种方法把这些物品放到箱子里.两个人轮流操 ...
- php反射机制获取未知类的详细信息
使用ReflectionClass就可以获取未知类的详细信息 demo: require("hello.php"); $class = new ReflectionClass(&q ...
- 【转】一道SQL SERVER DateTime的试题
学习过上一篇SQL SERVER DateTime精度的文章后.再来做一道题. IF ('2011-07-31 00:00:00.000' BETWEEN '2011-07-01' and '2011 ...
- PHP 打印调用函数入口地址(堆栈)
今天网站出现一个BUG,然后直接在数据库类里面写日志,看是哪条SQL出了问题,SQL语句到是找到了,但是不知道这条SQL语句来自何处,于是就想啊,如果能有一个办法,查看当前正在运行的这个方法是被哪个方 ...
- 关于 ProcessEngines.getDefaultProcessEngine();NullPointException问题
查看ProcessEngines的源码发现默认加载的文件名为"activiti.cfg.xml" resources = classLoader.getResources(&quo ...
- SOA_环境安装系列3_Oracle Weblogic安装和环境搭建(案例)
2014-01-03 Created By BaoXinjian
- JAVA 文档注释,类的说明,HTML说明文档的生成
有的时候,我们会写一些类,编译成.class文件,给别人使用,那么,别人不知道这个类有哪些方法,如何调用. 所以我们需要做一个类的说明文档. 可以采用在.java类里面进行注释,通过注释来生成类的说明 ...