if ($cookie_id !~ "id") не работает?
https://serverfault.com/questions/461155/checking-and-reading-cookies-with-nginx
Пробовал че то не находит так
if ($http_cookie = "509fd1e420bba") { return 403; }
if ($cookie_log !~ "log"){ return 403; } так стоит
лучше через secure_link делать.
проверить на что? что она есть?
А как это сделать?
Проверить на существование значения допустим id=user
ну посмотрите доку для начала http://nginx.org/ru/docs/http/ngx_http_secure_link_module.html Пример: secure_link $cookie_mycookie_id; secure_link_md5 "$remote_addr mysecret"; if ($secure_link = "") {return 403;} if ($secure_link = "0") {return 410;} Для проверки используется значение из переменной $cookie_mycookie_id (это кука с именем mycookie_id) Значение в куке это md5 хеш, который генерируется на основании переменных "$remote_addr mysecret" Пример команды для генерации: echo -n '127.0.0.1 mysecret' | openssl md5 -binary | openssl base64 | tr +/ -_ | tr -d = Ну и этот код должен быть внутри location В переменные для генерации md5 можно использовать разные переменные
теоретически и это должно работать. Если не работает, нужно весь конфиг видеть, т.к. if в nginx работает по особенному.
наркомания. человеку нужно значение куки проверить
map $cookie_id $is_cookie_set { default 0; user 1; }
Обсуждают сегодня