summaryrefslogtreecommitdiffstats
path: root/web_wizard/scripts/do_it_web.sh
diff options
context:
space:
mode:
Diffstat (limited to 'web_wizard/scripts/do_it_web.sh')
-rwxr-xr-xweb_wizard/scripts/do_it_web.sh98
1 files changed, 98 insertions, 0 deletions
diff --git a/web_wizard/scripts/do_it_web.sh b/web_wizard/scripts/do_it_web.sh
new file mode 100755
index 00000000..b82d2c86
--- /dev/null
+++ b/web_wizard/scripts/do_it_web.sh
@@ -0,0 +1,98 @@
+#!/bin/bash
+#
+# Wizard
+#
+# Copyright (C) 2000 Mandrakesoft.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+# See file LICENSE for further informations on licensing terms.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# Authors: Jerome Dumonteil, Maurizio De Cecco, Enzo Maggi
+# icons: Helene Durosini <ln@mandrakesoft.com>
+# <corporate@mandrakesoft.com> http://www.mandrakesoft.com
+
+# script for wizard web configuration
+#
+# modify default apache configuration
+# assuming all dependencies are ok
+
+
+# wiz_web_external and wiz_web_internal are provided by the running wizard
+# now, save them
+file=/etc/sysconfig/mdk_serv
+
+# security
+[ "${wiz_web_external}" = "1" -o "${wiz_web_external}" = "0" ] || wiz_web_external="0"
+[ "${wiz_web_internal}" = "1" -o "${wiz_web_internal}" = "0" ] || wiz_web_internal="0"
+
+[ "${wiz_web_external}" = "1" ] && wiz_web_internal="1"
+
+# store the wiz_web_external and wiz_web_internal value
+chg_val ${file} wiz_web_external ${wiz_web_external} s
+chg_val ${file} wiz_web_internal ${wiz_web_internal} s
+
+
+# apache configuration file
+config="/etc/httpd/conf/commonhttpd.conf"
+if [ ! -f ${config} ]; then
+ echo_debug "no apache configuration file found ! exiting."
+ exit 1
+fi
+
+
+bck_file ${config}
+
+
+if [ "${wiz_web_external}" = "1" ]; then
+
+ cat ${config}.mdk_orig.1 \
+ |sed -e '/^[[:space:]]*<Directory \/home/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from all/;}
+/^[[:space:]]*<Directory \/var\/www/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from all/;} ' > ${config}
+
+elif [ "${wiz_web_internal}" = "1" ]; then
+
+ip=`get_var wiz_ip_net`
+
+ cat ${config}.mdk_orig.1 \
+|sed -e '/^[[:space:]]*<Directory \/home/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from '"${ip%\.*}"'./;}
+/^[[:space:]]*<Directory \/var\/www/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from '"${ip%\.*}"'./;} ' > ${config}
+
+else
+
+ cat ${config}.mdk_orig.1 \
+|sed -e '/^[[:space:]]*<Directory \/home/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from localhost/;}
+/^[[:space:]]*<Directory \/var\/www/,/^[[:space:]]*<\/Directory>/{
+s/^[[:space:]]*Allow .*$/Allow from localhost/;} ' > ${config}
+
+fi
+
+
+
+echo_debug "restarting services"
+
+/etc/rc.d/init.d/httpd restart
+
+
+
+# all is ok
+exit 10
+
+
+