Bladeren bron

Handle request paths correctly

Frans Bergman 4 jaren geleden
bovenliggende
commit
2c40c5bf10
1 gewijzigde bestanden met toevoegingen van 7 en 5 verwijderingen
  1. 7 5
      bin/corehandlers.sh

+ 7 - 5
bin/corehandlers.sh

@@ -1,5 +1,7 @@
 #!/bin/sh
 
+REQUEST_PATH="$(echo "$REQUEST_URI" | awk -F'?' '{ print $1 }')"
+
 handler() {
     case "$1" in
         **.md)
@@ -15,17 +17,17 @@ handler() {
 }
 
 handler_body_main() {
-    if [ -d "$SITE_DIR/$REQUEST_URI" ]; then
-        handler "$SITE_DIR/$REQUEST_URI/index.md"
-    elif [ -f "$SITE_DIR/$REQUEST_URI.md" ]; then
-            handler "$SITE_DIR/$REQUEST_URI.md"
+    if [ -d "$SITE_DIR/$REQUEST_PATH" ]; then
+        handler "$SITE_DIR/$REQUEST_PATH"/index.*
+    elif [ -f "$SITE_DIR/$REQUEST_PATH.*" ]; then
+        handler "$SITE_DIR/$REQUEST_PATH".*
     fi
 }
 
 nav_tree() {
     find "$SITE_DIR" |
         sed -E -e "$DIR_FILTER s!^$SITE_DIR!!; $DIR_CLEAN" 2>&1 |
-        sort -u | awk -v req_path="$REQUEST_URI" -F/ '
+        sort -u | awk -v req_path="$REQUEST_PATH" -F/ '
     function p(x, y, s) { for(i=0; i < x-y; i+=1) print s }
     BEGIN { lNF=2; print "<ul>" }
     {