/ /etc/httpd/conf/httpd.conf This is always expected for any version of Apache /etc/httpd/conf/httpd.conf # Generated from doc/loncapafiles/webserver.piml unless (-e "") { print '**** ERROR! httpd.conf should exist! Are you missing the Apache '. 'software package?'; exit(1); } else { # Append loncapa_apache.conf inclusion to httpd.conf if not present. $flag=0; open(IN,'<'); while (<IN>) { if (/^\s*Include\s+conf\/loncapa_apache.conf/) { $flag=1; } } close(IN); unless ($flag==1) { open(OUT,'>>'); print(OUT 'Include conf/loncapa_apache.conf'."\n"); close(OUT); } # Remove loncapa.conf inclusion from httpd.conf if present. $flag=0; open(IN,'<'); while (<IN>) { if (/^\s*Include\s+conf\/loncapa.conf/) { $flag=1; } } close(IN); $in=''; if ($flag==1) { open(IN,'<'); while(<IN>) { $in.=$_ unless /^\s*Include\s+conf\/loncapa.conf/; } close(IN); open(OUT,'>'); print(OUT $in."\n"); close(OUT); } } /etc/httpd/conf/httpd.conf This is always expected for any version of Apache /etc/httpd/conf/httpd.conf # Generated from doc/loncapafiles/webserver.piml # Trying to check for overlapping DocumentRoot or ScriptAlias definitions. unless (-e "") { print '**** ERROR **** httpd.conf should exist! Are you missing the Apache '. 'software package?'; exit(1); } else { # Append loncapa_apache.conf inclusion to httpd.conf if not present. $scriptalias_flag=0; $documentroot_flag=0; my $scriptalias; my $documentroot; open(IN,'<'); while (<IN>) { if (m!^\s*ScriptAlias\s+/cgi-bin/\s+(.*)$!) { $scriptalias = $1; if ($scriptalias !~ m!home/httpd/cgi-bin!) { $scriptalias_flag = 1; } } if (m!^\s*DocumentRoot\s+(.*)$!) { $documentroot = $1; if ($documentroot !~ m!home/httpd/html!) { $documentroot_flag = 1; } } } close(IN); if ($scriptalias_flag==1) { print('**** ERROR **** httpd.conf has an overlapping definition of '. 'ScriptAlias (it is incorrectly set to '.$scriptalias.').'."\n". 'This conflicts with loncapa_apache.conf.'."\n"); } if ($documentroot_flag==1) { print('**** ERROR **** httpd.conf has an overlapping definition of '. 'DocumentRoot (it is incorrectly set to '.$documentroot.').'."\n". 'This conflicts with loncapa_apache.conf.'."\n"); } }