#!/usr/bin/perl $confpath="/etc/httpd/conf"; $bakpath="/etc/httpd/conf/bak"; system("mkdir -p $bakpath") ==0 or die "Can't create backup directory $bakpath\n"; sub fixconf{ $isifdef=0; $CM=" #Removed by Apache 2.0 --- "; $RHCONFMSG="# For Apache2 we load all conf files in conf.d\nInclude /etc/httpd/conf.d/*.conf\n"; while (<CONFF>) { if (/^(#)*<IfDefine HAVE/i) { s|<IfDefine|$CM $1 <IfDefine|gi; $isifdef=1;} if (($isifdef >0) and (/^(#)*<\/IfDefine/i)) { s|</IfDefine|$CM $1 </IfDefine|gi; $isifdef=0;} s|^(#)*ServerType standalone|$CM $1 ServerType standalone|gi; s|^(#)*ServerRoot /etc/httpd$|ServerRoot /etc/httpd/2.0|gi; s|^(#)*ResourceConfig|$CM $1 ResourceConfig|gi; s|^(#)*AccessConfig|$CM $1 AccessConfig|gi; s|^(#)*ScoreBoardFile|$CM $1 ScoreBoardFile|gi; s|config_log_module|log_config_module|gi; s|^(#)*LoadModule agent_log_module|$CM $1 LoadModule agent_log_module|gi; s|^(#)*LoadModule referer_log_module|$CM $1 LoadModule referer_log_module|gi; s|includes_module|include_module|gi; s|action_module|actions_module|gi; s|libproxy.so$|mod_proxy.so\nLoadModule proxy_http_module\tmodules/mod_proxy_http.so|gi; s|anon_auth_module|auth_anon_module|gi; s|digest_module|auth_digest_module|gi; s|mod_digest.so|mod_auth_digest.so|gi; s|^(#)*ClearModuleList|$CM $1 ClearModuleList|gi; s|^(#)*(#)*AddModule|$CM $1 $2AddModule|gi; s|^(#)*(\s)*Port|$CM $1 Port|gi; s|^(#)*LoadModule(.*)extramodules|$CM $1 LoadModule$2extramodules|gi; s|^(#)*Include(\s)*conf/ssl|$CM $1 Include conf/ssl|gi; s|^(#)*Include(\s)*conf/addon-modules|$CM $1 Include conf/addon-modules|gi; s|^(#)*Include(\s)*conf/mod_gzip|$CM $1 Include conf/mod_gzip|gi; s|^(#)*Include(\s)*conf/mod_log|$CM $1 Include conf/mod_log|gi; s|^# Rec(.*)vailable modules|$CM # Rec$1vailable modules|gi; s|^# \(static(.*)order|$CM # \(static$1order|gi; s|^# \[WHENEVER(.*)|$CM # \[WHENEVER$1|gi; s|^(#)*(Include conf/commonhttpd.conf)|$RHCONFMSG$2|gi; print NEW $_; } } #Create httpd2-perl.conf open(CONFF,"$confpath/httpd-perl.conf") or die "Can't open $confpath/httpd-perl.conf\n"; open(NEW,">$confpath/httpd2-perl.conf") or die "Can't create $confpath/httpd2-perl.conf\n"; fixconf; close(CONFF); close(NEW);