当我转到 admin/build/modules 时,匿名用户访问被拒绝
When I go to admin/build/modules, anonymous users get access denied
我转到 admin/build/modules,不做任何更改,然后单击 'Save Configuration'
在数据库 table menu_router 中,它删除了值为 1 或 'user_access' 的项目的 access_callback 值。
因此,在匿名用户应该能够访问的页面上,他们会收到一条访问被拒绝的消息(您无权访问此页面)。
我能够手动设置数据库中的值,但这确实不是我每次去 admin/build/modules 时的长期解决方案。
今天是这种情况开始发生的第一天。我确实更改了一些菜单项,因为我想更新它们的功能名称。更新后,我去了 admin/build/modules,然后 devel/menu/reset,然后 admin/settings/performance 并清除了缓存。我不确定究竟是什么导致了这种情况。
在文件 includes/database.mysql.inc 的函数 db_escape_string 中,我有一些自定义代码。
function db_escape_string($text) {
global $active_db;
if (!is_string($text)){ return '';} //custom
return mysql_real_escape_string($text, $active_db);
}
我注释掉了我的自定义代码,现在它工作正常。
我转到 admin/build/modules,不做任何更改,然后单击 'Save Configuration'
在数据库 table menu_router 中,它删除了值为 1 或 'user_access' 的项目的 access_callback 值。
因此,在匿名用户应该能够访问的页面上,他们会收到一条访问被拒绝的消息(您无权访问此页面)。
我能够手动设置数据库中的值,但这确实不是我每次去 admin/build/modules 时的长期解决方案。
今天是这种情况开始发生的第一天。我确实更改了一些菜单项,因为我想更新它们的功能名称。更新后,我去了 admin/build/modules,然后 devel/menu/reset,然后 admin/settings/performance 并清除了缓存。我不确定究竟是什么导致了这种情况。
在文件 includes/database.mysql.inc 的函数 db_escape_string 中,我有一些自定义代码。
function db_escape_string($text) {
global $active_db;
if (!is_string($text)){ return '';} //custom
return mysql_real_escape_string($text, $active_db);
}
我注释掉了我的自定义代码,现在它工作正常。