📄 save_auth.cgi
字号:
#!/usr/local/bin/perl# save_auth.cgi# Save authentication optionsrequire './squid-lib.pl';&ReadParse();$conf = &get_config();$whatfailed = "Failed to save authentication options";if ($in{'authfile_def'}) { &save_directive($conf, "proxy_auth", [ ]); }else { $in{'authfile'} =~ /^\// || &error("Invalid or missing users filename"); if (!-r $in{'authfile'}) { open(AUTH, ">$in{'authfile'}"); close(AUTH); ($user, $group) = &get_squid_user($conf); if ($user) { @uinfo = getpwnam($user); @ginfo = getgrnam($group); chown($uinfo[2], $ginfo[2], $in{'authfile'}); chmod(0644, $in{'authfile'}); } } push(@vals, $in{'authfile'}); if (!$in{'authdom_def'}) { $in{'authdom'}=~/^\S+$/ || &error("Invalid or missing domain"); push(@vals, $in{'authdom'}); } &save_directive($conf, "proxy_auth", [ { 'name' => 'proxy_auth', 'values' => \@vals } ]); }&flush_file_lines();# check if the proxy_auth directive is supported$out = `$config{'squid_path'} -f $config{'squid_conf'} -k check 2>&1`;if ($out =~ /proxy_auth/) { # it isn't .. roll back &save_directive($conf, "proxy_auth", [ ]); &flush_file_lines(); &error("Your version of Squid has not been compiled with support ", "for proxy authentication"); }&redirect("");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -