如何为MediaWiki页面设置自定义规范链接?解决首页路径问题
解决MediaWiki首页规范链接与短URL不一致的问题
方法1:通过钩子自定义首页规范链接
利用MediaWiki的CanonicalLink::GetCanonicalURL钩子,可单独为首页指定规范链接。在LocalSettings.php中添加以下代码:
$wgHooks['CanonicalLink::GetCanonicalURL'][] = function( $title, &$url ) { // 判断当前页面是否为首页(若你的首页名称不是默认"Main Page",请替换为实际标题) if ( $title->isMainPage() ) { // 将规范链接设置为域名根路径 $url = $wgCanonicalServer . '/'; return false; // 终止后续钩子处理,使用自定义URL } return true; // 其他页面保留默认规范链接逻辑 };
方法2:同步MediaWiki参数与Nginx配置
检查并调整MediaWiki核心参数,确保和Nginx短URL配置匹配:
- 设置
$wgScriptPath = ""; - 设置
$wgArticlePath = "/$1";,让MediaWiki生成短格式URL - 保持
$wgEnableCanonicalServerLink = true;,确保规范链接使用正确的服务器地址
方法3:借助扩展实现灵活配置
可以使用MediaWiki的CanonicalLinks扩展,它支持针对特定页面设置自定义规范链接,无需手动编写钩子代码,配置更直观。
内容的提问来源于stack exchange,提问作者Andrew
相关产品推荐
相关产品推荐

