KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.4.62
System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64
User : www ( 80)
PHP Version : 8.3.8
Disable Function : NONE
Directory :  /config/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //config/fbsdweb2.web.rcn.net.conf.new
ServerType standalone
ServerRoot "/usr/local"
PidFile /var/run/httpd.pid
ScoreBoardFile /var/run/httpd.scoreboard
ResourceConfig /dev/null
AccessConfig /dev/null
Timeout 300
#LockFile /tmp
KeepAlive Off
MaxKeepAliveRequests 5
KeepAliveTimeout 2
MinSpareServers 50
MaxSpareServers 100
StartServers 100
MaxClients 250
MaxRequestsPerChild 1000

LoadModule mmap_static_module libexec/apache/mod_mmap_static.so
LoadModule vhost_alias_module libexec/apache/mod_vhost_alias.so
LoadModule env_module         libexec/apache/mod_env.so
LoadModule config_log_module  libexec/apache/mod_log_config.so
LoadModule mime_magic_module  libexec/apache/mod_mime_magic.so
LoadModule mime_module        libexec/apache/mod_mime.so
LoadModule negotiation_module libexec/apache/mod_negotiation.so
LoadModule status_module      libexec/apache/mod_status.so
LoadModule info_module        libexec/apache/mod_info.so
LoadModule includes_module    libexec/apache/mod_include.so
LoadModule autoindex_module   libexec/apache/mod_autoindex.so
LoadModule dir_module         libexec/apache/mod_dir.so
LoadModule cgi_module         libexec/apache/mod_cgi.so
LoadModule asis_module        libexec/apache/mod_asis.so
LoadModule imap_module        libexec/apache/mod_imap.so
LoadModule action_module      libexec/apache/mod_actions.so
LoadModule speling_module     libexec/apache/mod_speling.so
LoadModule userdir_module     libexec/apache/mod_userdir.so
LoadModule alias_module       libexec/apache/mod_alias.so
LoadModule rewrite_module     libexec/apache/mod_rewrite.so
LoadModule access_module      libexec/apache/mod_access.so
LoadModule auth_module        libexec/apache/mod_auth.so
LoadModule anon_auth_module   libexec/apache/mod_auth_anon.so
LoadModule db_auth_module     libexec/apache/mod_auth_db.so
LoadModule digest_module      libexec/apache/mod_digest.so
LoadModule proxy_module       libexec/apache/libproxy.so
LoadModule cern_meta_module   libexec/apache/mod_cern_meta.so
LoadModule expires_module     libexec/apache/mod_expires.so
LoadModule headers_module     libexec/apache/mod_headers.so
LoadModule usertrack_module   libexec/apache/mod_usertrack.so
LoadModule log_forensic_module libexec/apache/mod_log_forensic.so
LoadModule unique_id_module   libexec/apache/mod_unique_id.so
LoadModule setenvif_module    libexec/apache/mod_setenvif.so
LoadModule php5_module        libexec/apache/libphp5.so
#LoadModule frontpage_module   libexec/apache/mod_frontpage.so
LoadModule perl_module        libexec/apache/libperl.so

ClearModuleList
AddModule mod_mmap_static.c
AddModule mod_vhost_alias.c
AddModule mod_env.c
AddModule mod_log_config.c
AddModule mod_mime_magic.c
AddModule mod_mime.c
AddModule mod_negotiation.c
AddModule mod_status.c
AddModule mod_info.c
AddModule mod_include.c
AddModule mod_autoindex.c
AddModule mod_dir.c
AddModule mod_cgi.c
AddModule mod_asis.c
AddModule mod_imap.c
AddModule mod_actions.c
AddModule mod_speling.c
AddModule mod_userdir.c
AddModule mod_alias.c
AddModule mod_rewrite.c
AddModule mod_access.c
AddModule mod_auth.c
AddModule mod_auth_anon.c
AddModule mod_auth_db.c
AddModule mod_digest.c
AddModule mod_proxy.c
AddModule mod_cern_meta.c
AddModule mod_expires.c
AddModule mod_headers.c
AddModule mod_usertrack.c
AddModule mod_log_forensic.c
AddModule mod_unique_id.c
AddModule mod_so.c
AddModule mod_setenvif.c
AddModule mod_perl.c
AddModule mod_php5.c
#AddModule mod_frontpage.c

Port 80

User www
Group www

ServerAdmin [email protected]

#DocumentRoot "/domains/suspended"

<Directory />
    Options FollowSymLinks MultiViews ExecCGI
    AllowOverride None 
#    AllowOverride All 
</Directory>

<Directory /domains/[a-z0-9.-]*>
    AllowOverride FileInfo AuthConfig Limit Indexes Options 
    Options MultiViews Indexes SymLinksIfOwnerMatch Includes ExecCGI
</Directory>

<IfModule mod_userdir.c>
    UserDir public_html
</IfModule>

DirectoryIndex suspended_index.rcn.html index.php index.pl index.cgi index.htm index.html index.shtml index.shtm
AccessFileName .htaccess

<Files ~ "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>

UseCanonicalName Off 

<IfModule mod_mime.c>
    TypesConfig /usr/local/etc/apache/mime.types
</IfModule>

DefaultType text/plain

<IfModule mod_mime_magic.c>
    MIMEMagicFile /usr/local/etc/apache/magic
</IfModule>

HostnameLookups Off

#ErrorLog /var/log/httpd-error.log
ErrorLog "| /usr/local/sbin/cronolog /var/log/httpd/error/ex%Y%m%d.log"

LogLevel warn

LogFormat "%V %{X-Forwarded-for}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
#LogFormat "%{Host}i %a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

CustomLog "| /usr/local/sbin/cronolog /var/log/httpd/access/ex%Y%m%d.log" combined

ServerSignature On

<IfModule mod_alias.c>

    Alias /icons/ "/usr/local/www/icons/"

    <Directory "/usr/local/www/icons">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

    Alias /manual/ "/usr/local/share/doc/apache/"

    <Directory "/usr/local/share/doc/apache">
        Options Indexes FollowSymlinks MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>

#    ScriptAlias /cgi-bin/ "/usr/local/www/cgi-bin/"

    <Directory "/usr/local/www/cgi-bin">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>

</IfModule>

<IfModule mod_autoindex.c>

    IndexOptions FancyIndexing

    AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

    AddIconByType (TXT,/icons/text.gif) text/*
    AddIconByType (IMG,/icons/image2.gif) image/*
    AddIconByType (SND,/icons/sound2.gif) audio/*
    AddIconByType (VID,/icons/movie.gif) video/*

    AddIcon /icons/binary.gif .bin .exe
    AddIcon /icons/binhex.gif .hqx
    AddIcon /icons/tar.gif .tar
    AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
    AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
    AddIcon /icons/a.gif .ps .ai .eps
    AddIcon /icons/layout.gif .html .shtml .htm .pdf
    AddIcon /icons/text.gif .txt
    AddIcon /icons/c.gif .c
    AddIcon /icons/p.gif .pl .py
    AddIcon /icons/f.gif .for
    AddIcon /icons/dvi.gif .dvi
    AddIcon /icons/uuencoded.gif .uu
    AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
    AddIcon /icons/tex.gif .tex
    AddIcon /icons/bomb.gif core

    AddIcon /icons/back.gif ..
    AddIcon /icons/hand.right.gif README
    AddIcon /icons/folder.gif ^^DIRECTORY^^
    AddIcon /icons/blank.gif ^^BLANKICON^^

    DefaultIcon /icons/unknown.gif

    ReadmeName README.html
    HeaderName HEADER.html

    IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

</IfModule>

<IfModule mod_mime.c>

    AddLanguage da .dk
    AddLanguage nl .nl
    AddLanguage en .en
    AddLanguage et .ee
    AddLanguage fr .fr
    AddLanguage de .de
    AddLanguage el .el
    AddLanguage he .he
    AddCharset ISO-8859-8 .iso8859-8
    AddLanguage it .it
    AddLanguage ja .ja
    AddCharset ISO-2022-JP .jis
    AddLanguage kr .kr
    AddCharset ISO-2022-KR .iso-kr
    AddLanguage nn .nn
    AddLanguage no .no
    AddLanguage pl .po
    AddCharset ISO-8859-2 .iso-pl
    AddLanguage pt .pt
    AddLanguage pt-br .pt-br
    AddLanguage ltz .lu
    AddLanguage ca .ca
    AddLanguage es .es
    AddLanguage sv .sv
    AddLanguage cs .cz .cs
    AddLanguage ru .ru
    AddLanguage zh-TW .zh-tw
    AddCharset Big5         .Big5    .big5
    AddCharset WINDOWS-1251 .cp-1251
    AddCharset CP866        .cp866
    AddCharset ISO-8859-5   .iso-ru
    AddCharset KOI8-R       .koi8-r
    AddCharset UCS-2        .ucs2
    AddCharset UCS-4        .ucs4
    AddCharset UTF-8        .utf8

    <IfModule mod_negotiation.c>
        LanguagePriority en da nl et fr de el it ja kr no pl pt pt-br ru ltz ca es sv tw
    </IfModule>

    <IfModule mod_php3.c>
	AddType application/x-httpd-php3 .php3
	AddType application/x-httpd-php3-source .php3s
    </IfModule>
    <IfModule mod_php4.c>
    </IfModule>

	AddType application/x-httpd-php .php
	AddType application/x-httpd-php-source .phps
    #
    # AddType allows you to tweak mime.types without actually editing it, or to
    # make certain files to be certain types.
    #
    AddType application/x-tar .tgz

    #
    # AddEncoding allows you to have certain browsers uncompress
    # information on the fly. Note: Not all browsers support this.
    # Despite the name similarity, the following Add* directives have nothing
    # to do with the FancyIndexing customization directives above.
    #
    AddEncoding x-compress .Z
    AddEncoding x-gzip .gz .tgz
    #
    # If the AddEncoding directives above are commented-out, then you
    # probably should define those extensions to indicate media types:
    #
    #AddType application/x-compress .Z
    #AddType application/x-gzip .gz .tgz

    AddHandler cgi-script .cgi
    AddHandler cgi-script .pl

    AddType text/html .shtml
    AddHandler server-parsed .shtml

    # feature
    #
    #AddHandler send-as-is asis

    #
    # If you wish to use server-parsed imagemap files, use
    #
    #AddHandler imap-file map

    #
    # To enable type maps, you might want to use
    #
    #AddHandler type-map var

</IfModule>

<IfModule mod_setenvif.c>

    #
    # The following directives modify normal HTTP response behavior.
    # The first directive disables keepalive for Netscape 2.x and browsers that
    # spoof it. There are known problems with these browser implementations.
    # The second directive is for Microsoft Internet Explorer 4.0b2
    # which has a broken HTTP/1.1 implementation and does not properly
    # support keepalive when it is used on 301 or 302 (redirect) responses.
    #
    BrowserMatch "Mozilla/2" nokeepalive
    BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0

    #
    # The following directive disables HTTP/1.1 responses to browsers which
    # are in violation of the HTTP/1.0 spec by not being able to grok a
    # basic 1.1 response.
    #
    BrowserMatch "RealPlayer 4\.0" force-response-1.0
    BrowserMatch "Java/1\.0" force-response-1.0
    BrowserMatch "JDK/1\.0" force-response-1.0

</IfModule>

ServerTokens Min
RLimitMem   10000000 10000000
RLimitCPU   120 120

NameVirtualHost *:80

#FrontPage On       # Allows/Disallows Client to publish with
#FrontPageAdmin On  # Allows/Disallows Administration of web site

Listen 80
#Listen 10869
#<VirtualHost _default_:10869>
#DocumentRoot /usr/local/frontpage/version5.0/admin-exes
#DirectoryIndex fpadmcgi.exe
#<Directory /usr/local/frontpage/version5.0/admin-exes/>
#	AddHandler cgi-script .exe
#	Options ExecCGI
#	AllowOverride All
#</Directory>
#</VirtualHost>

#
# This is the only way I could find to set the Docuemnt_root correctly
#
<Perl>
package HeaderParser;
sub handler{
 my ($r) = @_;
 $r->document_root($r->subprocess_env("DOCUMENT_ROOT_REAL")) if $r->subprocess_env("DOCUMENT_ROOT_REAL"); 
 return DECLINED;
}

package Ht;
use Apache::Constants qw(OK DECLINED AUTH_REQUIRED SERVER_ERROR NOT_FOUND);
use Apache::File;
use Apache::Util;
sub handler
{
 my ($r) = @_;
 return DECLINED unless $r->is_initial_req;
 my ($status,$password) = $r->get_basic_auth_pw;
# warn " stats [$status][ " . OK . "][" . DECLINED. "][" .AUTH_REQUIRED."][".SERVER_ERROR."]\n";
 return $status unless $status == OK;

 my $file	= $r->uri;
 my $docroot = $r->document_root;

#$r->print( " [@parts] ");
my (@parts) = split(/\//, $file);
unshift @parts;
my ($path) = '';
foreach my $item (@parts)
{
 if($item)
 { $path = "$path$item/"; }
 
 warn "looking at $docroot$path";

 unless(-d "$docroot$path")
 {
   return NOT_FOUND;
 }
 warn "looking for $docroot$path/.htaccess";
 if(-f "$docroot$part/.htaccess")
 {
   my ($auth_user_file) = '';
   my $HT = Apache::File->new("$docroot$path/.htaccess");
#   open(HT,"$docroot$part/.htaccess");
   foreach my $line (<$HT>)
   {
	chomp($line);
        warn "       reading it [$line]";
 	next unless $line =~ m/AuthUserFile/;
	(undef,$auth_user_file) = split(/\s+/,$line);
   }
   $HT->close();
#   close(<HT>);
   if($auth_user_file)
   {
    # if it starts with a slash
    if($auth_user_file =~ m!^\/!)
    {
	next; # return OK;
    }
    warn "I found the password file $docroot$path/$auth_user_file ";
    my ($PW) = Apache::File->new("$docroot$path/$auth_user_file");
    foreach my $data (<$PW>)
    {
	chomp($data);
	my ($username,$c_password) = split(/:/,$data);
        warn "[$data] $username,$c_password  " . $r->connection->user;
	next unless $username eq $r->connection->user;
        my ($validate) = Apache::Util::validate_password($password, $c_password) ;
	warn "here as [$username] w/ [$validate]";
	$r->set_handlers(PerlAuthenHandler => [\&OK]);	
 	return OK if Apache::Util::validate_password($password, $c_password) ;
    }
    $PW->close();
    return  DECLINED;
    warn " I found this $auth_user_file";
   }
   warn "weee";
 }
}
warn "I have [$docroot] with [$file] uri[$uri] ";
# $r->print(" I have [$docroot] with [$file] uri[$uri]\n ");
 return DECLINED;

}

package Apache::ReadConfig;

</Perl>
<VirtualHost *:80>
#DocumentRoot "/domains"
UnsetEnv DocumentRoot
#PerlFixupHandler HeaderParser
PerlHeaderParserHandler HeaderParser
#PerlAuthenHandler Ht 
#PerlHeaderParserHandler Ht 
 RewriteEngine on
# RewriteLog /var/log/rewrite_log-test
# RewriteLogLevel 9

 RewriteMap    lowercase    int:tolower
# RewriteMap    serveradmin  dbm:/config/server_admin
 RewriteMap    vhost        dbm:/domain_vhost_dbm
 RewriteCond   %{HTTP_HOST}  !^$
 RewriteCond   ${lowercase:%{HTTP_HOST}}    ^([^:]*).*$
 RewriteCond   ${vhost:%1}  ^(/domains/.*)$
 #RewriteRule   ^/(.*)$   %1/$1  [L]
# VirtualDocumentRoot /domains/%1/
 RewriteRule   ^/(.*)$   %1/$1  [ENV=DOCUMENT_ROOT_REAL:%1/,L]
# RewriteRule   ^/(.*)$   /index.html [L]
</VirtualHost>

Anon7 - 2021