“Project:扩展维护”的版本间差异
小 (Yuki移动页面Project:扩展维护至Project:扩展维护:属于站点记录) |
(添加VisualEditor相关内容、其他细节添加) |
||
第1行: | 第1行: | ||
== Parsoid == | == Parsoid == | ||
* 要使得'''Parsoid'''在LNMP 1.7环境安装包下顺利使用可视化编辑功能需要进行如下修改: | * 要使得'''Parsoid'''在LNMP 1.7环境安装包下顺利使用可视化编辑功能需要进行如下修改: | ||
− | # 注释掉<code>/usr/local/nginx/conf/enable-php.conf</code>中的<code>#try_files $uri =404;</code>; | + | # <s>注释掉<code>/usr/local/nginx/conf/enable-php.conf</code>中的<code>#try_files $uri =404;</code>;</s> |
# 注释掉<code>/usr/local/php/etc/php.ini</code>中的<code>; cgi.fix_pathinfo=0</code>; | # 注释掉<code>/usr/local/php/etc/php.ini</code>中的<code>; cgi.fix_pathinfo=0</code>; | ||
# 与数据库无关,重启nginx和php-fpm即可。 | # 与数据库无关,重启nginx和php-fpm即可。 | ||
第50行: | 第50行: | ||
$wgPdftoText = '/usr/bin/pdftotext'; | $wgPdftoText = '/usr/bin/pdftotext'; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | == Semantic MediaWiki == | + | * 在迁移时发现<code>pdfinfo pdftotext</code>不安装亦可正常使用。 |
+ | == Extension:Semantic MediaWiki == | ||
在使用新版本Composer更新SMW时,Composer会提示报错<code> Package::setProvides must be called with a map of lowercased package name.</code>。目前找到的解决方法是使用旧版Composer(如版本2.1.14)进行更新。<ref>[https://sourceforge.net/p/semediawiki/mailman/message/37408313/ <nowiki>[Semediawiki-user]Problem installing SMW: composer complains about lowercased package names</nowiki>]</ref>如果遇到莫名其妙的包 冲突/丢失 的问题,可以尝试更换composer的源。 | 在使用新版本Composer更新SMW时,Composer会提示报错<code> Package::setProvides must be called with a map of lowercased package name.</code>。目前找到的解决方法是使用旧版Composer(如版本2.1.14)进行更新。<ref>[https://sourceforge.net/p/semediawiki/mailman/message/37408313/ <nowiki>[Semediawiki-user]Problem installing SMW: composer complains about lowercased package names</nowiki>]</ref>如果遇到莫名其妙的包 冲突/丢失 的问题,可以尝试更换composer的源。 | ||
<references /> | <references /> | ||
+ | == Extension:VisualEditor == | ||
+ | ; 此章节仅针对'''旧版VisualEditor''',新版MediaWiki(1.35版本起)已内置相关组件无需额外安装。 | ||
+ | * [[mw:Extension:VisualEditor|Extension:VisualEditor]]根据章节[[mw:Extension:VisualEditor#Linking_with_Parsoid_in_private_wikis|Linking with Parsoid in private wikis]],添加了[[mw:Talk:Parsoid/Archive#Installing_on_a_private_wiki|Installing on a private wiki]]中的内容,使其在本Wiki下可用。 | ||
+ | * 本Wiki目前已使用[[mw:Extension:NetworkAuth|Extension:NetworkAuth]],对于来自Parsoid的访问进行自动登录,相关配置如下: | ||
+ | <div class="mw-collapsible mw-collapsed"><syntaxhighlight lang="php"> | ||
+ | //弃用的配置 | ||
+ | if ( $_SERVER['REMOTE_ADDR'] == 'SERVER-IP' ) { | ||
+ | $wgGroupPermissions['*']['read'] = true; | ||
+ | $wgGroupPermissions['*']['edit'] = true; | ||
+ | } | ||
+ | //启用的配置 | ||
+ | require_once "$IP/extensions/NetworkAuth/NetworkAuth.php"; | ||
+ | $wgNetworkAuthUsers[] = [ | ||
+ | 'iprange' => [ 'SERVER-IP', | ||
+ | '127.0.0.1' ], | ||
+ | 'user' => 'Aria-bot', | ||
+ | ]; | ||
+ | </syntaxhighlight></div> | ||
+ | * Parsoid服务的单服务器多站点的示例配置内容(位于<code>/etc/mediawiki/parsoid/config.yaml</code>)建议拷贝源代码: | ||
+ | <div class="mw-collapsible mw-collapsed"><syntaxhighlight lang="yaml"> | ||
+ | worker_heartbeat_timeout: 300000 | ||
+ | |||
+ | logging: | ||
+ | level: info | ||
+ | |||
+ | services: | ||
+ | - module: ../src/lib/index.js | ||
+ | entrypoint: apiServiceWorker | ||
+ | conf: | ||
+ | mwApis: | ||
+ | - # 1st | ||
+ | uri: 'http://www.kanade.win/api.php' | ||
+ | domain: 'www.kanade.win' | ||
+ | - # 2nd | ||
+ | uri: 'http://pool.kanade.win/api.php' | ||
+ | domain: 'pool.kanade.win' | ||
+ | - # 3rd | ||
+ | uri: 'http://test.kanade.win/api.php' | ||
+ | domain: 'test.kanade.win' | ||
+ | |||
+ | </syntaxhighlight></div> | ||
== 其他 == | == 其他 == | ||
==== 语言 ==== | ==== 语言 ==== | ||
修改界面语言时,用户语言 要与 维基使用语言 保持一致;否则会出现奇怪的情况。但是现在这两个选项在配置文件中设置成一样的,也隐藏了前台的修改选项。 | 修改界面语言时,用户语言 要与 维基使用语言 保持一致;否则会出现奇怪的情况。但是现在这两个选项在配置文件中设置成一样的,也隐藏了前台的修改选项。 |
2023年1月8日 (日) 14:19的版本
Parsoid
- 要使得Parsoid在LNMP 1.7环境安装包下顺利使用可视化编辑功能需要进行如下修改:
注释掉/usr/local/nginx/conf/enable-php.conf
中的#try_files $uri =404;
;- 注释掉
/usr/local/php/etc/php.ini
中的; cgi.fix_pathinfo=0
; - 与数据库无关,重启nginx和php-fpm即可。
Extension:CheckUser
注释掉/home/wwwroot/default/mw/extensions/CheckUser/src/TimelineRowFormatter.php
中的第99行//'userAgent' => $this->getUserAgent( $row->cuc_agent ),
(该行报错)后Special:Investigate中可以使用Timeline功能,但缺少useragent信息项。
- 猜想1:因为不是一开始就安装了Checkuser,所有有一部分信息出现了缺失(空值),而代码未对空置进行过滤而导致问题。
- 猜想2:若随MediaWiki一同安装可能不会出现此问题。
- 猜想3:应该只影响CheckUser安装前的用户。
- 结论: 对数据库中受影响的空值进行填充,可以得知: 历史记录是50项/页的,所以只要满足操作次数则可避免报错。
Extension:Display Title
DisplayTitle被用于显示与页面名称不一样的标题。根据扩展说明页面,在1.5.3
版本之后,所有与重定向相关的页面都会受到影响,例如:特殊:重定向页列表、特殊:链入页面、重定向的页面。
原有的页面名称将显示为重定向目标页面的名称,与用户的直觉不符。解决方案是安装低版本扩展。
Extension:PdfHandler
PDFHandler是一个MediaWiki安装时捆绑的一个扩展,理解的用途是在文章中展示PDF页面。但是现代浏览器chrome类和firefox列都能够打开网页上的PDF文件,似乎也不是怎么的重要了。一般来说,这个扩展未经配置是无法展现PDF页面的,取而代之的是一个Logo。
要让该扩展正常使用首先需要apt
安装which gs convert pdfinfo pdftotext
。
在LocalSettings.php中的配置如下:
1$wgFileExtensions[] = 'pdf';
2$wgUseImageMagick = true;
3wfLoadExtension( 'PdfHandler' );
4# Ubuntu
5$wgPdfProcessor = 'gs';
6// if defined via ImageMagick
7$wgPdfPostProcessor = $wgImageMagickConvertCommand;
8// if not defined via ImageMagick
9// $wgPdfPostProcessor = 'convert';
10$wgPdfInfo = 'pdfinfo';
11$wgPdftoText = 'pdftotext';
12# Debian
13$wgPdfProcessor = '/usr/bin/gs';
14// if defined via ImageMagick
15$wgPdfPostProcessor = $wgImageMagickConvertCommand;
16// if not defined via ImageMagick
17// $wgPdfPostProcessor = '/usr/bin/convert';
18$wgPdfInfo = '/usr/bin/pdfinfo';
19$wgPdftoText = '/usr/bin/pdftotext';
- 在迁移时发现
pdfinfo pdftotext
不安装亦可正常使用。
Extension:Semantic MediaWiki
在使用新版本Composer更新SMW时,Composer会提示报错 Package::setProvides must be called with a map of lowercased package name.
。目前找到的解决方法是使用旧版Composer(如版本2.1.14)进行更新。[1]如果遇到莫名其妙的包 冲突/丢失 的问题,可以尝试更换composer的源。
Extension:VisualEditor
- 此章节仅针对旧版VisualEditor,新版MediaWiki(1.35版本起)已内置相关组件无需额外安装。
- Extension:VisualEditor根据章节Linking with Parsoid in private wikis,添加了Installing on a private wiki中的内容,使其在本Wiki下可用。
- 本Wiki目前已使用Extension:NetworkAuth,对于来自Parsoid的访问进行自动登录,相关配置如下:
//弃用的配置
if ( $_SERVER['REMOTE_ADDR'] == 'SERVER-IP' ) {
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = true;
}
//启用的配置
require_once "$IP/extensions/NetworkAuth/NetworkAuth.php";
$wgNetworkAuthUsers[] = [
'iprange' => [ 'SERVER-IP',
'127.0.0.1' ],
'user' => 'Aria-bot',
];
- Parsoid服务的单服务器多站点的示例配置内容(位于
/etc/mediawiki/parsoid/config.yaml
)建议拷贝源代码:
worker_heartbeat_timeout: 300000
logging:
level: info
services:
- module: ../src/lib/index.js
entrypoint: apiServiceWorker
conf:
mwApis:
- # 1st
uri: 'http://www.kanade.win/api.php'
domain: 'www.kanade.win'
- # 2nd
uri: 'http://pool.kanade.win/api.php'
domain: 'pool.kanade.win'
- # 3rd
uri: 'http://test.kanade.win/api.php'
domain: 'test.kanade.win'
其他
语言
修改界面语言时,用户语言 要与 维基使用语言 保持一致;否则会出现奇怪的情况。但是现在这两个选项在配置文件中设置成一样的,也隐藏了前台的修改选项。