/ /etc/httpd/conf/httpd.conf /etc/httpd/httpd.conf /etc/apache2/default-server.conf This is for Apache 1.X for Red Hat, Fedora 2,3 and 4, and SusSE 9.2, 9.3 and SLES 9 distributions. This is for Apache 2.X for Fedora 5 and later, and SuSE 10.X and SLES 10 distribtions /etc/httpd/conf/httpd.conf /etc/httpd/httpd.conf /etc/apache2/default-server.conf # Generated from doc/loncapafiles/webserver.piml unless (-e "") { print '**** ERROR! 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); } # Checking for overlapping ScriptAlias and DocumentRoot definitions. $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 **** /etc/httpd/conf/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 **** /etc/httpd/conf/httpd.conf has an overlapping definition of '. 'DocumentRoot (it is incorrectly set to '.$documentroot.').'."\n". 'This conflicts with loncapa_apache.conf.'."\n"); } }