2017-02-17 3 views
0

Ich versuche, einen Teil meiner URL vor der Übermittlung der Datei zu ersetzen.lighttpd url.rewrite, um einen Teil der URL zu entfernen

Ich nenne

localhost:8080/files/page_home.d41d8.js 

und möchten den Anruf zu

/files/page_home.js 

Nach ändern, dass die Datei wird direkt von lighttpd geliefert werden und nicht auf die fastcgi Backend forwareded werden.

versuchte ich folgendes:

server.modules += ("mod_fastcgi", "mod_rewrite") 

url.rewrite = ("^/files/(([a-zA-Z0-9_]+))\.(([a-zA-Z0-9]))\.js$" => "/files/$1.js") 


$HTTP["url"] !~ "^/files/" { 

fastcgi.server = (
     "/" => ((
       "bin-path" => "/srv/www/cppapp/dist/Debug/GNU-Linux/cppapp.exe", 
       "bin-environment" => (
       "LD_LIBRARY_PATH" => "" 
       ), 
       "socket" => "/tmp/cppapp-fastcgi-socket", 
#    # only 1 process ! 
       "max-procs" => 1, 
       "check-local" => "disable", 
#    "broken-scriptfilename" => "enable" 
       "fix-root-scriptname" => "enable", 
     )) 
) 

} 

Wenn ich in das Protokoll suchen, den Teil ".d41d8." wird nicht ersetzt.

Hat jemand von euch einen Tipp, um dieses Teil zu ersetzen?

Vielen Dank,

Alex

Antwort

0

Wenn jemand für Antwort in Zukunft der Suche ist: Das Problem der reguläre Ausdruck „war ^/files/(([a-zA-Z0-9 _] +)). (([a-zA-Z0-9])). js $ ". Der zweite Teil entsprach nur einer Char/Nummer. Die korrekte Version ist "^/files/(([a-zA-Z0-9 _] +)). (([A-zA-Z0-9] +)). Js $"