mod_rewrite-Pack für 2.1.x

Sould
Das Problem ist. wenn ich ein update mache, dann habe ich ganzen Hacks weg und das will ich nicht, was gibt es den dazu für eine alternative ??? Aber mit der Seite aus dem anderem Forum wo man dem mod_rewrite mit installieren kann für die 2.3.X version ist doch super, das werde ich auf jeden fall ausprobieren :-D Bin ich mal gespannt... und mein PR ist erst bei 2 :-( Den will ich langsam auch mal höher haben, hatte ihn auch schon auf 3... aber das dauert nun erst mal wieder bis zur nächsten Aktuallisierung..... Ich biete in kürze auch selbst die PR funktion an Augenzwinkern Könnt ihr euch demnächst auch bei mir anmelden :-D hrhrhr...
TheMastaKilla
Stimmt .. deswegen habe ich getüftelt ... in der Y****** DB müsste in Kürze mein Tutorial freigeschaltet sein...

Falls du das ganze jetzt schonmal versuchen willst :

http://www.kostenlose-pc-hilfe.de/thread,threadid-757.html
-=nX=-
Hi

Ich hab den ganzen Thread gelesen aber noch nicht verstanden wie ich das "sid-XXXXXXXXXXXXX.htm" am Ende der URLs wegkriege.

Gruß
nX
TheMastaKilla
Benutze die Suchen ersetzen Funktion im ACP (Templates)

Suchen index.php ersetzen durch index.html

Leider kann man aus irgendwelchen Gründen die SessionID's speziell >SID_ARG_2ND_UN nicht komplett aus den Templates mit <if($wbbuserdata['userid'])><then></then></if> ausklammern...

Mache folgendes :

Öffne die session.php im acp/lib

Suche :


code:
1:
2:
3:
4:
5:
else {
	$SID_ARG_1ST = "?sid=$sid";
	$SID_ARG_2ND = "&amp;sid=$sid";
	$SID_ARG_2ND_UN = "&sid=$sid";
}


Ersetze durch :

code:
1:
2:
3:
4:
5:
else {
	$SID_ARG_1ST = "";
	$SID_ARG_2ND = "";
	$SID_ARG_2ND_UN = "";
}


Greetz
-=nX=-
Zitat:
Original von TheMastaKilla
Öffne die session.php im acp/lib

Suche :


code:
1:
2:
3:
4:
5:
else {
	$SID_ARG_1ST = "?sid=$sid";
	$SID_ARG_2ND = "&amp;sid=$sid";
	$SID_ARG_2ND_UN = "&sid=$sid";
}


Kann ich bei meinem wBB 2.1.6 leider nicht finden.
Kanner aber gut sein, dass ich an der session.php schonmal rumgefummelt habe.



Hier meine session.php
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
<?php
mt_srand(intval(substr(microtime(), 2, 8)));
if(mt_rand(1,100)==50) {
 $db->unbuffered_query("DELETE FROM bb".$n."_adminsessions WHERE userid=0 AND lastactivity<".(time()-$adminsession_timeout),1);
 $db->unbuffered_query("DELETE FROM bb".$n."_sessions WHERE lastactivity<".(time()-$sessiontimeout),1);
 $db->unbuffered_query("DELETE FROM bb".$n."_searchs WHERE searchtime<".(time()-86400*7),1);
}
$REMOTE_ADDR = getIpAddress();
$HTTP_USER_AGENT = substr($_SERVER['HTTP_USER_AGENT'], 0, 100);
$REQUEST_URI = $_SERVER['REQUEST_URI'];
if(!$REQUEST_URI) {
 if($_SERVER['PATH_INFO']) $REQUEST_URI = $_SERVER['PATH_INFO'];
 else $REQUEST_URI = $_SERVER['PHP_SELF'];
 if($_SERVER['QUERY_STRING']) $REQUEST_URI.="?".$_SERVER['QUERY_STRING'];
}
$REQUEST_URI = substr(basename($REQUEST_URI), 0, 250);
if(!strstr($REQUEST_URI,".")) $REQUEST_URI="index.php";

unset($wbbuserdata);
unset($session);
unset($wbb_userid);
unset($styleid);
unset($langid);
if(isset($_COOKIE[$cookieprefix.'userid'])) $wbb_userid=intval($_COOKIE[$cookieprefix.'userid']);

if(isset($_REQUEST['styleid'])) $styleid = intval($_REQUEST['styleid']);
if(isset($_REQUEST['langid'])) $langid = intval($_REQUEST['langid']);

if(isset($_GET['sid'])) $sid=$_GET['sid'];
elseif(isset($_POST['sid'])) $sid=$_POST['sid'];
else $sid="";

if(!$sid && isset($_COOKIE[$cookieprefix.'cookiehash'])) $sid=$_COOKIE[$cookieprefix.'cookiehash'];
if($sid && isset($_COOKIE[$cookieprefix.'cookiehash']) && $_COOKIE[$cookieprefix.'cookiehash'] && $sid!=$_COOKIE[$cookieprefix.'cookiehash']) $falsecookiehash=1;

if($allowloginencryption==1)
{
	// generate authentificationcode
	unset($authentificationcode);
	$need=needNewAuthentificationcode();
	if($need==0 || $need==1) $authentificationcode=makeAuthentificationcode();
}

$createsession=0;
if($sid) {
 $session = $db->query_first("SELECT * FROM bb".$n."_sessions WHERE sessionhash = '".addslashes($sid)."' AND ipaddress = '".addslashes($REMOTE_ADDR)."' AND useragent = '".addslashes($HTTP_USER_AGENT)."'");
 if($session['sessionhash']) {
  $wbb_userid=$session['userid'];
  $session['lastactivity'] = time();
  if(!isset($styleid)) $styleid=$session['styleid'];
  if(!isset($langid)) $langid=$session['langid'];
 }
 else $createsession = 1;
}
else $createsession = 1;

if($createsession==1 || $session['userid']==0) {
 if(isset($_COOKIE[$cookieprefix.'userid']) && isset($_COOKIE[$cookieprefix.'userpassword'])) { /* maybe member */
  $wbbuserdata=getwbbuserdata(intval($_COOKIE[$cookieprefix.'userid']),"userid",1);
  if($_COOKIE[$cookieprefix.'userpassword']==$wbbuserdata['password']) { /* member */
   $session = array();
   $session['sessionhash'] = md5(uniqid(microtime()));
   $session['userid'] = intval($_COOKIE[$cookieprefix.'userid']);
   $wbb_userid = $session['userid'];
   $session['ipaddress'] = $REMOTE_ADDR;
   $session['useragent'] = $HTTP_USER_AGENT;
   $session['lastactivity'] = time();
   $session['request_uri'] = $REQUEST_URI;
   if(isset($styleid)) $session['styleid'] = $styleid;
   else $session['styleid']=$wbbuserdata['styleid'];
   if(isset($langid)) $session['langid'] = $langid;
   else $session['langid']=$wbbuserdata['langid'];
   $db->unbuffered_query("DELETE FROM bb".$n."_sessions WHERE userid = '$session[userid]'",1);
   $db->unbuffered_query("INSERT INTO bb".$n."_sessions (sessionhash,userid,ipaddress,useragent,lastactivity,request_uri,styleid,langid,authentificationcode) VALUES ('$session[sessionhash]','$session[userid]','".addslashes($session['ipaddress'])."','".addslashes($session['useragent'])."','$session[lastactivity]','".addslashes($session['request_uri'])."','$session[styleid]','$session[langid]','".((isset($authentificationcode)) ? ($authentificationcode) : (""))."')",1);
   bbcookie("cookiehash",$session['sessionhash'],0);
  }
  else {
   if($createsession==1) $guestsession = 1;
   unset($wbb_userid);
   unset($wbbuserdata);
   bbcookie("userid","",1);
   bbcookie("userpassword","",1);
  } 
 }
 elseif($createsession==1) {
  unset($wbb_userid);
  $guestsession = 1;
 }
 if(isset($guestsession)) { /* guest */
  $db->unbuffered_query("DELETE FROM bb".$n."_sessions WHERE userid='0' AND ipaddress = '".addslashes($REMOTE_ADDR)."' AND useragent = '".addslashes($HTTP_USER_AGENT)."'",1);
  
  $session['sessionhash'] = md5(uniqid(microtime()));
  $session['userid'] = 0;
  $session['ipaddress'] = $REMOTE_ADDR;
  $session['useragent'] = $HTTP_USER_AGENT;
  $session['lastactivity'] = time();
  $session['request_uri'] = $REQUEST_URI;
  if(isset($styleid)) $session['styleid'] = $styleid;
  else $session['styleid']=0;
  if(isset($langid)) $session['langid'] = $langid;
  else {
   if(isset($_SERVER["HTTP_ACCEPT_LANGUAGE"]) && $_SERVER["HTTP_ACCEPT_LANGUAGE"]!="") {
    $acceptLanguages = preg_split('%[,;]%', addslashes(preg_replace('%([a-z]{1,8})-[a-z]{1,8}%i', '$1', $_SERVER['HTTP_ACCEPT_LANGUAGE'])));
    $languages = array();
    $result = $db->query("SELECT languagepackid, languagecode FROM bb".$n."_languagepacks WHERE languagecode IN ('".implode("','", $acceptLanguages)."')");
    while ($row = $db->fetch_array($result)) $languages[$row['languagecode']] = $row['languagepackid'];
    foreach ($acceptLanguages as $acceptLanguage) {
     if (isset($languages[$acceptLanguage])) {
      $langid = $session['langid'] = $languages[$acceptLanguage];
      break;
     }	
    }
    if (!isset($langid)) $session['langid'] = 0;
   }
   else $session['langid']=0;
  }
  $db->unbuffered_query("INSERT INTO bb".$n."_sessions (sessionhash,userid,ipaddress,useragent,lastactivity,request_uri,styleid,langid,authentificationcode) VALUES ('$session[sessionhash]','0','".addslashes($session['ipaddress'])."','".addslashes($session['useragent'])."','$session[lastactivity]','".addslashes($session['request_uri'])."','$session[styleid]','$session[langid]','".((isset($authentificationcode)) ? ($authentificationcode) : (""))."')",1);

  bbcookie("cookiehash",$session['sessionhash'],0);
 }
}

if(!isset($wbbuserdata)) {
 if(isset($wbb_userid) && $wbb_userid!=0)
 {
 	/** read $wbbuserdata using the function getwbbuserdata() (@see functions.php) **/
 	$wbbuserdata=getwbbuserdata($wbb_userid,"userid",1);
 }

 else {
  if(!isset($_COOKIE[$cookieprefix.'lastvisit'])) bbcookie("lastvisit",time(),0);
  /**read $wbbuserdata using the function getwbbuserdata() - search for grouptype .. (@see functions.php) **/
  $wbbuserdata=getwbbuserdata(1,"grouptype",1);
  $wbbuserdata['userid'] = 0;
  $wbbuserdata['username'] = "guest"; //default guestname
  if(!isset($_COOKIE[$cookieprefix.'lastvisit'])) $wbbuserdata['lastvisit'] = time();
  else $wbbuserdata['lastvisit']=intval($_COOKIE[$cookieprefix.'lastvisit']);
  $wbbuserdata['lastactivity'] = time();
  $wbbuserdata['showsignatures'] = $default_register_showsignatures;
  $wbbuserdata['showavatars'] = $default_register_showavatars;
  $wbbuserdata['showimages'] = $default_register_showimages;
  $wbbuserdata['timezoneoffset']=$default_timezoneoffset;
  $wbbuserdata['usecookies']=$default_register_usecookies;
  $wbbuserdata['threadview']=$default_register_threadview;
  $wbbuserdata['startweek']=$default_startweek;
  $wbbuserdata['styleid'] = 0;
  $wbbuserdata['pmpopup'] = 0;
  $wbbuserdata['buddylist'] = "";
  $wbbuserdata['ignorelist'] = "";
  $wbbuserdata['umaxposts'] = 0;
  $wbbuserdata['daysprune'] = 0;
  
  if($wbbuserdata['lastactivity']< time()-$sessiontimeout) {
   bbcookie("lastvisit",$wbbuserdata['lastactivity'],0);
   $wbbuserdata['lastvisit'] = $wbbuserdata['lastactivity'];
  }
 } 
}
$sid = $session['sessionhash'];
$session['hash']=$session['sessionhash'];
unset($session['sessionhash']);

if(isset($falsecookiehash)) {
 bbcookie("cookiehash",$session['hash'],0);
 $wbbuserdata['nosessionhash']=0;
}
if(isset($wbbuserdata['nosessionhash']) && $wbbuserdata['nosessionhash']==1) $session['hash']="";
if(isset($styleid)) $wbbuserdata['styleid']=$styleid;
if(isset($langid)) $wbbuserdata['langid']=$langid;
if(!isset($wbbuserdata['dateformat']) || !$wbbuserdata['dateformat']) $wbbuserdata['dateformat']=$dateformat;
if(!isset($wbbuserdata['timeformat']) || !$wbbuserdata['timeformat']) $wbbuserdata['timeformat']=$timeformat;

if($wbbuserdata['userid']!=0) {
 $pmpopup_reset = (($wbbuserdata['pmpopup']==2 && (!isset($_POST) || count($_POST)==0) && $filename!="attachment.php" && $filename!="attachmentedit.php" && $filename!="logout.php" && $filename!="markread.php" && $filename!="misc.php" && $filename!="modcp.php" && $filename!="polledit.php" && $filename!="register.php" && $filename!="search.php" && ($filename!="thread.php" || !isset($_REQUEST['goto'])) && $filename!="threadrating.php" && $filename!="usercp.php") ? (", pmpopup=1") : (""));
 
 if($wbbuserdata['lastactivity']< time()-$sessiontimeout) {
  if($offline != 1 || $wbbuserdata['can_view_off_board'] != 0) {
   $db->unbuffered_query("UPDATE bb".$n."_users SET lastvisit=lastactivity, lastactivity = '".time()."', langid='$wbbuserdata[langid]'".$pmpopup_reset." WHERE userid = '$wbbuserdata[userid]'",1);
   $wbbuserdata['lastvisit'] = $wbbuserdata['lastactivity'];
   $wbbuserdata['lastactivity'] = time();
     
   checkPosts4AI();
   sessionupdate();
  }
 }
 else {
  $db->unbuffered_query("UPDATE bb".$n."_users SET lastactivity = '".time()."', langid='$wbbuserdata[langid]'".$pmpopup_reset." WHERE userid = '$wbbuserdata[userid]'",1);
  $wbbuserdata['lastactivity'] = time();
 }
}

if(isset($authentificationcode)) $session['authentificationcode']=$authentificationcode;
?>
Jan
Zitat:
Original von TheMastaKilla
Benutze die Suchen ersetzen Funktion im ACP (Templates)

Suchen index.php ersetzen durch index.html

Leider kann man aus irgendwelchen Gründen die SessionID's speziell >SID_ARG_2ND_UN nicht komplett aus den Templates mit <if($wbbuserdata['userid'])><then></then></if> ausklammern...

Mache folgendes :

Öffne die session.php im acp/lib

Suche :


code:
1:
2:
3:
4:
5:
else {
	$SID_ARG_1ST = "?sid=$sid";
	$SID_ARG_2ND = "&amp;sid=$sid";
	$SID_ARG_2ND_UN = "&sid=$sid";
}


Ersetze durch :

code:
1:
2:
3:
4:
5:
else {
	$SID_ARG_1ST = "";
	$SID_ARG_2ND = "";
	$SID_ARG_2ND_UN = "";
}


Greetz

die variablen $SID_ARG_1ST, $SID_ARG_2ND und $SID_ARG_2ND_UN gibt es erst ab 2.2 oder 2.3...
guhi
hallo,

ich habe mir den hack auch installiert. funktioniert, bis einen wichtigen fehler.

in der registrierung wird die sicherheitsabfrage nicht mehr angezeigt. damit kann sich kein user registrieren.

wo könnte der fehler liegen? ich habe wbb 2.3.3
Jan
der fehler liegt darin, dass der hack fürs wbb 2.1.x gemacht ist und nicht fürs 2.3.x ..
300782191
Ich habe ein Problem.
Bei mir werden die Links zwar dann in der URL Leiste angezeigt, der User auch in dem entsprechenden Bereich, aber man kommt nicht in den Bereich. Woran kann das liegen ?
Eight-Ball120187
Guten Tag,

ich habe alles wie in der Anleitung beschrieben eingebaut
bei einem wbb2.1.5 und es scheint auch alles zu funktionieren,

nur dass die Verlinkung zu den UNTERFOREN immer noch in php erfolgt.

Alles andere wird in html ausgegeben, nur die Unterforen nicht.

Ich könnte mir vorstellen, dass dies etwas mit den Templates zu tun hat?
Kann mir da jemand weiterhelfen?

Ist das Packet eigentlich inzwischen schon so weiterentwickelt worden, dass die Threadtitel in die Url kommen?
300782191
Da es bei mir mit der mod_rewrite.php Datei nicht geht, bin ich gerade dabei mir RewriteRules für alle Links zu machen.
Ich habe aber ein paar Probleme, bei folgenden Sachen:
print
mehrseitigen Boards / Threads
FAQ
search,action-xy Befehl

Ein Beispiel:
code:
1:
RewriteRule print,threadid-(.*),page-(.*)\.htm(.*)$ print.php?threadid=$1$2&amp;page=$t->page


Beim Aufruf kommt
Zitat:
Sie haben einen ungültigen Verweis angegeben. Wenn Sie einem korrekten Link gefolgt sind, sollten Sie den Administrator benachrichtigen.


Wo ist da der Fehler ?
Und wie soll ich es am besten bei den anderen Sachen ( mehrseitigen Boards / Threads
FAQ
search,action-xy Befehl ) machen ?

300782191
Jan
code:
1:
2:
3:
RewriteRule print,threadid-(.*),page-(.*)\.htm(.*)$ print.php?threadid=$1&page=$2
das ist der richtige ausdruck für diesen link.

der fehler war, dass keine php-variablen (in diesem fall $t->page) in der .htaccess aufgerufen werden können, die $-zeichen haben dort einen anderen zweck.
300782191
Ok. Also ich bin jetzt schon sehr sehr viel weiter smile
Jetzt habe ich nur noch ein Problem mit den misc Sachen und search Sachen.

Wenn Du da die entsprechenden RewriteRules hättest, danke Augenzwinkern
JGS-XA Team
Hallo zusammen,

das nutzt aber wenig wenn man aus thread.php eine thread.html macht, schaut euch dazu mal den URL Aufbau von www.macher24.de an, oder
http://www.macher24.de/board.php?boardid=13

Gruß

Timo
300782191
Dafür wird hier wenigstens Mehrseitigkeit untersützt, und ich will nicht wissen, was der Hack kostet ...
JGS-XA Team
Zitat:
Original von 300782191
Dafür wird hier wenigstens Mehrseitigkeit untersützt, und ich will nicht wissen, was der Hack kostet ...


??? ich habe auf umfangreiche Infos verwiesen nicht auf einen Hack den du kaufen sollst großes Grinsen

mit den paar Sachen die gemacht werden schadet ihr euch teilweise mehr als es was bringt, davor wollte ich bewahren, mehr nicht

Gruß

Timo
300782191
Dann sry. und danke für die Warnung Augenzwinkern