Hi, using a Python script as a Rewrite Map with MapType prg in Apache 2.4, I'm having trouble passing the value back to Apache.
The log says "map lookup OK", but the value is empty. According to the Apache documentation (https://httpd.apache.org/docs/current/rewrite/rewritemap.html#prg), the script "should return one new-line terminated response string on STDOUT" which is then used as the rewrite target. I have tried to do this using: sys.stdout.write(newValue + "/n") sys.stdout.flush() However, Apache receives only an empty return value (with no error). On Stackoverflow and others, I found and tried out some examples, which in some cases where quite old, so probably written for older versions. The following is what I extracted from the more current hints I could find. *.conf RewriteEngine On RewriteMap extrw "prg:/opt/extrw.py" RewriteRule "^(.*)" "${extrw:%{REQUEST_URI}}" /opt/extrw.py import sys while True: newValue = "/index.html" # placeholder for testing sys.stdout.write(newValue + "/n") sys.stdout.flush() log for curl 127.0.0.1/abc init rewrite engine with requested uri /abc applying pattern '^(.*)' to uri '/abc' map lookup OK: map=extrw key=/abc -> val= rewrite '/abc' -> '' local path result: The expected result would be to have "map lookup OK: map=extrw key=/abc -> val=/index.html" in the third line. Any help would be appreciated! Thanks! Benedikt -- https://mail.python.org/mailman/listinfo/python-list