我第一次在我的本地主机(WAMP 服务器,Windows 7)上安装了 MediaWiki,并在成功安装后惊讶地发现我在第一次加载 index.php 时在安装期间启用了有关我启用的扩展的 PHP 错误消息。
下面是 1) 产生的错误消息,2) 我看到的问题,3) 问题的解决方案,最后 4) 我的问题在上下文中重复了其他后续问题。
1)错误信息:
( ! ) 警告:require_once(C:\wamp\www\wikitest\wxtensions\ConfirmEdit\ConfirmEdit.php):无法打开流:C:\wamp\www\wikitest\w\LocalSettings.php 中的参数无效,第 128 行 调用堆栈 # 时间记忆功能位置 1 0.0017 251048 {main}( ) ..\index.php:0 2 0.0033 274688 要求('C:\wamp\www\wikitest\w\includes\WebStart.php')..\index.php:46 3 0.0446 1472088 require_once('C:\wamp\www\wikitest\w\LocalSettings.php') ..\WebStart.php:136 ( ! ) 致命错误:require_once():在 C:\wamp 中打开所需的 'C:\wamp\www\wikitest\wxtensions\ConfirmEdit\ConfirmEdit.php' (include_path='.;C:\php\pear') 失败\www\wikitest\w\LocalSettings.php 在第 128 行 调用堆栈 # 时间记忆功能位置 1 0.0017 251048 {main}( ) ..\index.php:0 2 0.0033 274688 要求('C:\wamp\www\wikitest\w\includes\WebStart.php')..\index.php:46 3 0.0446 1472088 require_once('C:\wamp\www\wikitest\w\LocalSettings.php') ..\WebStart.php:136
2)我看到的问题
在 LocalSettings.php(由 MediaWiki 安装程序生成的文件)的第 128 行,启用的扩展(安装过程中的可选选择)包含在此处,路径中带有反斜杠“\”,而不是所有使用的预期 [forward] 斜杠“/”已安装的 PHP 文件中的其他路径。
require_once "$IP\extensions\ConfirmEdit\ConfirmEdit.php";
require_once "$IP\extensions\WikiEditor\WikiEditor.php";
3) 问题的解决方案
我发现用 [forward] 斜杠替换反斜杠解决了错误并允许 index.php 页面按预期加载。
require_once "$IP/extensions/ConfirmEdit/ConfirmEdit.php";
require_once "$IP/extensions/WikiEditor/WikiEditor.php";
4)为什么首先使用反斜杠?
为什么 MediaWiki 安装程序只在这种情况下在路径中使用反斜杠?
有没有其他人看到这个问题?
我可以做些什么来防止它在以后的安装中发生(以避免每次都必须手动更改路径)?