PHP 8.6.0 Beta 1 is available for testing

Простое использование VarnishAdmin

Данный пример иллюстрирует простое использование функциональности запрета

Пример #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 note

up
-3
sarfraz dot qasim at gmail dot com
13 years ago
This code worked for me with couple of changes after installing PECL.
Here is the updated code.
<?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("Connection failed\n");
 } 
} catch (VarnishException $e) {
 echo $e->getMessage();
 exit(3);
}
try {
 if(!$va->auth()) {
 throw new VarnishException("Auth failed\n");
 } 
} catch (VarnishException $e) {
 echo $e->getMessage();
 exit(3);
}
try {
 $status = $va->ban('req.url ~ "^/."');
 if (VARNISH_STATUS_OK != $status) {
 throw new VarnishException("Ban method returned $status status\n");
 }
} catch (VarnishException $e) {
 echo $e->getMessage();
 exit(3);
}
exit(0);
?>

Hope this helps.
+Добавить

AltStyle によって変換されたページ (->オリジナル) /