可视化编辑器和 MediaWiki - 无法连接到服务器

Visual Editor and MediaWiki - Couldn't connect to server

可视化编辑器 1.32

Mediawiki 1.32

Parsoid 0.10.0

错误: apierror-visualeditor-docserver-http-error: (curl error: 7) Couldn't connect to server

常规编辑工作。数据库有效。

怎么了?无论我做什么,它都帮不了我。我尝试手动安装到 Arch - 总是出现同样的错误。

docker-compose.yml:

version: '3'
services:
  mediawiki:
    build: .
    image: amediawiki32ve
    container_name: mediawiki_wiki
    restart: always
    ports:
      - 8024:80
    links:
      - database
      - parsoid
    volumes:
      - /var/www/html/images
      # After initial setup, download LocalSettings.php to the same directory as
      # this yaml and uncomment the following line and use compose to restart
      # the mediawiki service
      - ./LocalSettings.php:/var/www/html/LocalSettings.php
  database:
    image: mariadb
    restart: always
    environment:
      # @see https://phabricator.wikimedia.org/source/mediawiki/browse/master/includes/DefaultSettings.php
      MYSQL_DATABASE: my_wiki
      MYSQL_USER: pscn
      MYSQL_PASSWORD: example1
      MYSQL_RANDOM_ROOT_PASSWORD: "yes"
    ports:
      - 4675:3306
  parsoid:
    image: thenets/parsoid:0.10.0
    ports:
      - 8035:8000
    restart: always
    environment:
      PARSOID_DOMAIN_localhost: localhost:8024/api.php

要构建的 Dockerfile:

FROM mediawiki:1.32

RUN cd /var/www/html/extensions &&\
    git clone -b REL1_32 https://gerrit.wikimedia.org/r/p/mediawiki/extensions/VisualEditor.git &&\
    cd VisualEditor &&\
    git submodule update --init

LocalSettings.php(连同自动生成的设置):

$wgDefaultUserOptions['visualeditor-enable'] = 1;
$wgHiddenPrefs[] = 'visualeditor-enable';
$wgVirtualRestConfig['modules']['parsoid'] = array(
    'url' => 'localhost:8035',
    'domain' => 'localhost'
);

点击Edit时:
http://localhost:8024/api.php?action=visualeditor&format=json&paction=parse&page=Strona_główna&uselang=pl&oldid=3

{"error":{"code":"apierror-visualeditor-docserver-http-error","info":"(curl error: 7) Couldn't connect to server","*":"See http://localhost:8024/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/mailman/listinfo/mediawiki-api-announce> for notice of API deprecations and breaking changes."}}

并且:
http://localhost:8024/load.php?debug=false&lang=pl&modules=diffMatchPatch,papaparse,rangefix,spark-md5,treeDiffer,unicodejs|ext.visualEditor.articleTarget,base,core,data,desktopArticleTarget,desktopTarget,diffing,icons,language,mediawiki,moduleIcons,mwalienextension,mwcore,mwextensionmessages,mwextensions,mwformatting,mwgallery,mwimage,mwlanguage,mwlink,mwmeta,mwsave,mwsignature,mwtransclusion,welcome|ext.visualEditor.core.desktop|ext.visualEditor.mwextensions.desktop|ext.visualEditor.mwimage.core|jquery.uls.data|mediawiki.action.view.redirectPage|mediawiki.diff.styles|mediawiki.language.names|mediawiki.page.gallery.styles|mediawiki.skinning.content.parsoid|mediawiki.widgets|mediawiki.widgets.MediaSearch,UserInputWidget|oojs-ui.styles.icons-layout,icons-user,icons-wikimedia&skin=vector&version=0ixr96x

并且:
http://localhost:8024/api.php

{"options":"success"}

更新:

我在其他地方发现你需要在 localSettings.php 中设置 parsoid:8000 并在 parsoida 变量中设置 mediawiki:80/api.php。
从现在开始,我有一个 500 错误。

https://www.mediawiki.org/wiki/Extension:VisualEditor#Troubleshooting
几个原因。不知道怎么查。
我在这些容器中没有 php-curl。我不知道如何重写。地址中不再有任何错误。

设置:
在 LocalSettings.php:
'url' => 'parsoid:8000',
在docker-compose.yml:
PARSOID_DOMAIN_localhost: http://mediawiki:80/api.php

完成。
这些地址是有罪的。