嗨,我想弄明白这一点已经有一段时间了,但不管我做什么,似乎都没用。
我有一个使用WordPress multisite运行Nginx+Varnish的VPS设置。
浏览网站时,除了管理/工具栏外,其他一切都正常工作。它根本无法加载。它在管理区域加载,但在查看站点时不会加载。
我已经检查了“查看网站时显示工具栏”,并且我已经停用了所有插件。
现在,我甚至已经创建了一个全新的WP安装,只运行默认的东西,只是为了看看它是否有效,但仍然无法显示。
我检查了源代码,奇怪的是,“#wpadminbar”不存在!但由于这是默认主题,所以每段代码看起来都很好-wp_head
&;wp_footer
正确放置。
我现在的猜测是,这更像是一个服务器问题,可能是Nginx或Varnish问题?
我希望有人能帮我解决这个问题。。。
-豪伊
SO网友:Michael Thompson
如果您使用的是Varnish,而没有看到管理栏,那是因为您可能在/etc/varnish/default.vcl
看起来是这样的:
sub vcl_recv {
if (!(req.url ~ "wp-(login|admin)")) {
unset req.http.cookie;
}
}
这将阻止管理栏出现,因为除了匹配的页面外,您正在从所有页面删除cookie内容
wp-(login|admin)
. 作为测试,请尝试删除此项并加载您的站点。如果出现管理栏,则需要调整Varnish规则。
有几种不同的处理方式,而且各不相同。您可以检查特定的cookie名称、URL字符串等。