如何在Drupal日志中保存“用户代理”? -- 7 领域 drupal 相关 的问题

How to save the “user agent” in the Drupal logs?


3
vote

问题

中文

浏览日志文件时,知道错误是由真正的用户还是由机器人引起的。

有没有办法将"用户代理" 字符串(浏览器名称)保存到Drupal Log?

英文原文

when going through the log files it would be really helpful to know if an error was caused by a real user or by a bot.

Is there a way to save the "user agent" string (browser name) to the drupal log?

  

回答列表

6
 
vote
vote
最佳答案
 

使用 hook_watchdog ,您可以操纵全部,或您的一些日志消息。您可以在超级全局 $ _server ['http_user_agent']中找到用户代理字符串。以这种方式,您可以使用用户代理和用户代理和远程IP的所有错误添加所有"通知" 。

 

Using hook_watchdog, you can manipulate all, or some of your log messages. You can find the user agent string in the super-global $_SERVER['HTTP_USER_AGENT']. This way you could for example prepend all "notices" with the user-agent, and all errors with both user-agent and remote IP.

 
 
2
 
vote

请注意,用户 - 代理的真实级别没有保证,因为它真的很容易更改机器人创建者(以及浏览器用户)。因此,取决于机器人的类型和其所有者正在尝试执行的,您可能会或可能无法看到它是刚刚使用用户代理的机器人。

通常,当我尝试通过脚本模拟真正的普通用户时,我确保我的机器人尽可能多地看起来像Firefox用户,但另一方面,当爬行机器人(例如Google Bots)访问时您的网站,我认为它试图用作Google Bot。

然后,根据要检测到的内容,用户代理可能或可能不是您应该寻找的内容。
 

Please note that there's no guarantee on the level of truth of the user-agent as it's really easy to change for a bot creator (and a browser user as well). Thus, depending on the type of bot and whats its owner is trying to do, you might or might not be able to see if it's a bot just using the User-agent.

Typically, when I try to emulate a real average user through a script, I make sure my bot looks like a Firefox user as much as possible but on the other hand, when a crawling bot (such as the Google bots) visits your website, I think it tries to be identied as a Google bot.

Then, depending on what you want to detect, user-agent might or might not be what you should look for.

 
 

相关问题

1  如何在D6中添加CCK字段到我自己的模块提供的内容类型?  ( How to add cck fields to my own content type provided by my own module in d6 ) 
我正在创建一个模块,它提供了一个新的节点内容类型。我可以用自己的默认节点创建字段扩展,但我想添加一些cck字段 too(如 cck imagefield ) 在通过Drupal的内容类型编辑器的通常的管理界面启用我的模块后,不手动 。 所以这里是我自己的表单,它提供了新的内容类型; 这就是我想用CCK Image...

2  用户简单的节点访问控制  ( Simple node access control for users ) 
用户对内容类型的"日记" 具有"编辑自己的内容" 权限。查看自己的日记节点时,我想呈现一个简单的复选框"制作私人" 。然后只有该用户可以查看节点。 我已经看过一些这样做的选项: 1)写入使用hook_node_access()的模块 - overkill? 2)也许现有的内容访问模块提供有用的钩子? 3)创建...

8  如何在视图中设置表格3?  ( How do i set a table header in views 3 ) 
如何究竟获得表格标题以显示在表格上方? 在视图中 - 查看-Table.tpl.php我可以看到 <thead> 部分,但是什么导致它实际得到呈现? 我在哪里指定列标题文本? 我在设置页面中尝试了各种选项,但无济于。 ...

1  如果没有参考,如何制作一个节点参考字段,也可以表现为文本字段  ( How to make a node reference field that can also behave as a text field if no re ) 
我正在寻找灵活的方法来允许用户输入一个字段,而且还要在节点引用已经存在的情况下,该字段是节点参考。换句话说,让我们说我有一个名为Dog的内容类型,每只小狗都有一个收藏玩具的节点参考,如果玩具存在,这个字段应该是节点参考,否则应该允许用户填写。 概念上我可以想到两种方法来做到这一点。一种方式,只是为了使它成为...

6  有没有办法在没有网页中以网址在网址中以编程方式设置寻呼机的页码?  ( Is there a way to set the pagers page number programmatically without the page ) 
我想要一个先前留下了节点的评论的用户,最初看到新的用户的最后一页,而新用户(该节点)最初会看到注释的第一页。 我知道该页面由寻呼机控制,并由URL中的"页面" 变量设置( 99887661 )。有没有办法可以以方便地设置这件事? (只是为了澄清,我不使用这个项目上的视图模块。) ...

3  如何在节点添加表单中添加节点添加链接(对于不同的内容类型)(Drupal 7)  ( How do i add a node add link for a different content type in the node add fo ) 
我将使用面板覆盖节点添加/编辑表单。我添加的一个字段使用自动完成窗口小部件(它是一个节点参考字段)。我还想在自动完成字段下面添加一个链接以添加新节点(其中一个引用的节点)。我想知道是否有一种方法可以添加此链接。 如果在面板中是不可能的,也许有人可以让我知道如何使用模板添加这种链接到节点添加表单。 ...

4  如何基于内容类型更改术语URI  ( How to change a term uri based on content type ) 
我有2种内容类型(照片,视频),两者都有一个术语参考,对"主题" 分类。 主题术语在节点显示页面上显示,我想链接到照片的"/ photo /%" ,用于视频,用于视频,而不是默认的"/taxonomy/term/%". 如何做到这一点? ...

4  如何在查看视图时保存用户想要的过滤器?  ( How can i save what filters a user wants when viewing a view ) 
我不知道这是可能的,但我想允许我的用户能够过滤他们想要在视图中显示的内容,以便每次返回该视图时,他们的偏好保存。 我否如何允许我的用户在视图中过滤内容,但我无法保存它。我正在努力让我的用户控制自己的新闻源。 我已经尝试过一些模块来做这个,我一直在玩一段时间,但我似乎无法破解我所概述的东西。任何帮助,将不胜感激。谢谢...

3  如何在地址域显示城市与州之间放置逗号?  ( How to put a comma between city and state in addressfield display ) 
我正在使用带有drupal 7.10的 addressfield 模块。在显示地址域时,我想要一个逗号。目前地址如下所示: 123 Main St SomeCity California 90100 我希望它显示: 123 Main St SomeCity, California 90100 ...

2  下拉列表框+视图 - 不使用分类物  ( Dropdown with search box views without using taxonomy ) 
好的,所以我一直在谷歌上搜索几周,我如何这样做,我把一些东西在一起。 我想结合年份值,并将其与搜索框组合。 现在,我想知道我可以创建一个视图,然后通过URL传递上下文参数。这完美无缺。我可以通过访问URL http://example.com/cars/来到1977年1977年为汽车制造的制动器的结果1977年,刹...

2  允许用户通过UI设置一些CSS设置  ( Allow user to set some css settings through ui ) 
用户希望能够为网站的外观选择一些尺寸和颜色。这些是CSS规则。我有一个模糊的愿景如何通过模块来完成,但也许已经存在了这样的东西? 我需要的是将某种形式与字段为组合框,允许用户从几个值中进行选择。例如。允许他从{红色,蓝色,黄色}中选择"新闻标题的背景" ,恰好是.News-header-background类。 ...

1  可以在Drupal 7上触发Ajax呼叫重新加载自己的表单吗?  ( Can a form triggering an ajax call reload itself on drupal 7 ) 
我正在尝试建立一个页面,以便在顶部的流提出问题,因此我需要ajax来避免重新加载。它实际上很简单。顶部是一个带有流的节点,我添加到下面的块。 一个问题,问题,问题的票数和"添加投票" 按钮 一种添加新节点的表单"用0投票" 我有两个问题。 a)当我点击2的提交按钮时。块我添加一个问题,我可以用新问题更新表,...

5  如何修改页面中的分类术语路径呈现数组?  ( How to modify taxonomy term path in the page render array ) 
我正在尝试在节点页面上显示之前更改一个术语的路径。我在template.php中使用这个预处理函数: function bartik_preprocess_node(&$variables) { $variables['field_photo_topic']['0']['taxonomy_term']->...

1  用户的论坛CMS? [关闭]  ( Forum cms for user ) 
此问题似乎在帮助中心中定义的范围内涉及Drupal。。 想要改进这个问题?更新问题,所以它是关于drupal答案的主题。 ...

0  可以使用数字启动主题名称吗?  ( Can a theme name be started with a number ) 
我可以用数字开始主题名称吗?例如:"123Go" drupal识别文件夹&amp;以其开头的文件? 它在寺庙中工作.PHP作为函数的开始? ...

1  在视图列表节点中显示节点注释的分组视图  ( Displaying grouped view of node comments in a view listing nodes ) 
我创建了一个列出了许多节点的视图。我已经添加了"节点注释" 的关系,然后将注释添加为视图中的字段。我所拥有的问题是,如果节点上有多个注释,则视图列出多次节点。例如,当前视图显示此名称 Node Title: Title 1 Nid: 1 Node Image: Image Comment: Comment 1 ...

5  在Drupal 7中,我如何只有在查看前页面时才能包含CSS文件?  ( In drupal 7 how can i include a css file only when the front page is being view ) 
我想仅在查看前页面时包含特定的CSS文件,因为它只适用于前页,并且它是一个相对大的文件。我知道解决方案将涉及使用 drupal_add_css()我不确定在我的主题 theme/template.php3 文件中的位置。我的主题内有特定的钩子,我应该实施它吗?谢谢。 编辑:我基本上有代码,我只是不确定我的主题文件可以...

1  Drupal 7,Ubercart,产品搜索按价格范围  ( Drupal 7 ubercart product search by price range ) 
我正在使用ubercart 3.x,drupal7。有人可以告诉我如何在指定的时间间隔内使用价格创建一个用于搜索产品的表格? IE。用户应以最低价格填充此表格,以间隔和最高价格和发布表格后,他将看到所有适合的产品。 ...

1  RTF与内联图像+字限制的模块?  ( Modules for rtf with inline images word limits ) 
我想允许我的所有网站的用户添加自己的博客文章,具有某些约束。 这是我想要给它们的表格: Title : Contents (RTF, max 700 characters) : Submit (or Login/Register then Submit) : 所有帖子的强制性: 在注释上启用读/写权限 ...

1  从Drupal的前端更改模块中的代码  ( Change the code in the module from the front end of drupal ) 
我已创建了我的自定义模块。我可以从Drupal的末尾编辑我的模块,然后将其前后提起并编辑模块。是否有任何模块为此目的? ...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.