Mailinglisten-Archive |
Hallo, ich habe hier den Apache 1.3.12 mit PHP 4.0.1pl2 auf Windows 2000. Ich wollte heute mal, nach der Lektüre des entsprechenden Kapitels im Buch von T&T, mit mod_rewrite rumspielen, bis jetzt ohne Erfolg. Folgende Situation: 1.) VirtualHost "test" 2.) Folgende Settings sowohl in einem .htaccess im / von http://test/ als auch im <VirtualHost>...</VirtualHost> Block für test in der httpd.conf ausprobiert: RewriteEngine On RewriteBase / RewriteRule ^[0-9a-z]{32}/(.+) /$1 3.) Folgende Funktion wird in http://test/index.php aufgerufen: function session_start_from_rewrite() { global $HTTP_HOST, $REQUEST_URI; ereg("/([0-9a-z]{32})", $REQUEST_URI, $regs); $session_id = $regs[1]; if(!isset($session_id) || empty($session_id)) { srand((double)microtime()*1000000); $session_id = md5(uniqid(rand())); $destination = "http://$HTTP_HOST/$session_id$REQUEST_URI"; header("Location: $destination"); } session_id($session_id); session_start(); } Wenn ich nun http://test/index.php lade, so erfolgt der Re-Direct auf http://test/sesionid/index.php zwar korrekt, aber ich bekomme für diese URL einen Error 404, da der Apache offensichtlich versucht die Datei index.php im nicht existenten Verzeichnis /sessionid/ zu öffnen. Nach soviel Vorrede nun endlich meine Frage: Funktioniert mod_rewrite auf Win32 nicht (korrekt)? Oder stimmt was anderes mit meiner Umsetzung nicht? Ich hatte leider noch keine Möglichkeit das ganze auf einer LAMPe zu testen. AHA, Sebastian -- <?php $a=explode(" " ,"119 130 128 129 45 110 123 124 129 117 114 127 45 ". "125 117 125 45 117 110 112 120 114 127");for($i=0;$i<sizeof($a);$i++)print chr($a[$i]-13);// http://gravedancer.rc5.de/ | sebastian.bergmann_(at)_web.de ?>
php::bar PHP Wiki - Listenarchive