Alias 指令

说明 映射URL到文件系统的特定区域
语法 Alias URL-pathfile-path|directory-path
作用域 server config, virtual host
状态 基本(B)
模块 mod_alias

Alias指令使文档可以被存储在DocumentRoot以外的本地文件系统中。以(%已解码的)url-path路径开头的URL可以被映射到以directory-path开头的本地文件。

示例:

Alias /image /ftp/pub/image

对"http://myserver/image/foo.gif"的请求,服务器将返回"/ftp/pub/image/foo.gif"文件。因为仅匹配完整路径,所以上述例子不会匹配对"http://myserver/imagefoo.gif"的请求。对于使用正则表达式的匹配,请参见AliasMatch指令。

注意:如果url-path中有后缀"/",则服务器要求有后缀"/"以扩展此别名。也就是说"Alias /icons/ /usr/local/apache/icons/"并不能对"/icons"实现别名。

注意,可能需要额外指定一个<Directory>段来覆盖别名的最终对象。由于只有出现在<Directory>段之前的别名才会被检测,所以它只对最终对象生效。(由于执行别名操作之前<Location>段会被首先扫描一次,所以它们也是有效的)

特别地,如果对在DocumentRoot之外的某个目录建立了一个Alias ,则可能需要明确的对目标目录设定访问权限。

示例:

Alias /image /ftp/pub/image
<Directory /ftp/pub/image>
Order allow,deny
Allow from all
</Directory>

 1 < IfModule  alias_module >
 2     #
 3     # Redirect: Allows you to tell clients about documents that used to 
 4     # exist in your server's namespace, but do not anymore. The client 
 5     # will make a new request for the document at its new location.
 6     # Example:
 7     # Redirect permanent /foo http://test.piao.net/bar
 8
 9     #
10     # Alias: Maps web paths into filesystem paths and is used to
11     # access content that does not live under the DocumentRoot.
12     # Example:
13     # Alias /webpath /full/filesystem/path
14     Alias /THINKPHP   D:/ThinkPHP 
15     #
16     # If you include a trailing / on /webpath then the server will
17     # require it to be present in the URL.  You will also likely
18     # need to provide a  < Directory >  section to allow access to
19     # the filesystem path.
20
21     #
22     # ScriptAlias: This controls which directories contain server scripts. 
23     # ScriptAliases are essentially the same as Aliases, except that
24     # documents in the target directory are treated as applications and
25     # run by the server when requested rather than as documents sent to the
26     # client.  The same rules about trailing "/" apply to ScriptAlias
27     # directives as to Alias.
28     #
29     ScriptAlias /cgi-bin/ "D:/Program Files/Apache2.2/cgi-bin/"
30
31 </ IfModule >
 1 #
 2 # "D:/Program Files/Apache2.2/cgi-bin" should be changed to whatever your ScriptAliased
 3 # CGI directory exists, if you have that configured.
 4 #
 5 < Directory  "D:/Program Files/Apache2.2/cgi-bin" >
 6     AllowOverride None
 7     Options None
 8     Order allow,deny
 9     Allow from all
10 </ Directory >
11
12 < Directory  "D:/ThinkPHP" >
13     AllowOverride None
14     Options None
15     Order allow,deny
16     Allow from all
17 </ Directory >
18 #