It would be much better if you could use separate directories instead of
renaming index.php. Renaming index.php is not really a supported
configuration. There's the obvious problem of how do other scripts, like
load.php know what wiki is being referred to.
If you're really intent on doing this, You can try ensuring that $wgScript
is set appropriately for each wiki (E.g. $wgScript = '/w/andra.php'; for
the andra one). However, there are probably places (especially for
extensions) where index.php is hardcoded, and as i mentioned before, there
are other entry points then index.php like load.php and api.php which will
be confused by this. I expect that this setup will break in subtle ways.
You would also have to ensure there are separate image directories for each
wiki or mediawiki will get confused.
p.s. ereg_replace is being removed from php, you should use preg_replace
instead.
--
bawolff
On Thu, Dec 12, 2019 at 5:54 PM Pascal GREGIS <grapos(a)free.fr> wrote:
Hello everyone,
I have troubles running several wikis on a same installation.
In fact I cannot use neither symlinks nor subdomain redirections to do it.
So I have tried a hand-mde solution with a copy of index.php.
i.e. : I want to run 4 wikis, that I have called :
- andra
- anthony
- nita
- crep
To go to andra for example I type the address :
pascal.lautre.net/w/andra.php
and I have created a LocalSettings-$wikiname.php for each of the 4 wikis,
setting a switch in the main LocalSettings.php to include the appropriate
one.
But I've got all my vairables and paths erased when the wiki redirects, it
calls index.php/Accueil for example and I have no way to know what was the
original call.
I have even tried to use a hook, the BeforePageRedirect hook, but it
worked only for loading the Accueil page (I guess it would be called HOme
in english, or Welcome), after, I have the problem again when I try to
connect, the link points to index.php instead of andra.php.
Here is the code of my LocalSettings.php:
<?php
$ppw = "/w";
if (! isset($pascal_request_uri)) {
$pascal_request_uri = split("/", $_SERVER['REQUEST_URI'])[2];
}
$wgHooks['BeforePageRedirect'][] = function ($out, &$redirect, &$code) {
GLOBAL $pascal_request_uri;
GLOBAL $ppw;
$redirect = ereg_replace("/index.php", "/$pascal_request_uri",
$redirect);
return true;
};
switch ($pascal_request_uri) {
case "andra.php":
case "anthony.php":
case "nita.php":
case "crep.php":
require_once("LocalSettings-$pascal_request_uri");
break;
default:
echo "<p>NO wiki specified. please choose a wiki, ex: <br>\n";
echo $_SERVER['SERVER_NAME'] . "$ppw/idees.php<br>\n";
exit(1);
}
Thank you for any help!
Pascal
_______________________________________________
MediaWiki-l mailing list
To unsubscribe, go to:
https://lists.wikimedia.org/mailman/listinfo/mediawiki-l