Mediawiki迁移现有的维基页面shortURL没有反感SEO(维护旧链接)

遵循以下步骤:

 http://www.mediawiki.org/wiki/Manual:Short_URL
 http://www.mediawiki.org/wiki/Manual:Short_URL/Apache

我已经从url迁移了我的维基页面:

 http://acacha.org/mediawiki/index.php/ARTICLENAME

 http://acacha.org/mediawiki/ARTICLENAME

例如,现在看到Apache的文章,你可以去:

http://acacha.org/mediawiki/Apache

但现在我的问题是以下旧链接:

http://acacha.org/mediawiki/index.php/Apache

Mediawiki将其解释为名为“index.php / Apache”的文章。 我不介意不能写index.php开始的文章/但对于SEO是非常重要的旧链接redirect到新的链接。 例如,我想从URLredirect:

 http://acacha.org/mediawiki/index.php/Apache

 http://acacha.org/mediawiki/Apache

我目前的configuration是:

Apache VirtualHost(文件/etc/apache2/conf-available/mediawiki.conf)。 跟随:

ServerName acacha.org ServerAlias www.acacha.org DocumentRoot /var/lib/acacha_mediawiki php_value upload_max_filesize 20M #DOES NOT WORK: #AliasMatch ^/mediawiki/index.php(.*) /var/lib/acacha_mediawiki/w/index.php <Directory /var/lib/acacha_mediawiki/> #If this is uncommented new files uploaded give a Forbidden Error. Example: # http://acacha.org/mediawiki/upload/c/c0/Francesc_fores_identity.png --> SOLVED ADDING +SymLinksIfOwnerMatch above Options +FollowSymLinks +SymLinksIfOwnerMatch AllowOverride All ## http://www.mediawiki.org/wiki/Manual:Short_URL/Apache # Enable the rewrite engine RewriteEngine On LogLevel alert rewrite:trace2 # Short url for wiki pages: old pages #DOES NOT WORK: #RewriteRule ^/?mediawiki/index.php(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L,QSA] #RewriteRule ^/?mediawiki/index.php/(.*)$ %{DOCUMENT_ROOT}/w/index.php/$1 [L,QSA] # Short url for wiki pages RewriteRule ^/?mediawiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [L,QSA] # Redirect / to Main Page RewriteRule ^/*$ %{DOCUMENT_ROOT}/w/index.php [L,QSA] Require all granted </Directory> ... 

Mediawiki安装在:

在/ var / lib中/ acacha_mediawiki / W

和LocalSettings文件:

 ... define('MW_INSTALL_PATH','/var/lib/acacha_mediawiki/w'); ... $wgScriptPath = "/w"; $wgScriptExtension = ".php"; $wgArticlePath = "/mediawiki/$1"; $wgUsePathInfo = true; ... 

是否有可能将现有的mediawiki页面迁移到shortURL,并创build一个从旧URLredirect到新的?

好。 我find一个解决scheme。 我添加了一个redirectMatch:

 RedirectMatch 301 /mediawiki/index.php$ http://acacha.org/mediawiki/Main_Page RedirectMatch 301 /mediawiki/index.php/(.*) http://acacha.org/mediawiki/$1 

之前:

  <Directory /var/lib/acacha_mediawiki/>