再次,我在Mediawiki中出現了一個奇怪的失敗。如果一個鏈接被格式化這樣的:Mediawiki顯示自己的PHP源代碼
www.path-to-my-wiki.net/wiki_path/index.php?title=blah
服務器會提示出的源代碼(不是開玩笑) php文件!
(樣品:)
<?php
/**
* This is the main web entry point for MediaWiki.
*
...
*
* @file
*/
# Initialise common code
$preIP = dirname(__FILE__);
require_once("$preIP/includes/WebStart.php");
# Initialize MediaWiki base class
require_once("$preIP/includes/Wiki.php");
$mediaWiki = new MediaWiki();
wfProfileIn('main-misc-setup');
OutputPage::setEncodings(); # Not really used yet
$maxLag = $wgRequest->getVal('maxlag');
if(!is_null($maxLag) && !$mediaWiki->checkMaxLag($maxLag)) {
exit;
}
如果該鏈接將是這樣的:
www.path-to-my-wiki.net/wiki/blah
服務器將不提示出PHP源代碼,但需要的頁面。
我還沒有改變任何有關網絡服務器和Mediawiki的配置,而這個wiki無法從互聯網上訪問。但我懷疑我不是唯一一個和這個Mediawiki合作的人。
我認爲你需要重寫網址......你可以在htaccess文件中做到這一點 –
服務器配置錯誤 - 它不會將php文件視爲php腳本,而是將它們視爲純文本文件,並將其作爲服務對象。使用'/ wiki/blah/...'版本,可能會有一個mod_rewrite + htaccess集合,將PHP文件視爲php腳本。 –