mod_alias
URL aliasing.
Erlang web server internal API for handling of, for example,
interaction data exported by module mod_alias
.
Functions
default_index(ConfigDB, Path) -> NewPath
ConfigDB = config_db()
Path = NewPath = string()
If Path
is a directory, default_index/2
, it starts
searching for resources or files that are specified in the config
directive DirectoryIndex
.
If an appropriate resource or file is found, it is appended to
the end of Path
and then returned. Path
is
returned unaltered if no appropriate
file is found or if Path
is not a directory.
config_db()
is the server config file in ETS table format
as described in
Inets User's Guide.
path(PathData, ConfigDB, RequestURI) -> Path
PathData = interaction_data()
ConfigDB = config_db()
RequestURI = Path = string()
path/3
returns the file Path
in the
RequestURI
(see
{real_name,{Path,AfterPath}}
has been exported by mod_alias
,
Path
is returned. If no interaction data has been
exported, ServerRoot
is used to
generate a file Path
. config_db()
and
interaction_data()
are as defined in
Inets User's Guide.
real_name(ConfigDB, RequestURI, Aliases) -> Ret
ConfigDB = config_db()
RequestURI = string()
Aliases = [{FakeName,RealName}]
Ret = {ShortPath,Path,AfterPath}
ShortPath = Path = AfterPath = string()
real_name/3
traverses Aliases
, typically
extracted from ConfigDB
, and matches each
FakeName
with RequestURI
. If a match is found,
FakeName
is replaced with RealName
in the
match. The resulting path is split into two parts,
ShortPath
and AfterPath
, as defined in
httpd_util:split_path/1.
Path
is generated from ShortPath
, that is,
the result from
default_index/2 with
ShortPath
as an argument.
config_db()
is the server config file in ETS table
format as described in
Inets User's Guide.
real_script_name(ConfigDB, RequestURI, ScriptAliases) -> Ret
ConfigDB = config_db()
RequestURI = string()
ScriptAliases = [{FakeName,RealName}]
Ret = {ShortPath,AfterPath} | not_a_script
ShortPath = AfterPath = string()
real_script_name/3
traverses ScriptAliases
,
typically extracted from ConfigDB
, and matches each
FakeName
with RequestURI
. If a match is found,
FakeName
is replaced with RealName
in the
match. If the resulting match is not an executable script,
not_a_script
is returned. If it is a script, the
resulting script path is in two parts,
ShortPath
and AfterPath
, as defined in
httpd_util:split_script_path/1.
config_db()
is the server config file in ETS table
format as described in
Inets User's Guide.