[LON-CAPA-cvs] cvs: doc /loncapafiles webserver.piml
harris41
lon-capa-cvs@mail.lon-capa.org
Mon, 13 Jan 2003 22:01:32 -0000
harris41 Mon Jan 13 17:01:32 2003 EDT
Modified files:
/doc/loncapafiles webserver.piml
Log:
BUG 1114 FIXED; now checks for overlapping/conflicting
definitions of DocumentRoot and ScriptAlias
Index: doc/loncapafiles/webserver.piml
diff -u doc/loncapafiles/webserver.piml:1.12 doc/loncapafiles/webserver.piml:1.13
--- doc/loncapafiles/webserver.piml:1.12 Tue Jan 7 14:01:58 2003
+++ doc/loncapafiles/webserver.piml Mon Jan 13 17:01:32 2003
@@ -3,7 +3,7 @@
<!-- webserver.piml -->
<!-- Scott Harrison -->
-<!-- $Id: webserver.piml,v 1.12 2003/01/07 19:01:58 harris41 Exp $ -->
+<!-- $Id: webserver.piml,v 1.13 2003/01/13 22:01:32 harris41 Exp $ -->
<!--
@@ -54,7 +54,7 @@
# Generated from doc/loncapafiles/webserver.piml
unless (-e "<TARGET />") {
print 'ERROR! httpd.conf should exist! Are you missing the Apache '.
- 'software package';
+ 'software package?';
exit(1);
}
else {
@@ -91,6 +91,58 @@
open(OUT,'><TARGET />');
print(OUT $in."\n");
close(OUT);
+ }
+}
+</perlscript>
+</file>
+<file>
+<target dist='default'>/etc/httpd/conf/httpd.conf</target>
+<note>This is always expected for any version of Apache</note>
+<dependencies dist='default'>
+/etc/httpd/conf/httpd.conf
+</dependencies>
+<perlscript mode='fg'>
+# Generated from doc/loncapafiles/webserver.piml
+# Trying to check for overlapping DocumentRoot or ScriptAlias definitions.
+unless (-e "<TARGET />") {
+ 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,'<<TARGET />');
+ 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");
+ }
+ if ($documentroot_flag==1 or $scriptalias_flag==1) {
+ exit(1);
}
}
</perlscript>