Drupal

Drupal开发人员和管理员的问答

5
Nginx与Apache-那里有实际的使用情况比较和统计信息吗?
我有一个要使用的新服务器,并且我盯着一块空白的画布。我可以在上面放任何东西。在对Apa​​che感到满意的同时,我不断听到nginx如何处理比Apache多得多的流量,其系数是10、100甚至更多。不仅如此,它“快得多”。 当我搜索文章时,我会发现很多与Drupal无关的东西。或者,当我确实遇到与Drupal相关的文章时,要么是1)某人的配置文件试图快速解释如何设置它,要么是2)某人说“不,不要使用nginx,将Apache与PHP一起使用” fcgid”,但从来没有解释原因。 那么,当谈到Drupal时,这里的现实是什么? 例如,我正在寻找与此2bits.com文章类似的东西。在这里,作者对Apache mod_php与带有fcgid的Apache进行了广泛的比较,权衡了它们的优缺点,并提供了一个案例研究来说明对现实世界的影响。本文中有足够的信息供我做出明智的决定,以决定哪种方法最适合我的情况。 虽然该作者将mod_php与fcgid进行了比较,但我正在寻找对Apache vs Nginx进行相同类型的全面,真实的研究。 是否有人切换到Nginx并被它与Apache的区别“吹牛”?即使对于已经使用APC,Memcache和Varnish之类的主动缓存的高度优化的环境,当唯一变化的变量是用Nginx替换Apache时,其本身也确实会产生很大的差异,值得投资这种新的替代技术? 将在该服务器上运行的网站每月平均可获得200万PV。运行Cent OS 6的LAMP堆栈。4核CPU,8 GIGS内存。Memcached和APC将成为其中的一部分。Drupal安装没什么特别的-基本上是Vanilla 7,带有大约50个模块。



11
视图-在组周围添加包装DIV
在Drupal 7中,我创建了一个列出几个字段的视图。这些字段按另一个字段(字段的术语ID)分组。标记看起来像这样: <h3>[Term 1]</h3> <div class="views-row views-row-1 views-row-odd views-row-first"> [Field Content] </div> <div class="views-row views-row-2 views-row-even"> [Field Content] </div> <div class="views-row views-row-3 views-row-odd views-row-last"> [Field Content] </div> <h3>[Term 2]</h3> <div class="views-row views-row-1 views-row-odd views-row-first"> [Field Content] </div> <div class="views-row views-row-2 views-row-even"> [Field Content] </div> <div class="views-row views-row-3 views-row-odd views-row-last"> [Field …
43 views 

15
从节点上的field_image获取图像URL
所以我有这个节点: object(Drupal\node\Entity\Node)[1862] protected 'values' => array (size=17) 'vid' => array (size=1) 'x-default' => string '7' (length=1) 'langcode' => array (size=1) 'x-default' => array (size=1) 0 => array (size=1) 'value' => string 'en' (length=2) ... (more fields) 'field_image' => array (size=1) 'x-default' => array (size=1) 0 => array (size=5) 'target_id' => …
42 media  8  theming 

11
我该如何阻止一个不断尝试注册更多帐户的滥用行为者?
我有一个免费的开放注册网站;任何人都可以注册,但我无法更改。但是,帐户必须在完成个人资料后得到管理员的批准,因此我可以访问多种信息来识别重复的用户(出生日期,“自我介绍”注释,电子邮件地址,照片,个人资料中报告的位置,地理位置IP ,IP地址等) 最近,该站点已受到单一用户的攻击,该用户极度滥用并且似乎没有时间注册多个帐户。这些帐户可以相对容易地被阻止,但是对于管理员(我)而言,这是一项繁重的工作,而且我会错过合法帐户中的一个(该用户每天注册约6个帐户)。 我已经: 禁止用户的已知IP地址 阻止从用于“一次性”电子邮件地址的已知域进行注册 添加了一个特殊视图,以帮助我根据用户的已知访问方式识别帐户 我可以对Cookie等进行任何处理,以使该用户更难以注册吗? 这是Drupal 7网站。 编辑:就我而言,这是人类用户,而不是机器人。但是,自动程序答案对于垃圾邮件发送者特别针对的用户很有用。
41 users 

13
如何从活动配置中删除配置对象?
我正在为Drupal 8编写一个自定义模块。它在名为modules / mymod / config / install / field.storage.bloom_stem.bs_twitter_ac.yml的文件中定义了一个字段存储配置对象。 问题是,在卸载模块时不会将其删除。它显然被遗弃了,因为当我重新安装模块时,我崩溃了。 drush -y pm-uninstall mymod drush cr drush -y en mymod 异常'Drupal \ Core \ Config \ PreExistingConfigException'和消息'mymod提供的配置对象(field.storage.bloom_stem.bs_twitter_ac)已存在于活动配置中' 因此,似乎我需要一些手动删除此配置对象的方法。在卸载模块时,我是否还需要提供一些删除它的代码?

4
从开发->阶段->生产迁移(CMI)配置的建议工作流程是什么?
几个月前,我们有一个drupalcamp,有人问如何使用新的配置(CMI)系统管理部署。一种可能的理想工作流程是将配置保留在版本控制中,并且仍然能够在团队成员之间迁移配置。 我们在会议室中能够发现的最好结果(部分基于DrupalCon Portland的演讲)是: 告诉版本控制忽略活动的配置目录。 将所有配置复制到暂存目录并提交到版本控制。 并使用settings.php在两个环境之间反转活动目录目录。但是,尽管弄清楚从一台服务器到另一台服务器的部署工作流程虽然复杂但可行,但从多个本地环境(即多个开发人员)到开发人员(或彼此之间)的建议工作流程是什么?可能的问题是每个团队成员会共享相同或相似的环境,那么如何改变一个队友的机器?

1
我需要将站点进行版本控制,并设置持续集成环境
我是一名Drupal 6x项目的企业家,该项目起步时很小,不需要版本控制(针对每个开发人员),但是现在我坚信没有它是没有办法的。JIRA上有大量的文档,并且编写精巧的用户故事涵盖了所有内容。我阅读了一些有关如何完成此工作的信息,并提出了以下计划- 使用模块将站点代码与数据库分开 语境 特征 强壮有力的手臂 探查器 将代码放入SVN存储库中并创建一个暂存站点 在EC2生产服务器上创建登台服务器的镜像 创建Selenium测试,并使用Saucelabs在云上运行它们 使用Elastic Bamboo在JIRA Studio中创建构建工作流程以运行自动更新 使用Drush Make更新和安装配置文件 在生产服务器上运行更新(我不确定如何) 首先,我列出了约50个“功能”,每个功能都有其组成部分(视图,内容类型,模块等)。毫无疑问,这将是一个挑战,因为该站点包含大约十二个自定义模块和Web服务,更不用说另外十二个包含自定义代码的内容类型“应用程序”实例了(我想将其中大多数转换为可升级的视图或模块) 。好消息是该站点尚未投入生产,因此风险仍然有限。 有没有人有做类似事情的经验?我应该遇到什么陷阱和局限性?我将不胜感激任何有关改进/纠正上述计划的建议,或者您的专家可能为我提供的任何见解或建议。

7
如何以编程方式登录用户?
我正在寻找让我通过传递用户名和密码来登录用户的API。有人对此有经验吗? 为了澄清,我试图制作一个AJAX登录框,该框在主页上显示为弹出窗口,并且在凭据错误的情况下不刷新页面,但前提是登录正确。所以这是我到目前为止所做的: 更新资料 现在,我将登录表单加载到我的主页上,然后在提交时启动一个AJAX请求,该请求将凭证发送到此脚本: function user_login_submit_try() { global $user; $uid = user_authenticate($_POST['name'],$_POST['pass']); $arr = array ('name'=>$_POST['name'],'pass'=>$_POST['pass']); if ($uid){ $user = user_load($uid); user_login_finalize($arr); } echo drupal_json_encode($uid); exit; }; 到目前为止,它仍然有效,但是我担心的是(如googletorp所述)安全问题;似乎我在此脚本中使用的任何API都没有对数据进行消毒。 会有人看到更好的方法吗?
41 7  users 

11
如何在节点标题之前显示字段?
我想在D7中显示预告片时在节点标题之前呈现一个特定字段。 实际上,我想从这里转到这个。 我已经研究过更新node.tpl.php,但是我注意到它与之分开$title, $content所以我不确定如何处理。经过一些搜索,我发现人们建议使用CCK和ConTemplate模块在Drupal-6中解决此问题,但我想知道是否还有更多Drupal-7解决方案。 有什么建议么?
41 7  entities  nodes 

1
为什么hook_form_alter()如此混乱?
这是我遇到的一个例子。我正在尝试在字段标签中添加一些HTML。 $form['field_feedback']['und']['#title'] <- has the title $form['field_feedback']['und'][0]['#title'] <- has the title $form['field_feedback']['und'][0]['value']['#title'] <- has the title. (Works) 为什么在三个填充的#title属性中仅使用一个?
40 7  forms 

3
如何合并从网站的开发副本到实时网站的更改而又不丢失新内容?
将站点的开发副本上的工作合并到实时生产副本中的最佳过程是什么?自从开始开发最新功能以来,通常会在网站上添加很多新内容。而且,网站的大多数新增内容都会涉及数据库更改。因此,复制任何新文件都很容易,但是数据库呢?如何将更改与现有生产数据库合并,而又不丢失自上次更新生产站点以来添加的新内容?是否有任何模块对此有所帮助?

11
哪些表格可以清除?
我无缘无故继承了一个客户端站点,该站点具有非常大的数据库。内容量适中,启用的模块很少。但是,数据库太大,无法轻松移动,因此我想清除它。 我已经清除了标准的缓存表,系统日志和访问日志。 我可以在标准Drupal站点中安全截断其他表格吗?
40 database 

7
Drupal SA-CORE-2014-005-如何判断我的服务器/站点是否受到威胁?
我刚刚使用解决Drupal SA-CORE-2014-005漏洞的补丁方法更新了所有站点。我刚刚读到一些报道,就在昨天,有一个来自俄罗斯IP的渗透到drupal网站的人。 https://www.drupal.org/SA-CORE-2014-005 我现在主要担心的是: 如何判断我的网站是否包含在内? 我应该在apache访问日志中搜索什么以检测我的站点是否是受害者? 到目前为止,这些黑客对组成的网站做了什么?
40 7  security 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.