版本控制极其极其重要!
[Net.ServicePointManager]::SecurityProtocol =[Net.SecurityProtocolType]::Tls12
iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
安装nodejs:下载–点击安装–安装支持环境
安装git:下载–安装–配置环境变量
安装Parsoid:
git config --global http.postBuffer 524288000
git clone https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid --depth 1
cd parsoid/
npm config set registry https://registry.npm.taobao.org
npm install
config.example.yaml
和localsettings.example.js
二文件node bin/server.js
localsetting.php
文件node bin/server.js
下载nodejs
:https://nodejs.org/en/download/安装nodejs
:点击应用程序自动安装,安装时会同时将npm绑定安装。很多小白和我一样,不懂npm是什么,那么附上学习链接:npm是什么
{专业版,知乎版,菜鸟版}。choco : 无法将“choco”项识别为
cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正手动安装chocolatey
。管理员身份打开powershell,输入命令: [Net.ServicePointManager]::SecurityProtocol =[Net.SecurityProtocolType]::Tls12
iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex
卸载nodejs
操作,删除它的文件夹,以及环境变量中和nodejs、npm相关的量。 C:\Program Files\nodejs
C:\Users\Administrator\AppData\Roaming\npm
C:\Users\Administrator\AppData\Roaming\npm-cache
重新安装nodejs
,并令它自动安装支持环境
,如python、vc++2015等,这时可以顺利进行下去。C:\Program Files\Git\bin
。采用git命令直接下载最新版的Parsoid:git clone https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid
如果你成功了,那么就可以跳过下载步骤了,进入安装步骤3.2了。
我这里报错显示RPC failed...
如下图所示。
解决方案:(参考:https://blog.csdn.net/IT_liuchengli/article/details/77040806)
git config --global http.postBuffer 524288000
git clone https://gerrit.wikimedia.org/r/p/mediawiki/services/parsoid --depth 1
下载parsoid: https://github.com/wikimedia/parsoid
,解压后将其移动至mediawiki文件夹下。
管理员运行cmd,转到parsoid文件夹;
cd parsoid/
npm config set registry https://registry.npm.taobao.org
npm install
npm install
命令安装的时候发现报了很多错,主要是一些环境未能配置成功,比如vs环境、python环境等。
解决方案:
手动下载依赖包(https://github.com/nodejs/node-gyp#on-windows
)
or
在联网的环境下自动安装:cmd输入npm install --global --production windows-build-tools
parsoid/config.yaml
文件:config.example.yaml
文件,重命名为config.yaml
config.example.yaml
文件: mwApis:
- # This is the only required parameter,
# the URL of you MediaWiki API endpoint.
uri: 'http://{Your_Domain_Name}/api.php'
# The "domain" is used for communication with Visual Editor
# and RESTBase. It defaults to the hostname portion of
# the `uri` property above, but you can manually set it
# to an arbitrary string. It must match the "domain" set
# in $wgVirtualRestConfig.
domain: '{Your_Domain_Name}'
#optional
# my settings:
# uri: 'http://47.***.***.**/mediawiki/api.php'
# domain:'47.***.***.**'
parsoid/localsettings.js
文件:localsettings.example.js
文件,重命名为localsettings.js
exports.setup = function(parsoidConfig) {
// Do something dynamic with `parsoidConfig` like,
parsoidConfig.setMwApi({
uri: 'http://{Your_Domain_Name}/api.php',
// my setting:
// uri: 'http://47.***.***.**/mediawiki/api.php',
// original setting:
// uri: 'http://localhost/w/api.php',
});
};
parsoid启动会默认占用8000端口。
node bin/server.js
检查是否启动成功:浏览器输入localhost:8000
,若导航出现parsoid,那么恭喜你,终于配置好了parsoid。
【此处插入辛酸泪】
我在启动该命令时一直报错:
ERROR: cannot find modules "C:\\...\\parsoid\\node-modules\\lib\\index.js"
......
各种查资料,检查环境,甚至手动下载lib包,但是这个错误始终不能解决。直到后来再仔细看了一遍parsoid资料,才发现
————原来是parsoid和nodejs版本不兼容的问题。。。。
OK,降版本重装,困扰我近一个星期的玩意半天就解决了。
千辛万苦终于走到了这一步。
mediawiki/extensions
文件夹mediawiki/localsettings.php
文件最后面添加配置内容:
wfLoadExtension( 'VisualEditor' );
// Enable by default for everybody
$wgDefaultUserOptions['visualeditor-enable'] = 1;
// Don't allow users to disable it
$wgHiddenPrefs[] = 'visualeditor-enable';
// OPTIONAL: Enable VisualEditor's experimental code features
$wgDefaultUserOptions['visualeditor-enable-experimental'] = 1;
$wgVirtualRestConfig['modules']['parsoid'] = array(
// URL to the Parsoid instance
'url' => 'http://47.***。***。**:8000',
'domain' => '47.***。***。**',
'prefix' => '47.***。***。**',
'forwardCookies' => true,
)
// selectable
//$wgGroupPermissions['*']['read'] = true;
//$wgGroupPermissions['*']['edit'] = true;
//$wgGroupPermissions['user']['read'] = true;
//$wgGroupPermissions['user']['edit'] = true;
cd parsoid/
node bin/server.js
OK,终于成功了,开始下一个硬骨头extension:math。