如何为 MediaWiki Short URL 配置 .htaccess?

How to configure .htaccess for MediaWiki Short URL?

我在使用 Short URLs 时遇到问题。

我当前的 wiki URL 是:example.com/w/index.php?title=Main_Page

我想要的URL是:example.com/wiki/Main_Page

我遵循了 MediaWiki 的 Apache Short URL Guide and ShortURL Builder,但都不起作用:/wiki/wiki/Main_Page 仍然 return 404 页面未找到。

他们推荐的设置还导致我的整个站点被重定向到 MediaWiki,这是我不想要的。

我添加到 .htaccess 文件中的内容(在网络根文件夹中,而不是 /w):

RewriteEngine On
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L]
RewriteRule ^/?$ %{DOCUMENT_ROOT}/w/index.php [L]

添加到 /w/LocalSettings.php:

$wgScriptPath = "/w";
$wgScriptExtension = ".php";
$wgArticlePath = "/wiki/";
$wgUsePathInfo = true;

需要更改什么才能让我的 url 短片正常工作?

我终于使用 this ShortURL tutorial:

中的设置让它工作了

已添加到根文件夹中的 .htaccess之前 其他站点(如 Wordpress)的规则):

# BEGIN MediaWiki
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^wiki/(.*)$ w/index.php?title= [PT,L,QSA]
RewriteRule ^wiki/*$ w/index.php [L,QSA]
RewriteRule ^wiki$ w/index.php [L,QSA]
</IfModule>
# END MediaWiki

添加到 LocalSettings.php:

$wgScriptPath = "/w";
$wgArticlePath = "/wiki/";
$wgScriptExtension = ".php";
$wgUsePathInfo = true;
$wgResourceBasePath = $wgScriptPath;