From: Andy Witter Date: Thu, 20 Oct 2016 18:01:09 +0000 (-0400) Subject: Add support for disallowing access to / with robots.txt X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=574efcefb57ebce13879e0e692b25cd110161fe9;p=contrib%2Fpines%2Fgenasys.git Add support for disallowing access to / with robots.txt --- diff --git a/GenaSYS.sh b/GenaSYS.sh index f8ea419..f78df9f 100755 --- a/GenaSYS.sh +++ b/GenaSYS.sh @@ -25,8 +25,8 @@ PURPOSE_="Generate config files needed for Evergreen-ILS Cluster" SYNOPSIS_="$NAME_" REQUIRES_="standard GNU commands, apt, dpkg" - VERSION_="1.65" - DATE_="2010-11-23; last update: 2016-04-26" + VERSION_="1.66" + DATE_="2010-11-23; last update: 2016-08-20" AUTHOR_="Andy Witter " URL_="http://evergreen-ils.org" CATEGORY_="devel" @@ -209,12 +209,12 @@ echo BoxTitleBar GenaSYS echo echo -en "$SHADE_BLUE_20 $SHADE_BLUE_20";echo -echo -en "$SHADE_BLUE_20 Evergreen $EG_VERSION Cluster configuration. $SHADE_BLUE_20";echo +echo -en "$SHADE_BLUE_20 Evergreen $EG_VERSION Cluster configuration. $SHADE_BLUE_20";echo echo -en "$SHADE_BLUE_20 $SHADE_BLUE_20";echo -echo -en "$SHADE_BLUE_20 Welcome to GenaSYS for Evergreen ${EG_VERSION} ${SHADE_BLUE_20}";echo +echo -en "$SHADE_BLUE_20 Welcome to GenaSYS for Evergreen ${EG_VERSION} ${SHADE_BLUE_20}";echo echo -en "$SHADE_BLUE_20 This program will ask you a few questions then generate $SHADE_BLUE_20";echo echo -en "$SHADE_BLUE_20 all the system config files needed for a standard $SHADE_BLUE_20";echo -echo -en "$SHADE_BLUE_20 distributed installation of Evergreen $EG_VERSION $SHADE_BLUE_20";echo +echo -en "$SHADE_BLUE_20 distributed installation of Evergreen $EG_VERSION $SHADE_BLUE_20";echo echo -en "$SHADE_BLUE_20 $SHADE_BLUE_20";echo for SHADE in {1..61} do @@ -281,8 +281,39 @@ echo -e "Press ${COL_BR_CYAN}[Enter]${COL_RESET} to continue or ${COL_BR_CYAN}[C read -p "if you need to do any of the above." ENTER -Choose_Detected_Domain_Name () { ### Prompt to use detected domain name. +Check_Test_Cluster () { ### Ask if this is a test cluster echo;echo;echo;echo +TitleBar "Testing or Production" +echo +while true; do + echo + read -n 1 -p "Is this cluster for testing? [y/n] : " TEST_CLUSTER + case $TEST_CLUSTER in + [Yy]* ) echo ; break;; + [Nn]* ) echo ; break;; + * ) echo " Please answer yes or no.";; + esac +done +if [ "$TEST_CLUSTER" = "y" ] || [ "$TEST_CLUSTER" = "Y" ] + then + echo + echo "You selected test cluster. There are times when setting up a test environment" + echo "that it is desired to dis-allow access to / by all user-agents with a robots.txt" + echo + while true; do + echo + read -n 1 -p "Dis-allow access to / by all user-agents with robots.txt?. [y/n] : " ROBOTS_TXT + case $ROBOTS_TXT in + [Yy]* ) echo ; break;; + [Nn]* ) echo ; break;; + * ) echo " Please answer yes or no.";; + esac + done +fi +} + +Choose_Detected_Domain_Name () { ### Prompt to use detected domain name. +echo #echo -e $COL_BR_BLUE"________Global Configuration________"$COL_RESET TitleBar "Global Configuration" echo @@ -1078,6 +1109,12 @@ else USE_CONFIG_FILE="0" fi + +### Check if this is a test cluster. +if [ -z $TEST_CLUSTER ] || [ "$USE_CONFIG_FILE" == "0" ] ; then +Check_Test_Cluster +fi + ### Prompt to use detected domain name. if [ -z $CLUSTERDOMAINNAME ] || [ "$USE_CONFIG_FILE" == "0" ] ; then Choose_Detected_Domain_Name @@ -1114,6 +1151,8 @@ echo "## GenaSYS $VERSION_ Configuration" >> $NEW_CONFIG_FILE echo "## Created $(date)" >> $NEW_CONFIG_FILE echo >> $NEW_CONFIG_FILE +Write_Config_File TEST_CLUSTER +Write_Config_File ROBOTS_TXT Write_Config_File CLUSTERDOMAINNAME @@ -1858,7 +1897,12 @@ for BRICK in $(seq $BRICKCOUNT) eval mkdir -p ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/data/vandelay eval mkdir -p ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/web/reporter + ### head gets exports + if [ "$ROBOTS_TXT" = "y" ] || [ "$ROBOTS_TXT" = "Y" ] ### Copy robots.txt if selected. + then + eval cp -f $TEMPLATEDIR/apache2/robots.txt ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/web + fi eval cp -f $TEMPLATEDIR/eg_fstab_head ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc eval cp -f ${CERT_DIR}/server.* ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc/apache2/ssl [ -e "${CERT_DIR}/ca.crt" ] && eval cp -f "${CERT_DIR}/ca.crt" ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc/apache2/ssl @@ -2008,6 +2052,10 @@ for BRICK in $(seq $BRICKCOUNT) eval mkdir -p ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/data/vandelay eval mkdir -p ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/web/reporter ### head gets exports + if [ "$ROBOTS_TXT" = "y" ] || [ "$ROBOTS_TXT" = "Y" ] ### Copy robots.txt if selected. + then + eval cp -f $TEMPLATEDIR/apache2/robots.txt ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/openils/var/web + fi eval cp -f $TEMPLATEDIR/eg_fstab_head ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc eval cp -f ${CERT_DIR}/server.* ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc/apache2/ssl [ -e "${CERT_DIR}/ca.crt" ] && eval cp -f "${CERT_DIR}/ca.crt" ${OUTDIR}/\$BRICKHOSTNAME${BRICK}/\$BRICKHOSTNAME${BRICK}-head/etc/apache2/ssl diff --git a/templates/apache2/robots.txt b/templates/apache2/robots.txt new file mode 100644 index 0000000..1f53798 --- /dev/null +++ b/templates/apache2/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: /