Apache mod_rewrite, "[0-9]" VS "\ d"

  • joebert
  • Weathered
  • Genius
  • Benutzeravatar
  • Registriert: Feb 10, 2004
  • Beiträge: 11883
  • Loc: Clearwater, FL
  • Status: Offline

Beitrag Oktober 24th, 2009, 5:13 pm

Ive zurückzuführen auf eine Fehlfunktion RewriteRule gehen von einem Server auf einen anderen Server wieder auf die Verwendung von "\ d" in einer RewriteRule vs using "[0-9]" in der RewriteRule.

Jeder, der mit, welche Version von Apache, mod_rewrite, Betriebssystem, etc. die Verwendung von "\ d" begann man in RewriteRule?
Why yes, yes I am.
  • Anonymous
  • Bot
  • No Avatar
  • Registriert: 25 Feb 2008
  • Beiträge: ?
  • Loc: Ozzuland
  • Status: Online

Beitrag Oktober 24th, 2009, 5:13 pm

  • Bigwebmaster
  • Site Admin
  • Site Admin
  • Benutzeravatar
  • Registriert: Dez 20, 2002
  • Beiträge: 7349
  • Loc: Seattle, WA
  • Status: Offline

Beitrag Oktober 29th, 2009, 10:56 am

Ich glaube nicht, \ d ist für jede mod_rewrite Regeln gültig. Das ist gut für reguläre Ausdrücke mit PHP und PERL-Werke, aber Apache mod_rewrite, sind deutlich geringer, und ich schreibe immer \ d als 0-9 und \ w als a-zA-Z (und alle anderen Zeichen wollte hier wie _).
Ozzu Hosting - Want your website on a fast server like Ozzu?
Contact US for more information about our plans and rates
  • joebert
  • Weathered
  • Genius
  • Benutzeravatar
  • Registriert: Feb 10, 2004
  • Beiträge: 11883
  • Loc: Clearwater, FL
  • Status: Offline

Beitrag Oktober 29th, 2009, 11:16 am

Es funktioniert auf meinem Feld hier zu Hause. Eigentlich habe ich nur angeschaut und es funktioniert auf ein Ozzu Hosting-Server zu. :)

PHP Code: [ Download ] [ Select ]
<?php
echo $_GET['a'];
?>
  1. <?php
  2. echo $_GET['a'];
  3. ?>


APACHE Code: [ Download ] [ Select ]
RewriteEngine on
RewriteBase /temp/
 
RewriteRule ^(\d)\.html$ index.php?a= [L]
 
  1. RewriteEngine on
  2. RewriteBase /temp/
  3.  
  4. RewriteRule ^(\d)\.html$ index.php?a= [L]
  5.  


Der einzige große Unterschiede kann ich zwischen den Ozzu-Server zu melden, auf meinen Rechner, und der alte Server, der den alten Server ein 1.3.x-Version von Apache ausgeführt wird, während die anderen auf irgend einen Zweig der 2.xx sind

Im Denken eines der 2.x x Zweige der Apachen eingeführt mod_rewrite bessere Unterstützung für PCRE. Ich kann nur an apache.org zu finden, ist ein Notiz über ihn mit PCRE , Aber nicht ins Detail gehen, "wie" unterstützt es ist und Im nicht etwas zu finden, über wann es begann.
Why yes, yes I am.
  • Bigwebmaster
  • Site Admin
  • Site Admin
  • Benutzeravatar
  • Registriert: Dez 20, 2002
  • Beiträge: 7349
  • Loc: Seattle, WA
  • Status: Offline

Beitrag Oktober 29th, 2009, 11:20 am

Ahh, dass der Fall sein kann. Ich habe nie Einblick in zu sehen, ob sie Unterstützung bei der 2.xx Zweig verbessert. Das ist gut zu wissen, wenn.
Ozzu Hosting - Want your website on a fast server like Ozzu?
Contact US for more information about our plans and rates
  • joebert
  • Weathered
  • Genius
  • Benutzeravatar
  • Registriert: Feb 10, 2004
  • Beiträge: 11883
  • Loc: Clearwater, FL
  • Status: Offline

Beitrag Oktober 29th, 2009, 11:24 am

Alright fand ich ein Changelog mit etwas Gutes. :D

http://httpd.apache.org/docs/2.2/new_features_2_0.html

Quote:
Bibliothek für reguläre Ausdrücke aktualisiert
Apache 2.0 enthält die Perl Compatible Regular Expression Library (PCRE). Auswertung aller regulären Ausdrücke wird nun die mächtigen Perl 5 Syntax.
Why yes, yes I am.

Buchung Informationen

  • Beiträge in diesem Thema: 5 Beiträge
  • Mitglieder in diesem Forum: 0 Mitglieder und 33 Gäste
  • Du darfst keine neuen Themen in diesem Forum erstellen.
  • Du darfst keine Antworten zu Themen in diesem Forum erstellen.
  • Du darfst deine Beiträge in diesem Forum nicht ändern.
  • Du darfst deine Beiträge in diesem Forum nicht löschen.
  • Du darfst keine Dateianhänge in diesem Forum erstellen.
 
 

© Unmelted Enterprises 1998-2009. Angetrieben durch phpBB © 2001-2009 phpBB Group.