MCBBS Wiki:运维笔记:修订间差异

添加565字节 、​ 2023年6月19日 (星期一)
→‎Varnish:​ // Edit via Wikiplus
→‎VisualEditor:​ // Edit via Wikiplus
→‎Varnish:​ // Edit via Wikiplus
 
==Varnish==
首先,要确保 Varnish 相关缓存逻辑正常工作,必须在 LocalSettings.php 设置 <code>$wgUseCdn = true;</code>
===Parsoid 405===
若编辑部分页面时出现<code>连接至Parsoid/RESTBase服务器错误(HTTP 405)</code>
 
一般发生在配置 Varnish 后。配置 vcl 规则,直接请求 api.php 和 rest.php 不经过缓存。
<pre>if (req.url ~ "api.php" || req.url ~ "rest.php")
return (pass);
Popups 默认情况下无论是否开启埋点功能,都会初始化 sessionId 并存储于 cookies 中,导致请求不经过缓存。
 
编辑 <code>extensions/Popups/includes/PopupsContext.php</code> 的第 198 行
<pre>return false;</pre>
 
即可实现仅登录用户启用 Popups 。
===HTTP 模式下 PURGE 请求===
MediaWiki 默认情况下,页面更新时会发送 PURGE 代理请求 Varnish 清理缓存。这仅适用于 Varnish 被配置为 HTTP 正向代理模式时。
 
如果 Varnish 在 HTTP 模式下工作,编辑 <code>includes/deferred/CdnCacheUpdate.php</code> 的 304 行:
<pre>$reqs[] = ( $baseReq );</pre>
以及 297 行:
<pre>'Host' => $urlInfo['host'],</pre>
 
即可实现只通过 HTTP 向 Varnish 发送 PURGE 缓存清理请求。
 
==本地化文字修改==
维护员、​界面管理员、​巡查员、​监督员、​小部件编辑者
3,462

个编辑