forked from rack/rack
-
Notifications
You must be signed in to change notification settings - Fork 0
/
KNOWN-ISSUES
30 lines (23 loc) · 1.05 KB
/
KNOWN-ISSUES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
= Known issues with Rack and ECMA-262
* Many users expect the escape() function defined in ECMA-262 to be compatible
with URI. Confusion is especially strong because the documentation for the
escape function includes a reference to the URI specifications. ECMA-262
escape is not however a URI escape function, it is a javascript escape
function, and is not fully compatible. Most notably, for characters outside of
the BMP. Users should use the more correct encodeURI functions.
= Known issues with Rack and Web servers
* Lighttpd sets wrong SCRIPT_NAME and PATH_INFO if you mount your
FastCGI app at "/". This can be fixed by using this middleware:
class LighttpdScriptNameFix
def initialize(app)
@app = app
end
def call(env)
env["PATH_INFO"] = env["SCRIPT_NAME"].to_s + env["PATH_INFO"].to_s
env["SCRIPT_NAME"] = ""
@app.call(env)
end
end
Of course, use this only when your app runs at "/".
Since lighttpd 1.4.23, you also can use the "fix-root-scriptname" flag
in fastcgi.server.