📄 find_htaccess.cgi
字号:
#!/usr/local/bin/perl# find_htaccess.cgi# Finds all per-directory options files under the all the document rootsrequire './apache-lib.pl';&ReadParse();$access{'global'} || &error($text{'htaccess_ecannot'});$in{'from'}=1 if ($access{'dir'} ne '/');if ($in{'from'} == 1 && !(-d $in{'dir'})) { &error(&text('htaccess_edir', $in{'dir'})); }&read_file("$module_config_directory/site", \%site);foreach $f (split(/\s+/, $site{'htaccess'})) { if (-r $f) { push(@rv, $f); } }# Find the default document root and access file$conf = &get_config();$def_htaccess = &find_directive("AccessFileName", $conf);if (!$def_htaccess) { $def_htaccess = ".htaccess"; }$def_root = &find_directive("DocumentRoot", $conf);if (!$def_root) { $def_root = "/"; }# find virtual server doc roots and access filespush(@dirs, $def_root); push(@files, $def_htaccess);foreach $v (&find_directive_struct("VirtualHost", $conf)) { $root = &find_directive("DocumentRoot", $v->{'members'}); push(@dirs, $root ? $root : $def_root); $htaccess = &find_directive("AccessFileName", $v->{'members'}); push(@files, $htaccess ? $htaccess : $def_htaccess); }if ($in{'from'} == 0) { # search under all directories for($i=0; $i<@dirs; $i++) { open(FIND, "find $dirs[$i] -name $files[$i] -print |"); while(<FIND>) { s/\r|\n//g; push(@rv, $_); } close(FIND); } }else { # search under the given directory only foreach $f (&unique(@files)) { push(@args, "-name $f"); } $args = join(' -o ', @args); open(FIND, "find $in{'dir'} $args -print |"); while(<FIND>) { s/\r|\n//g; push(@rv, $_); } close(FIND); }# save results$site{'htaccess'} = join(' ', &unique(@rv));&write_file("$module_config_directory/site", \%site);&redirect("htaccess.cgi");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -