tru*_*ype 4 apache ubuntu mod-rewrite mediawiki amazon-web-services
我使用本指南安装 mediawiki 版本 1.27.0。安装进行得很顺利,一切正常。
目前在 url 中仍然有 index.php,如下所示:http://example.com/index.php/Main_Page
这是我正在使用的:
我将仔细阅读说明,并列出我遇到的问题。
1. 在说明中,他们假设您的 mediawiki 安装是在/w.
嗯,我的安装在这里/var/www/html/
2.找到正确的apache2文件
我拥有 root 访问权限,因此我假设我将使用两个文件/etc/apache2/apache2.conf来AllowOverride All编辑/etc/apache2/sites-available/000-default.conf与 VirtualHost 部分相关的任何内容。
3. 设置重写规则
在我的/etc/apache2/sites-available/000-default.conf文件中,在该<VirtualHost *:80>部分中,我添加了这些行
RewriteEngine On
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L]
我知道这不适合我的设置,因为它使用 /wiki 和 /w 文件路径,而这些文件路径甚至不存在,但我不确定应该放置什么。
4.更改LocalSettings.php
由于同样的原因,这一步也让我感到困惑。它说 set $wgScriptPath = "/w";,这是一个我没有的目录,而 set $wgArticlePath = "/wiki/$1";,它不仅是我没有的目录,而且该变量甚至不存在于 LocalSettings.php 文件中。
我想如果我理解了第一步,将目录更改为/w,那么我就可以得到其余的内容,但显然,我无法将 /var/www/html 更改为 /w ,而不破坏所有内容。提前致谢。
对于所有不在主机上的默认子目录中运行 MediaWiki的人(意味着不喜欢/w/或/wiki/)配置您.htaccess喜欢的:
RewriteEngine On
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^(.*)$ index.php [L]
Run Code Online (Sandbox Code Playgroud)
并将文章路径添加到您的LocalSettings.php:
$wgArticlePath = "/$1";
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           2308 次  |  
        
|   最近记录:  |