Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:dummywebsite

Dummy Website

Um schneller neue Webseiten anlegen zu können, habe ich mir eine Vorlage erstellt, die unter /var/www/dummy liegt.

Vorlage für den Apache2

Meine Vorlage für die Website-Konfiguration des Apache2 sieht wie folgt aus:

<VirtualHost 85.119.152.89:80>
        ServerName DUMMY.stefan-macke.de
        ServerAlias DUMMY.stefan-macke.com DUMMY.stefanmacke.com DUMMY.stefanmacke.de
        ServerAdmin webmaster _at_ stefanmacke _dot_ com
 
        DocumentRoot /var/www/DUMMY
        <Directory /var/www/DUMMY/>
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
 
        ErrorLog DUMMYERRORLOG
        LogLevel warn
        CustomLog DUMMYCUSTOMLOG combined
 
        ServerSignature Off
</VirtualHost>

Vorlage für logrotate

Die Vorlage für logrotate sieht so aus:

/var/log/apache2/DUMMY/*.log
{
        olddir _Pfad zum Backup-Verzeichnis_/logs/apache2/DUMMY
        weekly
        missingok
        rotate 52
        compress
        delaycompress
        notifempty
        create 700 _FTP-Benutzer_ ftpusers
        sharedscripts
        postrotate
                if [ -f /var/run/apache2.pid ]; then
                        /etc/init.d/apache2 restart > /dev/null
                fi
        endscript
}

Script

Ein Script erledigt sämtliche durchzuführenden Aufgaben:

#!/bin/bash
if [ $# -eq 0 ]
then
        echo "Syntax: create_website name [create_logs=true]"
elif [ $# -eq 1 ]
then
        NAME=$1
        LOGS=0
        DUMMYERRORLOG="\/var\/log\/apache2\/$NAME\/error.log"
        DUMMYCUSTOMLOG="\/var\/log\/apache2\/$NAME\/access.log"
elif [ $# -eq 2 ] && [ $2 = "false" ]
then
        NAME=$1
        LOGS=1
        DUMMYERRORLOG="\/var\/log\/apache2\/error.log"
        DUMMYCUSTOMLOG="\/var\/log\/apache2\/access.log"
fi
 
echo "Erstelle Verzeichnis /var/www/$NAME..."
mkdir /var/www/$NAME
chmod 750 /var/www/$NAME -R
chown _FTP-Benutzer_.ftpusers /var/www/$NAME -R
 
echo "Erstelle Website-Vorlage /etc/apache2/sites-available/$NAME..."
REP1="s/DUMMYERRORLOG/$DUMMYERRORLOG/g"
REP2="s/DUMMYCUSTOMLOG/$DUMMYCUSTOMLOG/g"
REP3="s/DUMMY/$NAME/g"
cat /var/www/dummy/dummy.apache | sed -e $REP1 > /etc/apache2/sites-available/$NAME.tmp
cat /etc/apache2/sites-available/$NAME.tmp | sed -e $REP2 > /etc/apache2/sites-available/$NAME.tmp.1
cat /etc/apache2/sites-available/$NAME.tmp.1 | sed -e $REP3 > /etc/apache2/sites-available/$NAME
rm /etc/apache2/sites-available/$NAME.tmp /etc/apache2/sites-available/$NAME.tmp.1
chmod 644 /etc/apache2/sites-available/$NAME
 
echo "Verlinke Website-Vorlage..."
ln /etc/apache2/sites-available/$NAME /etc/apache2/sites-enabled/999-$NAME -s
 
if [ $LOGS -eq 0 ]
then
        echo "Erstelle Log-Verzeichnis /var/log/apache2/$NAME..."
        mkdir /var/log/apache2/$NAME
        chmod 640 /var/log/apache2/$NAME -R
        chown root.adm /var/log/apache2/$NAME -R
 
        echo "Erstelle Log-Backupverzeichnis _Pfad zum Backup-Verzeichnis_/logs/apache2/$NAME..."
        mkdir _Pfad zum Backup-Verzeichnis_/logs/apache2/$NAME
        chmod 700 _Pfad zum Backup-Verzeichnis_/logs/apache2/$NAME -R
        chown _FTP-Benutzer_.ftpusers _Pfad zum Backup-Verzeichnis_/logs/apache2/$NAME -R
 
        echo "Erstelle logrotate-Vorlage /etc/logrotate.d/apache2_$NAME..."
        cat /var/www/dummy/dummy.logrotate | sed -e $REP3 > /etc/logrotate.d/apache2_$NAME
        chmod 644 /etc/logrotate.d/apache2_$NAME
fi
linux/dummywebsite.txt · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)