From: Mark Huang Date: Fri, 2 Feb 2007 15:37:25 +0000 (+0000) Subject: Symlink any (real) files or directories in /data/var/www/html/* to X-Git-Tag: planetlab-4_0-rc1~16 X-Git-Url: http://git.onelab.eu/?p=myplc.git;a=commitdiff_plain;h=26ae8f6245f159cf580337a40ae54a39c3025318 Symlink any (real) files or directories in /data/var/www/html/* to /var/www/html/. We could descend into subdirectories, but the code to do so properly would be madness. --- diff --git a/plc.d/httpd b/plc.d/httpd index 6f10515..28eb823 100755 --- a/plc.d/httpd +++ b/plc.d/httpd @@ -7,7 +7,7 @@ # Mark Huang # Copyright (C) 2006 The Trustees of Princeton University # -# $Id: httpd,v 1.7 2006/10/30 22:38:22 mlhuang Exp $ +# $Id: httpd,v 1.8 2007/01/25 20:27:18 mlhuang Exp $ # # Source function library and configuration @@ -133,6 +133,26 @@ EOF mkdir -p $DocumentRoot/files chown apache:apache $DocumentRoot/files + # Symlink any (real) files or directories in + # /data/var/www/html/* to /var/www/html/. We could descend + # into subdirectories, but the code to do so properly would be + # madness. + for file in /data/$DocumentRoot/* ; do + if [ -e "$file" -a ! -h "$file" ] ; then + base=$(basename "$file") + if [ ! -e "$DocumentRoot/$base" ] ; then + ln -nsf "$file" "$DocumentRoot/$base" + fi + fi + done + + # Cleanup broken symlinks + for file in $DocumentRoot/* ; do + if [ -h "$file" -a ! -e "$file" ] ; then + rm -f "$file" + fi + done + # Old style PHP constants mkdir -p /etc/planetlab/php cat >/etc/planetlab/php/site_constants.php <<"EOF"