Ich habe ein problem und weiss nicht so genau ob es ein Windows / Apache Problem ist oder ein PHP problem ist, Ich versuche Media Wiki zu installieren, und hatte einen Artickel gefunden der sagte wie man Zwei Wiki's auf einem Server laufen lassen kann.
Hier ist der Artickel
http://www.steverumberg.com/wiki/index. ... Method_One
Was also passieren soll ist das die seite geschpeichert wird mit "Output Buffer" ob_start und dan umgesetzt wird damit die richtigen URL daten ersetzt werden. Mit preg_replace, die sache ist ich habe versucht jede menge "print" und echo lienien hunzuzufuerhren, um herauszufinden wo es abgestuertzt ist. Es scheint zu sein das der "Variable" $text nie etwas zum kauen hatt.
Un deswegen nicht funkzuiniert. $text ist einfach leer.
Ich habe mehr ueber ob_start gelesen, und es sagte...:
Warning
Some web servers (e.g. Apache) change the working directory of a script when calling the callback function. You can change it back by e.g. chdir(dirname($_SERVER['SCRIPT_FILENAME'])) in the callback function.
Also habe ich das hinzugefuegt, und immer noch nichts... ich habe den Wehrt auch in ein print gefuegt, und das Resultat wahr D:\WWW\mediwiki\index.php1, was sich richtig scheint.... Ich weiss also nicht was hier falsh ist aber wolte mal fragen was ihre erfahrung mit ob_start Apache, un windows ist.
Das ganze Program von der seite... :
- Code: Select all
# Use output buffering to convert links to refer to the correct CRE version
$sr_WikiCode = $_REQUEST['w'];
if($sr_WikiCode == "")
{
die('No valid wiki specified');
}
#"http://' . $_SERVER["SERVER_NAME"] . '/index.php'
#
$sr_RelLinkPattern = '/"\\/mywiki\\/index.php([^"]*)"/';
$sr_RelLinkSub = '"/mywiki/index.php$1?w=' . $sr_WikiCode . '"';
#
$sr_AbsLinkPattern = '/"http:\\/\\/' . $_SERVER["SERVER_NAME"] . '\\/mywiki\\/index.php([^"]*)"/ <\\/mywiki\\/index.php([^> ';
$sr_AbsLinkSub = '"http://' . $_SERVER["SERVER_NAME"] . '/mywiki/index.php$1?w=' . $sr_WikiCode . '"';
#
function sr_TransformWikiLinks($text)
{
global $sr_RelLinkPattern;
global $sr_RelLinkSub;
global $sr_WikiCode;
global $sr_AbsLinkPattern;
global $sr_AbsLinkSub;
return preg_replace($sr_AbsLinkPattern, $sr_AbsLinkSub, preg_replace($sr_RelLinkPattern, $sr_RelLinkSub, $text));
}
#
ob_start('sr_TransformWikiLinks');
#and placing the following line at the end of index.php (I don't think it's needed, actually):
ob_end_flush();
Vielen Dank,
-Derek Crosby