обнаружьте код возврата (режим) в рычаге лака

На Debian необходимо организовать конфигурационные файлы, поскольку Debian ожидает Вас к, самая важная вещь в этом случае для Вас будет VirtualHosts.

Они должны войти доступный сайтам как отдельные файлы (с одним или несколькими VirtualHosts на файл). Можно затем включить VirtualHost с a2ensite.

Для создания сайта только доступным через SSH, я обычно делаю VirtualHost, который только прислушивается к соединениям с localhost, например:

<VirtualHost *:80>
ServerName localhost

DocumentRoot /var/www/html/

<Directory /var/www/html/>
    Allow from 127.0.0.1
    Deny from all
    Options FollowSymLinks Indexes
    AllowOverride None
</Directory>
</VirtualHost>
1
задан 19 July 2013 в 12:13
1 ответ

Вы всегда можете установить собственный заголовок в vcl_recv:

sub vcl_recv {
  if (req.http.Cookie ~ "(JSESSIONID=)" ) {
    /* do not cache logged in users */
    set req.http.x-my-mark = "passed";
    return (pass);
  }
  return (lookup);
}
#...
sub vcl_fetch {
  if (req.http.x-my-mark == "passed") {
    /* custom rules block */
    if (req.url ~ "^/foo") { set beresp.ttl=30s; }
    if (req.url ~ "^/bar") { set beresp.ttl=1m; }
    if (req.url ~ "^/123") { set beresp.ttl=10m; }
  }

  return (deliver);
}

Но я думаю, что будет намного проще поместить ваш логин на vcl_pass [1] или просто выполнить первоначальную проверку на vcl_fetch:

sub vcl_fetch {
  if (req.http.Cookie ~ "(JSESSIONID=)") {
    /* custom rules block */
    if (req.url ~ "^/foo") { set beresp.ttl=30s; }
    if (req.url ~ "^/bar") { set beresp.ttl=1m; }
    if (req.url ~ "^/123") { set beresp.ttl=10m; }
  }

  return (deliver);
}

[1] https://www.varnish-software.com/static/book/VCL_functions.html#vcl-vcl-pass

2
ответ дан 3 December 2019 в 21:29

Теги

Похожие вопросы