/* .htacces Rewrite-Rules */

This commit is contained in:
Sven 2006-12-19 00:40:40 +00:00
parent 82d665e4b2
commit 1489f334c5
1 changed files with 25 additions and 12 deletions

View File

@ -52,18 +52,31 @@ Index: includes/Revision.php
if( $res ) {
$row = $res->fetchObject();
Index: includes/Title.php
===================================================================
--- includes/Title.php (revision 18244)
+++ includes/Title.php (working copy)
@@ -879,6 +879,8 @@
}
else
$url = str_replace( '$1', $dbkey, $wgArticlePath );
+ } else if ( $query && $query != '' ) {
+ $url = str_replace( '$1', $dbkey, $wgArticlePath )."?".$query;
} else {
global $wgActionPaths;
$url = false;
==.htaccess Rewrite-Rules==
Die Hauptarbeit bei dieser Lösung wird von Rewrite-Rules erledigt. Alle Anfragen auf den internen Bereich werden auf index_intern.php umgeleitet. Zusätzlich werden noch 2 Special-Pages definiert:
# Spezial:Internpages - Liste der Seiten im internen Namensraum
# Spezial:Internchanges - RecentChanges nur für den internen Namensraum
Spezial:Log und Spezial:Movepage werden ebenfalls auf den internen Bereich umgeleitet, damit die Links im Log funktionieren bzw. damit man Seiten in den internen Namespace verschieben kann.
Die Kategorie-Seiten werden ebenfalls auf die interne index.php umgeleitet damit die Links zu internen Artikeln in den Kategorien korrekt sind.
<pre>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(Spe[cz]ial:Internpages)$ /mediawiki/index_intern.php?title=Special:Allpages&namespace=100 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(Spe[cz]ial:Internchanges)(\?(.*))?$ /mediawiki/index_intern.php?title=Spezial:Recentchanges&namespace=100&$3 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(Spe[cz]ial:(Log|Movepage).*)$ /mediawiki/index_intern.php?title=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^((Intern|Intern_talk|Kategorie):.*)$ /mediawiki/index_intern.php?title=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /mediawiki/index.php?title=$1 [QSA,L]
</pre>
==Erstellen einer Kopie von index.php für den internen Bereich==