Squid Web Cache Wiki

Squid Web Cache 文档

🔗 功能:内部重定向器 / URL映射

🔗 详细信息

通过url_rewrite_program配置的任何显式的外部URL重写程序都会覆盖内部重定向器,并使用外部程序替代。

🔗 Squid 2.x

:information_source: 3.x的格式与2.x提供的指令不同。本说明详细介绍了2.x版本。:information_source: 2.x的补丁已纳入主代码,以便在2.8中进行测试和发布。

Squid 2.x 此功能默认启用。

提供了额外的squid.conf选项,可以在不使用重写程序的情况下重写URL。

rewrite_access acl [acl [acl ...]]
rewrite dsturl acl [acl [acl ...]]

有关操作的详细信息,请参见下面的url_map*说明。名称不同,但行为保持不变。

🔗 Squid 3.x

:information_source: 3.x的格式与2.x提供的指令不同。本说明详细介绍了3.x版本。

当Squid使用configure选项构建时

--enable-url-maps

提供了额外的squid.conf选项,可以在不使用重写程序的情况下重写URL。

url_map_access acl [acl [acl ...]]

url_map dsturl acl [acl [acl ...]]

url_map_access控制是否为请求处理url_maps。默认情况下,它们会与url_map列表进行检查。如果指定,只有匹配url_map_access ACL的请求才会进一步处理url_map

url_map指令按配置顺序处理。

dsturl指定了在所有ACL匹配时产生的URL。如果dsturl为“-”,则重写不起作用。它可以以直接发送给用户的状态码开头。并包含以%开头的格式代码。

🔗 有效的状态码

301:http://....    Means respond with a 301 to user.
302:http://....    Means respond with a 302 to user.
303:http://....    Means respond with a 303 to user.
307:http://....    Means respond with a 307 to user.

🔗 格式代码

格式代码规格

%[#][argument]formatcode

代码

%>a      Client source IP address
%la      Local IP address (http_port)
%lp      Local port number (http_port)
%ts      Seconds since epoch
%tu      subsecond time (milliseconds, %03d)
%un      User name
%ul      User login
%ui      User ident
%ue      User from external acl
%rm      Request method (GET/POST etc)
%ru      Request URL
%rp      Request path
%rh      Request host from URL
%rH      Request Host header
%rP      Request protocol
%et      Tag returned by external acl
%ea      Log string returned by external acl
%%       a literal % character

分类: WantedFeature

导航:站点搜索站点页面类别🔼 向上