VarnishAdmin 基本用法

此示例演示了 ban 功能的简单用法

示例 #1 禁止 URL

<?php

$args
= array(
VARNISH_CONFIG_HOST => "::1",
VARNISH_CONFIG_PORT => 6082,
VARNISH_CONFIG_SECRET => "5174826b-8595-4958-aa7a-0609632ad7ca",
VARNISH_CONFIG_TIMEOUT => 300,
);

$va = new VarnishAdmin($args);

try {
if(!
$va->connect()) {
throw new
VarnishException("连接失败\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

try {
if(!
$va->auth()) {
throw new
VarnishException("身份验证失败\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

try {
$status = $va->ban('req.url ~ "^/$"');
if (
VARNISH_STATUS_OK != $status) {
throw new
VarnishException("Ban 方法返回 $status 状态\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

exit(
0);

?>
添加笔记

用户贡献的笔记 1 条笔记

sarfraz dot qasim at gmail dot com
11 年前
这段代码在我的安装 PECL 之后,经过一些修改后对我有用。

以下是更新后的代码。

<?php

$args
= array(
VARNISH_CONFIG_HOST => "127.0.0.1",
VARNISH_CONFIG_PORT => 6082,
VARNISH_CONFIG_SECRET => "5174826b-8595-4958-aa7a-0609632ad7ca",
VARNISH_CONFIG_TIMEOUT => 300,
);

$va = new VarnishAdmin($args);

try {
if(!
$va->connect()) {
throw new
VarnishException("连接失败\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

try {
if(!
$va->auth()) {
throw new
VarnishException("身份验证失败\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

try {
$status = $va->ban('req.url ~ "^/."');
if (
VARNISH_STATUS_OK != $status) {
throw new
VarnishException("Ban 方法返回 $status 状态\n");
}
} catch (
VarnishException $e) {
echo
$e->getMessage();
exit(
3);
}

exit(
0);

?>

希望这有帮助。
To Top