create_htaccess.cgi

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

CGI
44
字号
#!/usr/local/bin/perl# create_htaccess.cgi# Creates a new .htaccess file for some directoryrequire './apache-lib.pl';&ReadParse();$access{'global'} || &error($text{'htaccess_ecannot'});$conf = &get_config();if (-d $in{'file'}) {	# user entered a directory.. create a file in that directory	$accfile = &find_directive("AccessFile", $conf);	if (!$accfile) { $accfile = ".htaccess"; }	$file = "$in{'file'}/$accfile";	}else { $file = $in{'file'}; }&allowed_auth_file($file) ||	&error($text{'htaccess_ecreate'});# create the file (if needed), and add to the known listif (!(-r $file)) {	open(HTACCESS, "> $file") || &error($!);	close(HTACCESS);	chmod(0755, $file);	$u = &find_directive("User", $conf);	if ($u =~ /#(\d+)/) { $u = $1; }	elsif (defined($u)) { $u = getpwnam($u); }	$g = &find_directive("Group", $conf);	if ($g =~ /#(\d+)/) { $g = $1; }	elsif (defined($g)) { $g = getgrnam($g); }	chown(defined($u) ? $u : $< , defined($g) ? $g : $( , $file);	}&read_file("$module_config_directory/site", \%site);@ht = split(/\s+/, $site{'htaccess'});$site{'htaccess'} = join(' ', &unique(@ht, $file));&write_file("$module_config_directory/site", \%site);# redirect to editing index&redirect("htaccess_index.cgi?file=".&urlize($file));

⌨️ 快捷键说明

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