icp_access.cgi

来自「Unix下基于Web的管理工具」· CGI 代码 · 共 64 行

CGI
64 行
字号
#!/usr/local/bin/perl# icp_access.cgi# A form for editing or creating an ICP access restrictionrequire './squid-lib.pl';&ReadParse();$conf = &get_config();if (!defined($in{'index'})) {	&header("Create ICP Restriction", "",		undef, 0, 0, 0, &restart_button());	}else {	&header("Edit ICP Restriction", "",		undef, 0, 0, 0, &restart_button());	@icp = @{$conf->[$in{'index'}]->{'values'}};	}print "<hr>\n";print "<form action=icp_access_save.cgi>\n";if (@icp) {	print "<input type=hidden name=index value=$in{'index'}>\n";	}print "<table border>\n";print "<tr $tb> <td><b>ICP Restriction</b></td> </tr>\n";print "<tr $cb> <td><table>\n";print "<tr> <td><b>Action</b></td> <td colspan=3>\n";printf "<input type=radio name=action value=allow %s> Allow\n",	$icp[0] eq "allow" ? "checked" : "";printf "<input type=radio name=action value=deny %s> Deny</td> </tr>\n",	$icp[0] eq "allow" ? "" : "checked";for($i=1; $i<@icp; $i++) { $match{$icp[$i]}++; }@acls = &find_config("acl", $conf);$r = @acls; $r = 10 if ($r > 10);print "<tr> <td valign=top><b>Match ACLs</b></td>\n";print "<td><select name=yes multiple rows=$r width=100>\n";foreach $a (@acls) {	printf "<option %s>%s\n",		$match{$a->{'values'}->[0]} ? "selected" : "",		$a->{'values'}->[0];	}print "</select></td>\n";print "<td valign=top><b>Don't match ACLs</b></td>\n";print "<td><select name=no multiple rows=$r width=100>\n";foreach $a (@acls) {	printf "<option %s>%s\n",		$match{"!$a->{'values'}->[0]"} ? "selected" : "",		$a->{'values'}->[0];	}print "</select></td> </tr>\n";print "</table></td></tr></table><br>\n";print "<input type=submit value=Save>\n";if (@icp) { print "<input type=submit value=Delete name=delete>\n"; }print "</form>\n";print "<hr>\n";&footer("edit_acl.cgi", "ACL list");

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?