MediaWiki 中的 MathJax:显示转义语法,控制台有 404 错误
MathJax in MediaWiki: escaped syntax is shown, console has 404 errors
我在私人服务器上安装了 mediawiki-1.26.2
并想在其中显示 latex
公式。所以我决定使用 Extension:MathJax
.
起初我安装了 MathJax 的本地副本来渲染方程(在服务器的顶层:/var/www/html/mediawiki-1.26.2/
)。完成安装后,我通过访问 http://(Server)/MathJax/test 对其进行了测试,该页面告诉我“MathJax 似乎在工作!”。
然后我下载了扩展,提取存档,将其重命名为“MathJax”并将其移动到 mediawiki-1.26.2
的“extensions”子目录中。之后,我在 [local MathJax location]/config/local
中创建了符号 link 到“mwMathJaxConfig.js”,即“/var/www/html/mediawiki-1.26.2/MathJax/config/local”目录。所以已经存在两个文件:
local.js
mwMathJaxConfig.js
(符号link)
然后我把“mwMathJaxConfig.js”的最后一行改成了:
MathJax.Ajax.loadComplete("_SUBSTITUTE YOUR URL___/mathjax/config/local/mwMathJaxConfig.js");
对此:
MathJax.Ajax.loadComplete("http://localhost/MathJax/config/local/mwMathJaxConfig.js");
因为 extension page 说:“您可能需要修改 mwMathJaxConfig.js 文件才能使它工作......”。
所有这些之后,我测试了是否正确安装了扩展程序? (wiki → 特殊页面 → 版本 → 安装的扩展部分)“MathJax”的名字在那里。
但是当我尝试在 mediawiki
中展示乳胶时,即使是像这样的简单术语:
We consider, for various values of $s$, the $n$-dimensional integral
:<math> \frac{f}{g} </math>
显示不正确。结果是:
We consider, for various values of $s$, the $n$-dimensional integral
\[ \frac{f}{g} \]
您可以看到 :<math>
被 \[
取代,</math>
被 \]
取代。所以我猜 MathJax
已加载但未正确加载,问题出在 mwMathJaxConfig.js
.
的最后一行
另外我将页面保存为 html 并查看了它的代码,只有这部分代码与 MathJax
:
有关
<script type="text/javascript" src="./PageName_files/MathJax.js"> </script>
以上代码不在head
中,PageName
是保存页面的名称。我认为它被替换了,而不是 MathJax
文档中描述的这段代码:
<script type="text/javascript" async src="path-to-MathJax/MathJax.js?config=TeX-MML-AM_CHTML"></script>
我查看了 MathJax 文档中的 Third-party Extensions,但不明白其含义。
我还检查了 [local MathJax location]/config/local
中的 local.js
文件,其最后一行是:
MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js");
我是否必须更改最后一行并替换另一个字符串而不是 [MathJax]
?
适用于 Davide Cervone 和 hasanghaforian 的解决方案:
本地MathJax的目录名称必须是mathjax
而不是MathJax
,才能正确显示\frac{f}{g}。
浏览器控制台中显示两个错误:
- MathJax.js?config=TeX-AMS-MML_HTMLorMML-full,local/mwMathJax Config:19 GET http://localhost/mathjax/extensions/TeX/xypic.js?V=2.7.0
- MathJax.js?config=TeX-AMS-MML_HTMLorMML-full,local/mwMathJax Config:19 GET http://localhost/mathjax/extensions/fp.js?V=2.7.0 404(未找到).
这两个文件是名为 XyJax 的 third-party 扩展的一部分,用于处理名为 xypic 的交换图。我怀疑您安装的 MediaWiki 扩展被配置为加载它,您需要从上面的 link 中单独获取它。我对扩展了解不多,但我认为这些引用是对旧版本的引用,并且 xypic.js 和 fp.js 已在更高版本中合并。如果你不想做交换图,你可以从 mwMathJaxConfig 配置文件中删除它们。
我在私人服务器上安装了 mediawiki-1.26.2
并想在其中显示 latex
公式。所以我决定使用 Extension:MathJax
.
起初我安装了 MathJax 的本地副本来渲染方程(在服务器的顶层:/var/www/html/mediawiki-1.26.2/
)。完成安装后,我通过访问 http://(Server)/MathJax/test 对其进行了测试,该页面告诉我“MathJax 似乎在工作!”。
然后我下载了扩展,提取存档,将其重命名为“MathJax”并将其移动到 mediawiki-1.26.2
的“extensions”子目录中。之后,我在 [local MathJax location]/config/local
中创建了符号 link 到“mwMathJaxConfig.js”,即“/var/www/html/mediawiki-1.26.2/MathJax/config/local”目录。所以已经存在两个文件:
local.js
mwMathJaxConfig.js
(符号link)
然后我把“mwMathJaxConfig.js”的最后一行改成了:
MathJax.Ajax.loadComplete("_SUBSTITUTE YOUR URL___/mathjax/config/local/mwMathJaxConfig.js");
对此:
MathJax.Ajax.loadComplete("http://localhost/MathJax/config/local/mwMathJaxConfig.js");
因为 extension page 说:“您可能需要修改 mwMathJaxConfig.js 文件才能使它工作......”。
所有这些之后,我测试了是否正确安装了扩展程序? (wiki → 特殊页面 → 版本 → 安装的扩展部分)“MathJax”的名字在那里。
但是当我尝试在 mediawiki
中展示乳胶时,即使是像这样的简单术语:
We consider, for various values of $s$, the $n$-dimensional integral
:<math> \frac{f}{g} </math>
显示不正确。结果是:
We consider, for various values of $s$, the $n$-dimensional integral
\[ \frac{f}{g} \]
您可以看到 :<math>
被 \[
取代,</math>
被 \]
取代。所以我猜 MathJax
已加载但未正确加载,问题出在 mwMathJaxConfig.js
.
另外我将页面保存为 html 并查看了它的代码,只有这部分代码与 MathJax
:
<script type="text/javascript" src="./PageName_files/MathJax.js"> </script>
以上代码不在head
中,PageName
是保存页面的名称。我认为它被替换了,而不是 MathJax
文档中描述的这段代码:
<script type="text/javascript" async src="path-to-MathJax/MathJax.js?config=TeX-MML-AM_CHTML"></script>
我查看了 MathJax 文档中的 Third-party Extensions,但不明白其含义。
我还检查了 [local MathJax location]/config/local
中的 local.js
文件,其最后一行是:
MathJax.Ajax.loadComplete("[MathJax]/config/local/local.js");
我是否必须更改最后一行并替换另一个字符串而不是 [MathJax]
?
适用于 Davide Cervone 和 hasanghaforian 的解决方案:
本地MathJax的目录名称必须是mathjax
而不是MathJax
,才能正确显示\frac{f}{g}。
浏览器控制台中显示两个错误:
- MathJax.js?config=TeX-AMS-MML_HTMLorMML-full,local/mwMathJax Config:19 GET http://localhost/mathjax/extensions/TeX/xypic.js?V=2.7.0
- MathJax.js?config=TeX-AMS-MML_HTMLorMML-full,local/mwMathJax Config:19 GET http://localhost/mathjax/extensions/fp.js?V=2.7.0 404(未找到).
这两个文件是名为 XyJax 的 third-party 扩展的一部分,用于处理名为 xypic 的交换图。我怀疑您安装的 MediaWiki 扩展被配置为加载它,您需要从上面的 link 中单独获取它。我对扩展了解不多,但我认为这些引用是对旧版本的引用,并且 xypic.js 和 fp.js 已在更高版本中合并。如果你不想做交换图,你可以从 mwMathJaxConfig 配置文件中删除它们。