【问题标题】:Short URL for Mediawiki installation in web root在 Web 根目录中安装 Mediawiki 的短 URL
【发布时间】:2014-09-17 14:43:37
【问题描述】:

我的 Web 根目录上运行了一个 Mediawiki 安装。例如。主页可以通过

http://example.com/index.php?title=Main_Page

我想把它改成短网址

http://example.com/Main_Page

我的配置如下

#.htaccess
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*)$ /index.php?title=$1 [PT,L,QSA]
RewriteRule ^.*$ /index.php [L,QSA]

.

// LocalSettings.php
$wgScriptPath = "..";
$wgArticlePath = "/$1";
$wgUsePathInfo = true;

但我在此配置中收到 500 错误。

这是一个有~/user_root/ 文件夹的服务器。此文件夹包含用户根域的公共 HTML 文件,例如user-root.com.

该文件夹包含多个子文件夹,例如在本例中为 ~/user_root/example,可通过上述 URL example.com 访问。

问题是基于此文件夹/子文件夹层次结构和$wgScriptPath 设置吗?应该

$wgScriptPath = "..";

被这个相对路径以外的东西替换?如果您需要更多信息,请告知。

【问题讨论】:

标签: php .htaccess mediawiki short-url


【解决方案1】:

是的,您的$wgScriptPath 是错误的。使用:

$wgScriptPath = "/";

你的重写规则似乎也不太可能是你想要的,尤其是^.*$ /index.php(虽然它可能是无害的,最后出现)。

如果您使用的是根 url 而不是普通的短 url,则需要使用以下内容 而是(以确保现有文件和目录不被视为文章,例如“/index.php”“/images”等):

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^(.*)$ %{DOCUMENT_ROOT}/w/index.php [L]

(Source)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-10
    • 2016-02-05
    • 1970-01-01
    • 2011-01-31
    • 2018-02-05
    • 1970-01-01
    相关资源
    最近更新 更多