Commit 89898ffe authored by Vitaly Lipatov's avatar Vitaly Lipatov

add_site: move some parts to a functions

parent 844b2047
...@@ -3,19 +3,13 @@ ...@@ -3,19 +3,13 @@
# $ add_site.sh domain user # $ add_site.sh domain user
test "$1" || exit 1 test "$1" || exit 1
test "$2" || exit 1 test "$2" || exit 1
HOMEDIR=/home/$2 USERNAME=$2
test -d "$HOMEDIR" || exit 1
HOSTBASE=$HOMEDIR/www
LOGDIR=$HOMEDIR/log
TMPDIR=$HOMEDIR/tmp
DOMAINNAME=$(echo "$1" | tr [A-Z] [a-z]) DOMAINNAME=$(echo "$1" | tr [A-Z] [a-z])
SESSIONDIR=$TMPDIR/session/$DOMAINNAME
USERNAME=`echo $DOMAINNAME | sed -e "s|\..*||g"`
SITE=$HOSTBASE/$DOMAINNAME
echo $USERNAME
. ./config . ./config
set_vars
cd /etc/httpd2/conf/sites-enabled || exit cd /etc/httpd2/conf/sites-enabled || exit
#if ! grep $SITE /etc/postfix/mydestination 2>/dev/null ; then #if ! grep $SITE /etc/postfix/mydestination 2>/dev/null ; then
...@@ -23,7 +17,7 @@ cd /etc/httpd2/conf/sites-enabled || exit ...@@ -23,7 +17,7 @@ cd /etc/httpd2/conf/sites-enabled || exit
# echo $1 >>/etc/postfix/mydestination # echo $1 >>/etc/postfix/mydestination
# cat >>/etc/postfix/virtual <<EOF # cat >>/etc/postfix/virtual <<EOF
#$1 anything #$1 anything
#@$1 $USERNAME #@$1 $TECHNAME
#EOF #EOF
# #
# service postfix adjust # service postfix adjust
...@@ -56,28 +50,12 @@ chmod g+rwx $SITE/ ...@@ -56,28 +50,12 @@ chmod g+rwx $SITE/
chmod o-rwx $SITE/ chmod o-rwx $SITE/
chmod g+s $SITE/ chmod g+s $SITE/
cat <<EOF >$DOMAINNAME.conf check_dirs
#NameVirtualHost *
# ----- $1 ----- create_site_config
<VirtualHost *>
ServerName $DOMAINNAME
ServerAlias www.$DOMAINNAME $USERNAME.$TECHHOST
AssignUserID $2 $2
php_admin_value session.save_path "$SESSIONDIR"
php_admin_value open_basedir "$HOMEDIR"
php_admin_value upload_tmp_dir "$TMPDIR"
php_admin_value safe_mode_include_dir "$HOMEDIR"
php_admin_value safe_mode_exec_dir "$HOMEDIR"
ServerAdmin $ADMINMAIL
DocumentRoot "$SITE"
ErrorLog $LOGDIR/${USERNAME}_error.log
CustomLog $LOGDIR/${USERNAME}_access.log common
</VirtualHost>
EOF
service httpd2 reload service httpd2 reload
service httpd2 status && echo OK service httpd2 status && echo OK
echo "You can use technical name: $USERNAME.$TECHHOST" echo "You can use technical name: $TECHNAME.$TECHHOST for access to the site."
# Хост mysql для вписывания в hosts # Хост mysql для вписывания в hosts
MYSQLHOST=192.168.3.91 MYSQLHOST=192.168.3.191
# Технический домен # Технический домен
TECHHOST=site.host03.eterhost.ru TECHHOST=site.azbyka.ru
# Адрес системого администратора # Адрес системого администратора
ADMINMAIL=support@eterhost.ru ADMINMAIL=support@eterhost.ru
# Удалённый каталог backup # Удалённый каталог backup
BACKUPDIR=/var/local/backup-hosting/azbyka-vps/ BACKUPDIR=/var/local/backup-hosting/azbyka-vps/
# uses USERNAME, DOMAINNAME
set_vars()
{
HOMEDIR=/home/$USERNAME
test -d "$HOMEDIR" || exit 1
HOSTBASE=$HOMEDIR/www
LOGDIR=$HOMEDIR/log
USERTMPDIR=$HOMEDIR/tmp
SESSIONDIR=$USERTMPDIR/session/$DOMAINNAME
TECHNAME=`echo $DOMAINNAME | sed -e "s|\..*||g"`
SITE=$HOSTBASE/$DOMAINNAME
}
check_dir()
{
local dir=$1
test -d ${!dir} && return
echo "Missed dir ${!dir}"
exit 1
}
check_dirs()
{
for i in HOSTBASE LOGDIR USERTMPDIR SESSIONDIR SITE ; do
check_dir $i
done
}
# needs: DOMAINNAME
create_site_config()
{
PHPINCLUDE=/etc/httpd2/conf/include
[ -r $PHPINCLUDE/prepend.php ] || echo "<?php putenv('TMPDIR='.ini_get('upload_tmp_dir'));" >$PHPINCLUDE/prepend.php
cat <<EOF >$DOMAINNAME.conf
#NameVirtualHost *
# ----- $1 -----
<VirtualHost *>
ServerName $DOMAINNAME
ServerAlias www.$DOMAINNAME $TECHNAME.$TECHHOST
AssignUserID $USERNAME $USERNAME
php_admin_value session.save_path "$SESSIONDIR"
php_admin_value open_basedir "$SITE:$USERTMPDIR:$PHPINCLUDE"
php_admin_value upload_tmp_dir "$USERTMPDIR"
php_admin_value auto_prepend_file "$PHPINCLUDE/prepend.php"
ServerAdmin $ADMINMAIL
DocumentRoot "$SITE"
ErrorLog $LOGDIR/${TECHNAME}_error.log
CustomLog $LOGDIR/${TECHNAME}_access.log common
</VirtualHost>
EOF
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment