2014-09-24 326 views
1

我用這個工具http://shorturls.redwerks.org/爲MediaWiki重寫了一個簡短的URL。 從此出發:http://wikitest.org/fr/index.php/Accueil至此:http://wikitest.org/fr/wiki/Accueil如何從MediaWiki的URL中刪除index.php?

Then I added this code to LocalSettings.php: 
## The URL base path to the directory containing the wiki; 
## defaults for all runtime URL paths are based off of this. 
## For more information on customizing the URLs please see: 
## http://www.mediawiki.org/wiki/Manual:Short_URL 
$wgScriptPath = "/fr"; 
$wgScriptExtension = ".php"; 
$wgArticlePath = "{$wgScriptPath}/wiki/$1"; 
$wgUsePathInfo = true 

但是,當我去我的網站,我得到404未找到。在此服務器上找不到請求的資源!

+0

你的服務器上的重寫規則是怎麼樣的? – leo 2014-09-25 12:14:29

+0

我的服務器中沒有重寫規則。沒有.htaccess我只改變了LocalSettings.php來改變URL。 – 2014-09-26 15:26:57

+1

那就是爲什麼。你需要告訴服務器在這些URL上提供服務。 LocalSettings.php只能更改wiki中的鏈接,而不能更改服務器的行爲 – leo 2014-09-26 18:35:52

回答

4

LocalSettings.php的更改僅影響wiki中的鏈接。您還需要將適當的重寫規則添加到您的服務器,以便實際上有一些內容供用戶查看。在你的情況下,加入這樣的事情.htaccess可能會奏效,假設你正在運行的Apache:

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

你可以找到在the manual您的服務器的詳細說明。

1

在這篇文章中已經有一段時間了,但如果它對別人有幫助。按照我在mediawiki中找到的說明,我可以在我的網站中完成此操作。這是一個MediaWiki Short URL builder http://shorturls.redwerks.org/ 你添加了你想要的路徑,它會引發你添加到你的LocalSettings.php以及web.config的指令 它對我很有效,我希望它適合你。