我正在绞尽脑汁地想弄清楚这个问题。在 Drupal 目录之外时,我无法让 Bootstrap 正常工作。如果我在 Drupal 目录中运行此代码,它可以正常工作,但向上一级不起作用。
我的 Drupal 路径是 /public_html/drupal/。我正在运行的脚本位于 /public_html 中。
$user 未返回登录用户。我已确保这不是跨域问题(即 www.domain.com 与 domain.com)。
chdir('/path/to/drupal');
include_once('./includes/bootstrap.inc');
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
global $user;
if ($user->uid) {
print "Logged in";
} else {
print "Logged out";
}
如果 Drupal 在您单独的脚本中无法识别用户,则很有可能它没有收到正确的会话 cookie。您应该检查正常 Drupal 安装设置的 cookie,看看它们是否也发送到您的脚本。如果没有,请检查$cookie_domain
Drupal settings.php 中的变量 - 通常会被注释掉,但您可能需要在您的情况下明确设置它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)