Fejlesztői környezet - automatizáljunk...
Posted by Lázár István
A harmadik részben néhány szkript segítségével könnyítsük meg a munkánkat. Első lépésben hozzuk létre az oldalak tárolására szolgáló könyvtárakat, módosítsuk azok elérést és a fejleszt felhasználót, (vagy a későbbiekben a fejlesztést használt már létező felhasználót) hozzárendeljük a www-data csoporthoz az alábbiak szerint:
sudo mkdir -p /adat/htdocs
sudo mkdir -p /adat/log
sudo chown -R fejleszt:www-data /adat/htdocs
sudo chown -R fejleszt:www-data /adat/log
sudo usermod -a -G www-data fejleszt
Készítsünk egy szkriptet, amely elvégzi helyettünk a könyvtárak és a konfigurációs állományok gépies és ismétlődő létrehozásának feladatát. Tehát a szkript:
#!/bin/bash
DEFAULT_WEB_DIR="/adat/htdocs"
DEFAULT_LOG_DIR="/adat/log"
APACHE_KONFIG_DIR="/etc/apache2/sites-available/"
read -p "Adja meg a site nevet (pl.webkucko.loc): " SITENAME
echo " "
if [ -d $DEFAULT_WEB_DIR/$SITENAME ]
then
echo "A letrehozando kornyezet mar letezik"
exit 1
else
mkdir $DEFAULT_WEB_DIR/$SITENAME
chown -R fejleszt:www-data $DEFAULT_WEB_DIR/$SITENAME
echo "Az oldal HOME konyvtara letrehozva."
mkdir $DEFAULT_LOG_DIR/$SITENAME
chown -R fejleszt:www-data $DEFAULT_LOG_DIR/$SITENAME
echo "Az oldal LOG konvtara letrehozva."
fi
APACHE_KONFIG_FAJL=$APACHE_KONFIG_DIR$SITENAME".conf"
if [ ! -f $APACHE_KONFIG_FAJL ]
then
echo "Apache konfiguracios allomany letrehozasa.."
touch $APACHE_KONFIG_FAJL
echo "" >> $APACHE_KONFIG_FAJL
echo " ServerAdmin webmaster@localhost" >> $APACHE_KONFIG_FAJL
echo " DocumentRoot " $DEFAULT_WEB_DIR/$SITENAME >> $APACHE_KONFIG_FAJL
echo " ServerName "$SITENAME >> $APACHE_KONFIG_FAJL
echo " " >> $APACHE_KONFIG_FAJL
echo " " >> $APACHE_KONFIG_FAJL
echo " # RewriteEngine on" >> $APACHE_KONFIG_FAJL
echo " # RewriteCond %{REQUEST_FILENAME} !-f" >> $APACHE_KONFIG_FAJL
echo " # RewriteRule . index.php" >> $APACHE_KONFIG_FAJL
echo " # Options +SymLinksIfOwnerMatch" >> $APACHE_KONFIG_FAJL
echo " # AllowOverride Authconfig FileInfo Indexes Limit Options=Indexes,MultiViews" >> $APACHE_KONFIG_FAJL
echo " Require all granted" >> $APACHE_KONFIG_FAJL
echo " " >> $APACHE_KONFIG_FAJL
echo " " >> $APACHE_KONFIG_FAJL
echo " ErrorLog "$DEFAULT_LOG_DIR/$SITENAME"/error.log" >> $APACHE_KONFIG_FAJL
echo " CustomLog "$DEFAULT_LOG_DIR/$SITENAME"/access.log combined" >> $APACHE_KONFIG_FAJL
echo "" >> $APACHE_KONFIG_FAJL
echo "Konfiguracio engedelyezese.."
a2ensite $SITENAME
echo "Szolgaltatas ujrainditasa.."
systemctl restart apache2
else
echo $APACHE_KONFIG_FAJL" mar letezik!"
fi
A szkriptet mentsük el mondjuk site_letrehozasa.sh néven és másoljuk a /usr/bin mappába. Ne felejtsünk el írási jogot adni rá, melyet követően az teljes körűen használható.